Agent 工程
可控 Agent:状态、工具与终止条件
用显式状态机组织工具调用、失败恢复、人工确认和最终交付。
必须掌握AgentLangGraph
可上线的 Agent 需要显式状态、有限循环和可检查的工具边界。
状态至少包含
input、plan、evidence、tool_results、attempts、error、final_answer。节点只读取需要的字段,并返回明确的状态增量。
工具设计
工具名称描述动作,参数使用结构化 Schema。读工具和写工具分开;写操作默认要求确认。返回值携带稳定错误码,避免把异常文本交给模型猜测。
终止与恢复
- 限制最大模型轮数和单工具超时。
- 为每个写工具传入 idempotency_key。
- 保存 checkpoint,使长任务可从确定状态恢复。
- 失败路径必须到达 failed 或 waiting_for_human,不能无限回环。
三条测试路径
固定模型和工具输出,测试成功、工具超时、人工拒绝。断言最终状态、调用次数和副作用,而不是只比较自然语言。
官方资料
LangGraph Overview 强调持久执行、流式输出、人工介入和显式状态控制。