video / app.py
seawolf2357's picture
Update app.py
b4a6b7a verified
raw
history blame
1.38 kB
import gradio as gr
import openai
import os
# OpenAI API ν‚€ μ„€μ •
openai.api_key = os.getenv("OPENAI_API_KEY")
def generate_keywords_and_search_images(input_text):
# μž…λ ₯ ν…μŠ€νŠΈλ₯Ό μ€„λ³„λ‘œ 뢄리
lines = input_text.strip().split('\n')
all_image_urls = []
for line in lines:
# 각 쀄에 λŒ€ν•œ ν‚€μ›Œλ“œ 생성
keyword = generate_keyword_from_text(line)
if keyword.startswith("ν‚€μ›Œλ“œ 생성 쀑 μ—λŸ¬ λ°œμƒ"):
print(keyword)
continue # ν‚€μ›Œλ“œ 생성 μ‹€νŒ¨ μ‹œ, λ‹€μŒ μ€„λ‘œ λ„˜μ–΄κ°
# μƒμ„±λœ ν‚€μ›Œλ“œλ‘œ Pexels 검색
image_urls = search_pexels(keyword)
all_image_urls.extend(image_urls) # κ²€μƒ‰λœ 이미지 URL듀을 전체 λͺ©λ‘μ— μΆ”κ°€
return all_image_urls
# Gradio μΈν„°νŽ˜μ΄μŠ€ μ„€μ •κ³Ό μ‹€ν–‰
iface = gr.Interface(
fn=generate_keywords_and_search_images,
inputs=gr.Textbox(lines=5, placeholder="여기에 Pexels 검색을 μœ„ν•œ ν…μŠ€νŠΈλ₯Ό μž…λ ₯ν•˜μ„Έμš”. 각 μ€„λ§ˆλ‹€ λ³„λ„μ˜ 검색 ν‚€μ›Œλ“œκ°€ μƒμ„±λ©λ‹ˆλ‹€."),
outputs=gr.Gallery(),
title="GPT 및 Pexels APIλ₯Ό μ΄μš©ν•œ 닀쀑 이미지 검색",
description="제곡된 ν…μŠ€νŠΈμ˜ 각 쀄을 λ°”νƒ•μœΌλ‘œ Pexels 검색에 μ‚¬μš©ν•  영문 ν‚€μ›Œλ“œλ₯Ό μžλ™ μƒμ„±ν•˜κ³ , ν•΄λ‹Ή ν‚€μ›Œλ“œλ‘œ Pexelsμ—μ„œ 이미지λ₯Ό κ²€μƒ‰ν•©λ‹ˆλ‹€."
)
iface.launch()