From c89fa72d0d2772e52812331024dedf3ded1b0639 Mon Sep 17 00:00:00 2001
From: xuyonghao <898441624@qq.com>
Date: 星期一, 11 十一月 2024 17:32:43 +0800
Subject: [PATCH] fix bug

---
 app/api/chat.py |   12 +++++++-----
 1 files changed, 7 insertions(+), 5 deletions(-)

diff --git a/app/api/chat.py b/app/api/chat.py
index b54db51..ae196ed 100644
--- a/app/api/chat.py
+++ b/app/api/chat.py
@@ -64,6 +64,7 @@
                                 "doc_ids": message.get("doc_ids", []),
                                 "role": "user"
                             })
+                    complete_response = ""
                     async for rag_response in ragflow_service.chat(token, chat_id, chat_history):
                         try:
                             if rag_response[:5] == "data:":
@@ -72,8 +73,9 @@
                             else:
                                 # 鍚﹀垯锛屼繚鎸佸師鏍�
                                 text = rag_response
+                            complete_response += text
                             try:
-                                json_data = json.loads(text)
+                                json_data = json.loads(complete_response)
                                 data = json_data.get("data")
                                 if data is True:  # 瀹屾垚杈撳嚭
                                     result = {"message": "", "type": "close"}
@@ -85,10 +87,10 @@
                                     reference = data.get("reference", {})
                                     result = {"message": answer, "type": "message", "reference": reference}
                                 await websocket.send_json(result)
-                            except json.JSONDecodeError:
-                                print(f"Error decode ragflow response: {text}")
-                                pass
-
+                                complete_response = ""
+                            except json.JSONDecodeError as e:
+                                print(f"Error decoding JSON: {e}")
+                                print(f"Response text: {text}")
                         except Exception as e2:
                             result = {"message": f"鍐呴儴閿欒锛� {e2}", "type": "close"}
                             await websocket.send_json(result)

--
Gitblit v1.8.0