From ae30d9a75407c912649f11c4f44ff15c869a4f98 Mon Sep 17 00:00:00 2001
From: zhaoqingang <zhaoqg0118@163.com>
Date: 星期四, 21 十一月 2024 15:42:42 +0800
Subject: [PATCH] 自研agent会话保存和查询

---
 app/service/session.py |   14 +++++++++++---
 1 files changed, 11 insertions(+), 3 deletions(-)

diff --git a/app/service/session.py b/app/service/session.py
index b3b698f..78ae31a 100644
--- a/app/service/session.py
+++ b/app/service/session.py
@@ -8,7 +8,7 @@
     def __init__(self, db: Session):
         self.db = db
 
-    def create_session(self, session_id: str, name: str, agent_id: str, agent_type: AgentType) -> SessionModel:
+    def create_session(self, session_id: str, name: str, agent_id: str, agent_type: AgentType, user_id: int) -> SessionModel:
         """
         鍒涘缓涓�涓柊鐨勪細璇濊褰曘��
 
@@ -23,13 +23,17 @@
         """
         existing_session = self.get_session_by_id(session_id)
         if existing_session:
-            return None  # 濡傛灉浼氳瘽ID宸插瓨鍦紝涓嶈繘琛屼换浣曟搷浣�
+            message=existing_session.message
+            message.append({"role": "user", "content": name})
+            self.update_session(session_id, message=message)
 
         new_session = SessionModel(
             id=session_id,
             name=name,
             agent_id=agent_id,
-            agent_type=agent_type
+            agent_type=agent_type,
+            tenant_id = user_id,
+            message=[{"role": "user", "content": name}]
         )
         self.db.add(new_session)
         self.db.commit()
@@ -61,6 +65,10 @@
         """
         session = self.get_session_by_id(session_id)
         if session:
+            if "message" in kwargs:
+                message =  session.message
+                message.append(kwargs["message"])
+                kwargs["message"] = message
             for key, value in kwargs.items():
                 setattr(session, key, value)
             self.db.commit()

--
Gitblit v1.8.0