feat: 适配 finalize 节点返回的 final_reply 和 metadata
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -106,18 +106,23 @@ class AIAgentService:
|
|||||||
|
|
||||||
result = await self.graph.ainvoke(input_state, config=config)
|
result = await self.graph.ainvoke(input_state, config=config)
|
||||||
|
|
||||||
reply = ""
|
# 优先使用 final_reply(finalize 节点返回)
|
||||||
if result.get("messages"):
|
reply = result.get("final_reply", "")
|
||||||
|
if not reply and result.get("messages"):
|
||||||
reply = result["messages"][-1].content
|
reply = result["messages"][-1].content
|
||||||
|
|
||||||
token_usage = result.get("last_token_usage", {})
|
token_usage = result.get("last_token_usage", {})
|
||||||
elapsed_time = result.get("last_elapsed_time", 0.0)
|
elapsed_time = result.get("last_elapsed_time", 0.0)
|
||||||
|
|
||||||
|
# 获取元数据
|
||||||
|
metadata = result.get("metadata", {})
|
||||||
|
|
||||||
return {
|
return {
|
||||||
"reply": reply,
|
"reply": reply,
|
||||||
"token_usage": token_usage,
|
"token_usage": token_usage,
|
||||||
"elapsed_time": elapsed_time,
|
"elapsed_time": elapsed_time,
|
||||||
"model_used": resolved_model
|
"model_used": resolved_model,
|
||||||
|
"metadata": metadata
|
||||||
}
|
}
|
||||||
|
|
||||||
async def process_message_stream(
|
async def process_message_stream(
|
||||||
|
|||||||
Reference in New Issue
Block a user