TextToImage / app.py
Yaman3's picture
Update app.py
5c74ab4
import gradio as gr
import requests
from PIL import Image
from io import BytesIO
API_KEY = '980ec5edcf1070c6022f28762a504bc7c4d1cf5d3aa45a5d0a8cf5134a3a381da0b2fa967f82e69426fca77db5f4924e'
API_URL = 'https://clipdrop-api.co/text-to-image/v1'
def api_integration_function(prompt):
# Make API request
headers = {'x-api-key': API_KEY}
files = {'prompt': (None, prompt, 'text/plain')}
response = requests.post(API_URL, headers=headers, files=files)
# Process the response
if response.ok:
image_bytes = response.content
image = Image.open(BytesIO(image_bytes))
return image
else:
return None
def generate_image():
image = api_integration_function(inp.value)
if image is not None:
out.image(image)
else:
out.image("placeholder.png")
with gr.Blocks() as demo:
gr.Markdown(
"""
# Text-to-Image Demo
Enter your text prompt below to generate an image.
""")
inp = gr.Textbox(placeholder="Enter your text prompt")
out = gr.Image()
button = gr.Button(label="Generate", action=generate_image)
inp.change(api_integration_function,inp, out)
demo.launch()