Serg4451D commited on
Commit
e1da67c
·
1 Parent(s): 25c6fa0

Create app.py

Browse files
Files changed (1) hide show
  1. app.py +50 -0
app.py ADDED
@@ -0,0 +1,50 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import streamlit as st
2
+ import requests
3
+ from requests.structures import CaseInsensitiveDict
4
+
5
+ import json
6
+
7
+ query_url = "https://api.openai.com/v1/images/generations"
8
+
9
+ st.title("DALL-E 2 API Image Generation Demo")
10
+
11
+ st.write("Enter a prompt to generate an image")
12
+
13
+ prompt = st.text_area("Prompt", "A cat riding a bike")
14
+
15
+ model = st.selectbox(
16
+ "Select a DALL-E 2 model",
17
+ ["image-alpha-001", "image-alpha-002"]
18
+ )
19
+
20
+ num_images = st.slider("Number of images to generate", min_value=1, max_value=10, value=1)
21
+
22
+ headers = CaseInsensitiveDict()
23
+ headers["Content-Type"] = "application/json"
24
+ api_key = "YOUR_API_KEY_HERE"
25
+ headers["Authorization"] = f"Bearer {api_key}"
26
+
27
+ data = """
28
+ {
29
+ """
30
+ data += f'"model": "{model}",'
31
+ data += f'"prompt": "{prompt}",'
32
+ data += f'"num_images": {num_images}'
33
+ data += """
34
+ }
35
+ """
36
+
37
+ def generate_images():
38
+ resp = requests.post(query_url, headers=headers, data=data)
39
+
40
+ if resp.status_code != 200:
41
+ raise ValueError("Failed to generate image "+resp.text)
42
+
43
+ response_text = json.loads(resp.text)
44
+ return response_text['data']
45
+
46
+ if st.button("Generate Images"):
47
+ with st.spinner("Generating images..."):
48
+ image_data = generate_images()
49
+ for idx, image in enumerate(image_data):
50
+ st.image(image['url'], caption=f"Image {idx+1}", width=400)