Agent 规划与推理知识库
概述
规划与推理是 Agent 的"大脑",决定了 Agent 如何理解目标、拆解任务、制定执行步骤。
1. Chain-of-Thought(思维链)
核心原理
让 LLM 在给出最终答案前,先展示推理过程。通过显式的中间推理步骤,提升复杂问题的解决准确率。
实现方式
- Zero-shot CoT:在 Prompt 末尾添加"Let's think step by step"
- Few-shot CoT:提供包含推理过程的示例
核心公式
Output = LLM(Prompt + "Let's think step by step")适用场景
- 数学推理
- 逻辑推理
- 复杂决策
2. Tree-of-Thought(思维树)
核心原理
将推理过程组织成树状结构,每个节点代表一个思考状态,通过搜索算法(BFS/DFS)探索多条推理路径。
与 CoT 的区别
| 维度 | CoT | ToT |
|---|---|---|
| 结构 | 线性链 | 树状 |
| 路径 | 单一路径 | 多路径探索 |
| 回溯 | 不支持 | 支持 |
| 适用 | 简单推理 | 复杂决策 |
搜索策略
- BFS(广度优先):逐层探索,适合需要全局最优解
- DFS(深度优先):深入探索,适合快速找到可行解
3. Graph-of-Thought(思维图谱)
核心原理
将推理过程建模为有向图,节点代表思维单元,边代表推理关系。支持更复杂的推理模式:
- 分支
- 合并
- 循环
与 ToT 的区别
- ToT 是树结构,GoT 是图结构
- GoT 支持思维单元的聚合与分解
4. 任务分解策略
分解方法
- 层级分解:按抽象层次分解(目标→阶段→步骤→操作)
- 依赖分解:按任务依赖关系分解(DAG)
- 能力分解:按 Agent 能力边界分解
分解粒度
- 粒度过粗:难以执行
- 粒度过细:规划成本高、执行效率低
5. 自我反思与纠错
核心机制
- 执行后反思:检查结果是否符合预期
- 过程中反思:检测执行偏差并及时纠正
- 学习性反思:从失败中总结经验
实现要素
- 验证器:判断结果正确性
- 反思器:分析失败原因
- 修正器:生成改进方案
6. PDCA 循环执行
四阶段
- Plan(计划):制定执行方案
- Do(执行):按计划执行
- Check(检查):验证执行结果
- Act(处理):根据检查结果调整
Agent 应用
while not task_complete:
plan = planner.generate_plan(current_state)
result = executor.execute(plan)
check = validator.check(result)
if check.passed:
task_complete = True
else:
current_state = reflector.analyze(check.feedback)7. 面试高频问题
Q1: CoT 为什么能提升推理能力?
- 显式推理过程减少了跳跃推理的错误
- 中间步骤提供了更多的"思考空间"
- 符合人类解决复杂问题的认知过程
Q2: ToT 的搜索策略如何选择?
- BFS:需要全局最优解,时间成本可接受
- DFS:需要快速找到可行解,深度可控
- 结合启发式评估:平衡探索与利用
Q3: 如何评估 Agent 规划的质量?
- 任务完成率
- 平均步骤数
- 规划与执行的一致性
- 错误恢复能力
Q4: 反思机制的实现难点?
- 反思本身可能出错
- 反思频率与成本的权衡
- 避免无限反思循环
Q5: 规划器与执行器如何协作?
- 紧耦合:规划器实时指导执行
- 松耦合:规划器输出完整计划后执行
- 混合模式:关键节点规划器介入