Spaces:
Runtime error
Runtime error
import streamlit as st | |
import requests | |
from requests.structures import CaseInsensitiveDict | |
import json | |
query_url = "https://api.openai.com/v1/images/generations" | |
st.title("DALL-E 2 API Image Generation Demo") | |
st.write("Enter a prompt to generate an image") | |
prompt = st.text_area("Prompt", "A cat riding a bike") | |
model = st.selectbox( | |
"Select a DALL-E 2 model", | |
["image-alpha-001", ""] | |
) | |
num_images = st.slider("Number of images to generate", min_value=1, max_value=10, value=1) | |
headers = CaseInsensitiveDict() | |
headers["Content-Type"] = "application/json" | |
api_key = "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" | |
headers["Authorization"] = f"Bearer {api_key}" | |
data = """ | |
{ | |
""" | |
data += f'"model": "{model}",' | |
data += f'"prompt": "{prompt}",' | |
data += f'"num_images": {num_images}' | |
data += """ | |
} | |
""" | |
def generate_images(): | |
resp = requests.post(query_url, headers=headers, data=data) | |
if resp.status_code != 200: | |
raise ValueError("Failed to generate image "+resp.text) | |
response_text = json.loads(resp.text) | |
return response_text['data'] | |
if st.button("Generate Images"): | |
with st.spinner("Generating images..."): | |
image_data = generate_images() | |
for idx, image in enumerate(image_data): | |
st.image(image['url'], caption=f"Image {idx+1}", width=400) | |