memory_BUG_long_term

This commit is contained in:
lixinyue
2026-02-04 14:24:50 +08:00
parent 62aba2dd38
commit 72b5e5cf8e

View File

@@ -7,7 +7,7 @@ from contextlib import asynccontextmanager
from langgraph.constants import END, START from langgraph.constants import END, START
from langgraph.graph import StateGraph from langgraph.graph import StateGraph
from app.db import get_db from app.db import get_db, get_db_context
from app.core.logging_config import get_agent_logger from app.core.logging_config import get_agent_logger
from app.core.memory.agent.utils.llm_tools import WriteState from app.core.memory.agent.utils.llm_tools import WriteState
from app.core.memory.agent.langgraph_graph.nodes.write_nodes import write_node from app.core.memory.agent.langgraph_graph.nodes.write_nodes import write_node
@@ -46,21 +46,27 @@ async def long_term_storage(long_term_type:str="chunk",langchain_messages:list=[
from app.core.memory.agent.utils.redis_tool import write_store from app.core.memory.agent.utils.redis_tool import write_store
write_store.save_session_write(end_user_id, (langchain_messages)) write_store.save_session_write(end_user_id, (langchain_messages))
# 获取数据库会话 # 获取数据库会话
db_session = next(get_db()) with get_db_context() as db_session:
config_service = MemoryConfigService(db_session) try:
memory_config = config_service.load_memory_config( config_service = MemoryConfigService(db_session)
config_id=memory_config, # 改为整数 memory_config = config_service.load_memory_config(
service_name="MemoryAgentService" config_id=memory_config, # 改为整数
) service_name="MemoryAgentService"
if long_term_type=='chunk': )
'''方案一:对话窗口6轮对话''' if long_term_type=='chunk':
await window_dialogue(end_user_id,langchain_messages,memory_config,scope) '''方案一:对话窗口6轮对话'''
if long_term_type=='time': await window_dialogue(end_user_id,langchain_messages,memory_config,scope)
"""时间""" if long_term_type=='time':
await memory_long_term_storage(end_user_id, memory_config,5) """时间"""
if long_term_type=='aggregate': await memory_long_term_storage(end_user_id, memory_config,5)
"""方案三:聚合判断""" if long_term_type=='aggregate':
await aggregate_judgment(end_user_id, langchain_messages, memory_config) """方案三:聚合判断"""
await aggregate_judgment(end_user_id, langchain_messages, memory_config)
finally:
if db_session.in_transaction():
db_session.rollback()
db_session.close()
async def write_long_term(storage_type,end_user_id,message_chat,aimessages,user_rag_memory_id,actual_config_id): async def write_long_term(storage_type,end_user_id,message_chat,aimessages,user_rag_memory_id,actual_config_id):