Spaces:
Running
Running
Update app.py
Browse files
app.py
CHANGED
@@ -90,8 +90,13 @@ def chat_handler(prompt, user_image, chat_history, output_filename="generated_im
|
|
90 |
user_message_content = []
|
91 |
if prompt:
|
92 |
user_message_content.append(prompt)
|
93 |
-
if user_image:
|
94 |
-
|
|
|
|
|
|
|
|
|
|
|
95 |
if user_message_content:
|
96 |
chat_history.append({"role": "user", "content": user_message_content if len(user_message_content) > 1 else user_message_content[0]})
|
97 |
|
@@ -103,9 +108,7 @@ def chat_handler(prompt, user_image, chat_history, output_filename="generated_im
|
|
103 |
# Generate image based on user input
|
104 |
img, status = generate_image(prompt or "Generate an image", user_image, output_filename)
|
105 |
|
106 |
-
assistant_message_content =
|
107 |
-
assistant_message_content.append(status) # Add text status
|
108 |
-
|
109 |
if img:
|
110 |
# Create thumbnail for chatbot
|
111 |
thumbnail_size = (100, 100) # Define thumbnail size
|
@@ -117,10 +120,12 @@ def chat_handler(prompt, user_image, chat_history, output_filename="generated_im
|
|
117 |
thumbnail.save(buffered, format="PNG")
|
118 |
thumbnail_base64 = base64.b64encode(buffered.getvalue()).decode()
|
119 |
thumbnail_data_uri = f"data:image/png;base64,{thumbnail_base64}"
|
120 |
-
assistant_message_content
|
|
|
|
|
121 |
|
122 |
# Add assistant's response to chat history
|
123 |
-
chat_history.append({"role": "assistant", "content": assistant_message_content
|
124 |
|
125 |
return chat_history, user_image, img, ""
|
126 |
|
|
|
90 |
user_message_content = []
|
91 |
if prompt:
|
92 |
user_message_content.append(prompt)
|
93 |
+
if user_image is not None: # Handle case where no image is uploaded initially
|
94 |
+
# Convert user image to base64 for chatbot display
|
95 |
+
buffered = io.BytesIO()
|
96 |
+
user_image.save(buffered, format="PNG")
|
97 |
+
user_image_base64 = base64.b64encode(buffered.getvalue()).decode()
|
98 |
+
user_image_data_uri = f"data:image/png;base64,{user_image_base64}"
|
99 |
+
user_message_content.append(user_image_data_uri) # Use data URI for user image in chat history
|
100 |
if user_message_content:
|
101 |
chat_history.append({"role": "user", "content": user_message_content if len(user_message_content) > 1 else user_message_content[0]})
|
102 |
|
|
|
108 |
# Generate image based on user input
|
109 |
img, status = generate_image(prompt or "Generate an image", user_image, output_filename)
|
110 |
|
111 |
+
assistant_message_content = None # Initialize to None
|
|
|
|
|
112 |
if img:
|
113 |
# Create thumbnail for chatbot
|
114 |
thumbnail_size = (100, 100) # Define thumbnail size
|
|
|
120 |
thumbnail.save(buffered, format="PNG")
|
121 |
thumbnail_base64 = base64.b64encode(buffered.getvalue()).decode()
|
122 |
thumbnail_data_uri = f"data:image/png;base64,{thumbnail_base64}"
|
123 |
+
assistant_message_content = thumbnail_data_uri # ONLY data URI as assistant message
|
124 |
+
else:
|
125 |
+
assistant_message_content = status # If no image, send text status
|
126 |
|
127 |
# Add assistant's response to chat history
|
128 |
+
chat_history.append({"role": "assistant", "content": assistant_message_content})
|
129 |
|
130 |
return chat_history, user_image, img, ""
|
131 |
|