Update app.py
Browse files
app.py
CHANGED
@@ -66,12 +66,12 @@ def format_conversation(history, system_prompt):
|
|
66 |
"""
|
67 |
prompt = system_prompt.strip() + "\n"
|
68 |
for msg in history:
|
69 |
-
if msg[
|
70 |
-
prompt += "User: " + msg[
|
71 |
-
elif msg[
|
72 |
-
prompt += "Assistant: " + msg[
|
73 |
else:
|
74 |
-
prompt += msg[
|
75 |
if not prompt.strip().endswith("Assistant:"):
|
76 |
prompt += "Assistant: "
|
77 |
return prompt
|
@@ -85,10 +85,10 @@ def chat_response(user_msg, chat_history, system_prompt,
|
|
85 |
"""
|
86 |
cancel_event.clear()
|
87 |
history = list(chat_history or [])
|
88 |
-
history.append({
|
89 |
|
90 |
# Prepare assistant placeholder
|
91 |
-
history.append({
|
92 |
|
93 |
try:
|
94 |
prompt = format_conversation(history, system_prompt)
|
@@ -117,11 +117,11 @@ def chat_response(user_msg, chat_history, system_prompt,
|
|
117 |
if cancel_event.is_set():
|
118 |
break
|
119 |
assistant_text += chunk
|
120 |
-
history[-1][
|
121 |
yield history
|
122 |
gen_thread.join()
|
123 |
except Exception as e:
|
124 |
-
history[-1][
|
125 |
yield history
|
126 |
finally:
|
127 |
gc.collect()
|
|
|
66 |
"""
|
67 |
prompt = system_prompt.strip() + "\n"
|
68 |
for msg in history:
|
69 |
+
if msg["role"] == "user":
|
70 |
+
prompt += "User: " + msg["content"].strip() + "\n"
|
71 |
+
elif msg["role"] == "assistant":
|
72 |
+
prompt += "Assistant: " + msg["content"].strip() + "\n"
|
73 |
else:
|
74 |
+
prompt += msg["content"].strip() + "\n"
|
75 |
if not prompt.strip().endswith("Assistant:"):
|
76 |
prompt += "Assistant: "
|
77 |
return prompt
|
|
|
85 |
"""
|
86 |
cancel_event.clear()
|
87 |
history = list(chat_history or [])
|
88 |
+
history.append({"role": "user", "content": user_msg})
|
89 |
|
90 |
# Prepare assistant placeholder
|
91 |
+
history.append({"role": "assistant", "content": ""})
|
92 |
|
93 |
try:
|
94 |
prompt = format_conversation(history, system_prompt)
|
|
|
117 |
if cancel_event.is_set():
|
118 |
break
|
119 |
assistant_text += chunk
|
120 |
+
history[-1]["content"] = assistant_text
|
121 |
yield history
|
122 |
gen_thread.join()
|
123 |
except Exception as e:
|
124 |
+
history[-1]["content"] = f"Error: {e}"
|
125 |
yield history
|
126 |
finally:
|
127 |
gc.collect()
|