Agent Planning Patterns
学到 Agent Engineering 之后,下一步一个很自然的问题就是:
Agent 到底应该怎么规划和推进任务?
因为真实系统里,Agent 并不是只有一种长相。
有些系统非常简单:
- 看到目标
- 想一步
- 做一步
- 看结果
有些系统则更复杂:
- 先整体拆计划
- 再按 计划逐个执行
- 遇到问题时回退、重规划
所以如果想真正理解 Agent,不只是要知道“它会多步执行”,还要知道:
它的多步执行模式到底是怎么设计出来的。
这篇文档就专门整理 Agent 里最常见的一批 Planning Patterns。
1. 为什么要学 Planning Pattern
因为很多 Agent 的差异,不在于模型本身,而在于:
- 任务是怎么拆的
- 下一步是怎么决定的
- 什么时候该探索
- 什么时候该收敛
- 什么时候该停止
Planning Pattern 决定的是 Agent 的运行形态。
如果不理解这些模式,你很容易出现两个问题:
- 把不需要复杂规划的任务做得过重
- 把需要稳定规划的任务交给随意的即时推理
2. 什么是 Planning
这里说的 Planning,不是只指“先列一个计划”。
在 Agent 系统里,它更广义地指:
- 如何把目标变成可执行步骤
- 如何在执行中决定下一步
- 如何根据结果调整路径
所以 Planning 可以发生在:
- 执行前
- 执行中
- 执行后复盘时
3. 最基本的模式:ReAct
ReAct 是最常见、也最基础的 Agent 模式之一。
它的核心节奏是:
Thought -> Action -> Observation
也就是:
- 先想一下
- 做一个动作
- 看结果
- 再决定下一步
3.1 它适合什么场景
适合:
- 信息需要边做边拿
- 工具调用顺序不固定
- 任务规模中等
- 决策依赖实时反馈
3.2 它的优点
- 简单
- 灵活
- 容易和工具调用结合