修复状态兼容性问题:让旧节点同时支持 dict 和 dataclass
All checks were successful
构建并部署 AI Agent 服务 / deploy (push) Successful in 6m39s
All checks were successful
构建并部署 AI Agent 服务 / deploy (push) Successful in 6m39s
This commit is contained in:
@@ -7,18 +7,26 @@ from app.config import ENABLE_GRAPH_TRACE
|
||||
from app.logger import debug, info
|
||||
|
||||
|
||||
def log_state_change(node_name: str, state: dict, prefix: str = "进入"):
|
||||
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 log_state_change(node_name: str, state, prefix: str = "进入"):
|
||||
"""
|
||||
记录状态变化日志
|
||||
|
||||
Args:
|
||||
node_name: 节点名称
|
||||
state: 当前状态
|
||||
state: 当前状态(兼容 dict 和 dataclass)
|
||||
prefix: 日志前缀("进入" 或 "离开")
|
||||
"""
|
||||
from app.logger import info
|
||||
|
||||
messages = state.get("messages", [])
|
||||
messages = _get_attr(state, "messages", [])
|
||||
msg_count = len(messages)
|
||||
last_msg = messages[-1] if messages else None
|
||||
last_info = ""
|
||||
|
||||
Reference in New Issue
Block a user