53
如何用状态机 (State Machine) 或LangGraph设计可控Agent?
Agent开发与工具调用困难
📋 面试问题
如何用状态机 (State Machine) 或LangGraph设计可控Agent?
✅ 期望回答
LangGraph将Agent视为状态机,定义了State(状态)、Node(处理节点)和Edge(节点间转换规则),让Agent更可控和可调试
核心概念:- State:对话/任务的完整状态(消息序列、工具调用历史、用户信息等)
- Node:执行特定逻辑的函数(LLM推理节点、Tool调用节点、条件判断节点)
- Edge:状态转换规则,支持条件分支
- 显式状态管理,Agent行为完全可预测和可回溯
- 支持循环、分支、中断、人工审批(Human-in-the-loop)
- 可独立测试每个Node,比自由Agent更易调试
- 支持持久化状态和中断恢复
开始 -> 推理节点 -> 需要工具? -> [是] -> 工具执行 -> 推理节点 -> [否] -> 结束
适用场景:需要严格流程控制和审计的企业级Agent
#LangGraph#状态机#流程控制