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