From 3cee1dd5768ae10d3834afd3294850af7d626633 Mon Sep 17 00:00:00 2001
From: zhangqian <zhangqian@123.com>
Date: 星期五, 18 十月 2024 10:17:57 +0800
Subject: [PATCH] fix

---
 app/service/ragflow.py |   10 ++++++++--
 app/api/chat.py        |    8 ++++++--
 2 files changed, 14 insertions(+), 4 deletions(-)

diff --git a/app/api/chat.py b/app/api/chat.py
index a847431..1e9218c 100644
--- a/app/api/chat.py
+++ b/app/api/chat.py
@@ -58,7 +58,11 @@
                                 await websocket.close()
                                 return
                         else:
-                            chat_history.append(message)
+                            chat_history.append({
+                                "content": message["message"],
+                                "doc_ids": message.get("doc_ids", []),
+                                "role": "user"
+                            })
                     async for rag_response in ragflow_service.chat(token, chat_id, chat_history):
                         try:
                             print(f"Received from ragflow: {rag_response}")
@@ -87,6 +91,7 @@
                             result = {"message": f"鍐呴儴閿欒锛� {e}", "type": "close"}
                             await websocket.send_json(result)
                             print(f"Error process message of ragflow: {e}")
+
             # 鍚姩浠诲姟澶勭悊瀹㈡埛绔秷鎭�
             tasks = [
                 asyncio.create_task(forward_to_ragflow())
@@ -155,4 +160,3 @@
     else:
         ret = {"message": "Agent not found", "type": "close"}
         await websocket.send_json(ret)
-
diff --git a/app/service/ragflow.py b/app/service/ragflow.py
index 65c5a27..7ce287d 100644
--- a/app/service/ragflow.py
+++ b/app/service/ragflow.py
@@ -66,7 +66,8 @@
             "messages": chat_history
         }
 
-        print(data)
+        print(f"send to ragflow chat: {data}")
+
         target_url = f"{self.base_url}/v1/conversation/completion"
         async with httpx.AsyncClient(timeout=300.0) as client:
             headers = {
@@ -77,6 +78,7 @@
                 if response.status_code == 200:
                     try:
                         async for answer in response.aiter_text():
+                            print(f"response of ragflow chat: {answer}")
                             yield answer
                     except GeneratorExit as e:
                         print(e)
@@ -117,7 +119,11 @@
                     "content": "浣犲ソ锛� 鎴戞槸浣犵殑鍔╃悊锛屾湁浠�涔堝彲浠ュ府鍒颁綘鐨勫悧锛�",
                     "role": "assistant"
                 },
-                message,
+                {
+                    "content": message["message"],
+                    "doc_ids":message.get("doc_ids", []),
+                    "role": "user"
+                }
             ] if data else []
 
     async def get_session_history(self, token: str, chat_id: str) -> list:

--
Gitblit v1.8.0