Fix Gradio errors and update to messages format
Browse files- Removed invalid 'every' parameter from demo.load
- Updated Chatbot to use 'messages' format instead of deprecated 'tuples'
- Updated respond function to handle messages format (role/content structure)
- Fixed streaming response handling for new format
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <[email protected]>
app.py
CHANGED
|
@@ -1072,7 +1072,7 @@ with gr.Blocks(css=custom_css, theme="soft", title="Trek Asistanı", head=storag
|
|
| 1072 |
|
| 1073 |
# LocalStorage fonksiyonu kaldırıldı
|
| 1074 |
|
| 1075 |
-
chatbot = gr.Chatbot(height=600, elem_id="chatbot", show_label=False, type="
|
| 1076 |
|
| 1077 |
msg = gr.Textbox(
|
| 1078 |
placeholder="Trek bisikletleri hakkında soru sorun...",
|
|
@@ -1091,17 +1091,14 @@ with gr.Blocks(css=custom_css, theme="soft", title="Trek Asistanı", head=storag
|
|
| 1091 |
if chat_history is None:
|
| 1092 |
chat_history = []
|
| 1093 |
|
| 1094 |
-
#
|
| 1095 |
-
chat_history.append(
|
| 1096 |
yield "", chat_history
|
| 1097 |
|
| 1098 |
-
# Chat history'yi chatbot_fn için uygun formata çevir
|
| 1099 |
formatted_history = []
|
| 1100 |
-
|
| 1101 |
-
|
| 1102 |
-
if bot_msg: # Sadece tamamlanmış mesajlar
|
| 1103 |
-
formatted_history.append({"role": "user", "content": user_msg})
|
| 1104 |
-
formatted_history.append({"role": "assistant", "content": bot_msg})
|
| 1105 |
|
| 1106 |
try:
|
| 1107 |
# Enhanced chatbot fonksiyonunu çağır (image=None)
|
|
@@ -1111,8 +1108,13 @@ with gr.Blocks(css=custom_css, theme="soft", title="Trek Asistanı", head=storag
|
|
| 1111 |
response = ""
|
| 1112 |
for partial in response_generator:
|
| 1113 |
response = partial
|
| 1114 |
-
#
|
| 1115 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1116 |
yield "", chat_history
|
| 1117 |
|
| 1118 |
# Konuşmayı kaydet
|
|
@@ -1124,8 +1126,11 @@ with gr.Blocks(css=custom_css, theme="soft", title="Trek Asistanı", head=storag
|
|
| 1124 |
except Exception as e:
|
| 1125 |
error_msg = f"Üzgünüm, bir hata oluştu: {str(e)}"
|
| 1126 |
print(f"Chat error: {e}")
|
| 1127 |
-
# Hata
|
| 1128 |
-
chat_history[-1]
|
|
|
|
|
|
|
|
|
|
| 1129 |
yield "", chat_history
|
| 1130 |
|
| 1131 |
msg.submit(respond, [msg, chatbot], [msg, chatbot], show_progress=True)
|
|
@@ -1203,8 +1208,8 @@ with gr.Blocks(css=custom_css, theme="soft", title="Trek Asistanı", head=storag
|
|
| 1203 |
elem_id="json_data_container"
|
| 1204 |
)
|
| 1205 |
|
| 1206 |
-
# Update JSON HTML
|
| 1207 |
-
demo.load(create_json_html, outputs=json_html
|
| 1208 |
|
| 1209 |
# API endpoints for dashboard
|
| 1210 |
def get_all_conversations():
|
|
|
|
| 1072 |
|
| 1073 |
# LocalStorage fonksiyonu kaldırıldı
|
| 1074 |
|
| 1075 |
+
chatbot = gr.Chatbot(height=600, elem_id="chatbot", show_label=False, type="messages")
|
| 1076 |
|
| 1077 |
msg = gr.Textbox(
|
| 1078 |
placeholder="Trek bisikletleri hakkında soru sorun...",
|
|
|
|
| 1091 |
if chat_history is None:
|
| 1092 |
chat_history = []
|
| 1093 |
|
| 1094 |
+
# Messages format için kullanıcı mesajını ekle
|
| 1095 |
+
chat_history.append({"role": "user", "content": message})
|
| 1096 |
yield "", chat_history
|
| 1097 |
|
| 1098 |
+
# Chat history'yi chatbot_fn için uygun formata çevir
|
| 1099 |
formatted_history = []
|
| 1100 |
+
for msg in chat_history[:-1]: # Son mesajı hariç tut
|
| 1101 |
+
formatted_history.append(msg)
|
|
|
|
|
|
|
|
|
|
| 1102 |
|
| 1103 |
try:
|
| 1104 |
# Enhanced chatbot fonksiyonunu çağır (image=None)
|
|
|
|
| 1108 |
response = ""
|
| 1109 |
for partial in response_generator:
|
| 1110 |
response = partial
|
| 1111 |
+
# Bot cevabını ekle veya güncelle
|
| 1112 |
+
# Eğer son mesaj user ise, bot mesajı ekle
|
| 1113 |
+
if chat_history[-1]["role"] == "user":
|
| 1114 |
+
chat_history.append({"role": "assistant", "content": response})
|
| 1115 |
+
else:
|
| 1116 |
+
# Son bot mesajını güncelle
|
| 1117 |
+
chat_history[-1]["content"] = response
|
| 1118 |
yield "", chat_history
|
| 1119 |
|
| 1120 |
# Konuşmayı kaydet
|
|
|
|
| 1126 |
except Exception as e:
|
| 1127 |
error_msg = f"Üzgünüm, bir hata oluştu: {str(e)}"
|
| 1128 |
print(f"Chat error: {e}")
|
| 1129 |
+
# Hata mesajı ekle
|
| 1130 |
+
if chat_history[-1]["role"] == "user":
|
| 1131 |
+
chat_history.append({"role": "assistant", "content": error_msg})
|
| 1132 |
+
else:
|
| 1133 |
+
chat_history[-1]["content"] = error_msg
|
| 1134 |
yield "", chat_history
|
| 1135 |
|
| 1136 |
msg.submit(respond, [msg, chatbot], [msg, chatbot], show_progress=True)
|
|
|
|
| 1208 |
elem_id="json_data_container"
|
| 1209 |
)
|
| 1210 |
|
| 1211 |
+
# Update JSON HTML on page load
|
| 1212 |
+
demo.load(create_json_html, outputs=json_html)
|
| 1213 |
|
| 1214 |
# API endpoints for dashboard
|
| 1215 |
def get_all_conversations():
|