彻底重构状态系统:整合所有旧状态到 MainGraphState,修复所有节点
Some checks failed
构建并部署 AI Agent 服务 / deploy (push) Failing after 6m35s

This commit is contained in:
2026-05-01 23:20:31 +08:00
parent 9a58eb8e6d
commit 9386b9fa7a
7 changed files with 155 additions and 193 deletions

View File

@@ -6,20 +6,12 @@
from typing import Any, Dict
# 本地模块
from app.main_graph.state import MessagesState
from app.main_graph.state import MainGraphState
from app.memory.mem0_client import Mem0Client
from app.utils.logging import log_state_change
from app.logger import debug, info, error, warning
def _get_attr(state, attr_name, default=None):
"""通用方法:兼容 dict 和 dataclass 两种状态格式"""
if isinstance(state, dict):
return state.get(attr_name, default)
else:
return getattr(state, attr_name, default)
def create_summarize_node(mem0_client: Mem0Client):
"""
工厂函数:创建记忆存储节点
@@ -33,12 +25,12 @@ def create_summarize_node(mem0_client: Mem0Client):
from langchain_core.runnables.config import RunnableConfig
async def summarize_conversation(state, config: RunnableConfig) -> Dict[str, Any]:
async def summarize_conversation(state: MainGraphState, config: RunnableConfig) -> Dict[str, Any]:
"""
记忆存储节点 - 使用 Mem0
Args:
state: 当前对话状态(兼容 dict 和 dataclass
state: 当前对话状态
config: 运行时配置
Returns:
@@ -46,7 +38,7 @@ def create_summarize_node(mem0_client: Mem0Client):
"""
log_state_change("summarize", state, "进入")
messages = _get_attr(state, "messages", [])
messages = state.messages
if len(messages) < 4:
debug("📝 [记忆添加] 对话过短,跳过")
return {"turns_since_last_summary": 0}