把一个自主智能体从"演示很惊艳"推进到"生产能扛事",最大的拦路虎不是模型,而是规划架构。2025–2026 的受控评测给出了一组冷酷的数据:ReAct 在 7–9 步之后因"记忆视野"塌陷,Plan-and-Act 在 WebArena-Lite 上以 57.58% 成功率刷新 SOTA,而执行中途的动态重规划能比纯 ReAct 再拔 34 个百分点。本文以同一类任务横测五种主流规划范式——ReAct、Plan-and-Execute、ReWOO、Reflexion、Tree-of-Thought——拆解它们"在纸面上规划"与"在现实中执行"之间那道致命裂缝,并给出按任务长度选型的硬规则。核心结论:规划与执行脱节,是自主智能体最常见的系统性失败,而非模型不够聪明。
| 范式 | 规划时机 | 与执行的耦合 | Token 成本 | 步数甜区 | 典型失败模式 | 上手难度 |
|---|---|---|---|---|---|---|
| ReAct | 边走边想(每步) | 紧耦合 | 高(全历史回灌) | 1–8 步 | 步数一长失去全局目标、循环烧钱 | ★ 极易 |
| Plan-and-Execute | 前置一次性 | 松耦合(契约式) | 中(规划贵、执行廉价) | 10–40 步 | 计划僵化、与现实脱节 | ★★ 中 |
| ReWOO | 前置 DAG 一次成型 | 完全解耦 | 低(执行期零 LLM) | 可并行子任务 | 依赖幻觉、无法处理观察反馈 | ★★★ 偏难 |
| Reflexion | 规划+失败后重思 | 反思回路耦合 | 高(多轮迭代) | 探索性强、容错任务 | 自我批评偏袒、反思空转 | ★★ 中 |
| Tree-of-Thought | 分支搜索式 | 评估器耦合 | 极高(指数级分支) | 高歧义、单点决策代价大 | 搜索爆炸、剪枝丢正解 | ★★★★ 难 |
ReAct(Reason + Act)由 Yao 等人在 2022 年提出,把智能体认知压成一个紧循环:Thought → Action → Observation → 重复。每一步都是一次 LLM 调用,模型带着完整历史(之前的思考、动作、观察)决定下一步。没有前置计划,路径是走出来的。
# 最小 ReAct 循环(LangGraph v0.2+)
from langgraph.graph import StateGraph, MessagesState
from langgraph.prebuilt import ToolNode, tools_condition
from langchain_anthropic import ChatAnthropic
llm = ChatAnthropic(model="claude-3-5-sonnet-20241022")
llm_with_tools = llm.bind_tools([search_web, read_document, write_file])
def agent(state: MessagesState):
return {"messages": [llm_with_tools.invoke(state["messages"])]}
g = StateGraph(MessagesState)
g.add_node("agent", agent)
g.add_node("tools", ToolNode([search_web, read_document, write_file]))
g.set_entry_point("agent")
g.add_conditional_edges("agent", tools_condition)
g.add_edge("tools", "agent")
app = g.compile()
它的迷人之处在于动态适应:工具返回意外数据,下一步思考就能改弦更张;任务中途发现歧义,能主动追问。认知负担压在模型身上,不在开发者身上——这正是它"演示效果好"的根源。但代价同样真实:每步都把全部历史塞回上下文,步数线性增长时 token 成本近平方级膨胀;一旦超过 7–9 步,模型就开始"只见眼前、忘了全局",token 烧在局部优化而非全局收敛上。一句话:ReAct 是 5 步演示的王者、15 步生产的灾难。
Plan-and-Execute 把认知劈成两半:先由 Planner(通常用强模型)一次性产出完整的有序子任务清单,再由 Executor(可用廉价模型)逐条执行。计划就是契约,执行只是填空。
from langchain_core.prompts import ChatPromptTemplate
from pydantic import BaseModel
from typing import List
class Plan(BaseModel):
steps: List[str]
planner_prompt = ChatPromptTemplate.from_messages([
("system", "你是精确规划者。把任务拆成有序、具体、可独立执行的步骤。只输出步骤列表。"),
("user", "{task}"),
])
planner = planner_prompt | llm.with_structured_output(Plan)
def plan_step(state: dict) -> dict:
plan = planner.invoke({"task": state["task"]})
return {"plan": plan.steps, "current_step": 0}
工程界的实战结论很统一:任务一旦超过 5–6 步,Plan-and-Execute 在成本和可调试性上全面碾压 ReAct。 它把昂贵的推理集中到一次规划调用,执行阶段换成便宜模型摊薄成本;计划作为显式数据结构,挂了哪一步、为什么挂,日志一目了然——这是 ReAct 那种"推理淹没在历史里"的架构给不了的可观测性。
但它的阿喀琉斯之踵是计划僵化:Planner 在没看到任何真实观察的情况下就把后续十几步全定了,一旦现实与假设不符,整条计划链断裂。解药是动态重规划——执行中某步失败时触发 Planner 重新拟定剩余计划。Plan-and-Act 论文的实测印证了这点:在 WebArena-Lite 上,动态重规划比纯 ReAct 成功率高出整整 34 个百分点,Plan-and-Act 最终定格 57.58% 的 SOTA。这组数字几乎是"规划架构比换模型更值钱"最硬的证据。
ReWOO(Reasoning WithOut Observation,arXiv:2305.18323)把"解耦"推到极致:在任何工具运行之前,Planner 就用占位变量(如 #E1、#E2)规划出完整的依赖 DAG,Solver 最后把所有证据拼成答案。执行阶段,Worker 们沿 DAG 跑工具、把结果填回占位符——整个执行期不再调用任何 LLM 做中间推理。
# Planner(单次 LLM 调用,输出 DAG)
Plan:
#E1 = search("公司A 营收")
#E2 = search("公司B 营收")
#E3 = calc(#E1, #E2) ← 依赖 E1、E2
# Worker(零 LLM,按 DAG 执行、可并行 E1/E2)
# Solver(单次 LLM 调用,综合 #E3 给答案)
这套 Planner-Worker-Solver 三段式的回报惊人:论文报告 token 消耗降低 5 倍量级,同时因中间步骤不再喂回 LLM,幻觉和提示注入面也随之收窄。NVIDIA NeMo Agent Toolkit 已把 ReWOO 列为标准 Agent 模式之一。
它的死穴在于"Reasoning Without Observation"这个名字本身就是双刃剑——既然执行期不回看观察,Planner 就必须在零现实反馈下把所有依赖猜对。一旦它假设某个 API 返回字段而实际不是,或把本可并行的步骤串成了错误依赖,整条 DAG 无从补救。ReWOO 只适合子任务独立性高、依赖关系可静态确定的场景(批量检索、固定报表流水线),一旦任务需要"看一步、调整下一步",它就退化为脆弱的纸面计划。
Reflexion 在普通执行循环外再叠一层自我反思:智能体完成任务后,由自身(或独立评估器)生成一段"哪里做错了、下次怎么改"的口头反馈,写进记忆,下一次重试时带着这条教训重新规划。它把规划变成了多轮迭代的自改进。
范式上是优雅的——把强化学习的"奖励信号"换成自然语言反馈,免去了训练。但实测中它的两个软肋很致命:自我批评的偏袒性(模型倾向肯定自己的方案,反思流于表面)与反思空转(失败原因其实是工具不可用或上下文缺失,反思再多也无济于事,只是多烧几轮 token)。Reflexion 的甜区是探索性强、容错成本低的任务——比如代码生成里跑测、读报错、改代码的循环,单元测试给出了比模型自评客观得多的信号,反思才真正"言之有物"。脱离外部客观信号,纯靠 LLM 自评的 Reflexion 很容易陷入"自说自话"。
Tree-of-Thought(ToT)把规划升级成搜索问题:在决策点同时生成多条候选推理路径,由评估器按启发式打分,保留最优分支继续推进或回溯——本质是认知层的 beam search。它专为高歧义、单点决策代价巨大的任务设计(数学证明、复杂调度、博弈),因为这类任务选错一个岔口,错误会向下游复合放大。
代价同样直接:分支数随深度指数膨胀,token 与时延成本陡峭到生产环境难以承受;评估器若剪枝过狠,会丢掉正确解。ToT 几乎是五种范式里最不适合长程自主任务的——它解决的是"单点决策的深度搜索",而非"长程任务的步骤推进"。把它硬塞进 30 步的工作流,是典型的范式误配:用搜索的开销去解一个本该用 Plan-and-Execute 的契约式问题。
五种范式看似迥异,生产事故却高度同构——根因都是"纸面计划"与"现实执行"的脱节:
这四条病理没有一条是"换个更强的模型"能根治的——它们是架构层面的系统性失败。这解释了一个反直觉现象:花两个月纠结选哪个前沿模型,不如花两周把规划架构对到任务的步数特征上,后者带来的成功率提升往往大得多。
粒度是被严重低估的杠杆。粗规划(3–5 个高层步骤)鲁棒但空洞,执行器仍得在每步内重新规划,等于把 Plan-and-Execute 退化成多个小 ReAct;细规划(20+ 步原子操作)精确但脆弱,现实稍有风吹草动就推倒重来。
实战中经得起检验的解法是层级规划(Hierarchical Planning):顶层 Plan-and-Execute 出粗粒度骨架,每个高层步骤内部再用 ReAct 即时细化。骨架保证全局不偏航,细化保证局部能适应——这正是 2026 年主流框架(LangGraph、Anthropic、OpenAI 的 agent 示例)不约而同收敛到的"hybrid"形态。配合动态重规划阈值(连续两步失败、或与预期偏差超阈值才触发 Planner,而非每步都重规划),既避免僵化又控制重规划成本。
自主智能体规划是 2026 年少数能直接变现的硬技能切口,因为它卡在"人人会调 prompt、人人做不出能用的 agent"的认知断层上:
需要注意的市场现实:纯 ReAct 的内容已高度同质化、几乎无溢价;真正稀缺的是"按任务特征选范式并落地 hybrid 架构"的工程判断力,这是训练营能卖出高价的部分。
flowchart LR
subgraph 规划范式
R[ReAct<br/>即时·紧耦合<br/>甜区1-8步]
PE[Plan-and-Execute<br/>前置·契约式<br/>甜区10-40步]
RW[ReWOO<br/>DAG·全解耦<br/>执行期零LLM]
RF[Reflexion<br/>反思重规划<br/>多轮迭代]
TOT[Tree-of-Thought<br/>搜索回溯<br/>高歧义单点]
end
GOAL[模糊目标] --> R & PE & RW & RF & TOT
R --> EXEC[执行层]
PE --> EXEC
RW --> EXEC
RF --> EXEC
TOT --> EXEC
EXEC -->|依赖幻觉/计划僵化/视野塌陷/粒度失衡| GAP{规划-执行<br/>脱节裂缝}
GAP -->|动态重规划+34pp| FIX[混合层级架构]
FIX --> GOAL2[57.58% SOTA]
style GAP fill:#fdd,stroke:#c00,stroke-width:2px
style FIX fill:#dfd,stroke:#090,stroke-width:2px
flowchart TD
A[Planner 纸面计划] --> B[Executor 执行]
B --> C{与现实吻合?}
C -->|是| D[成功]
C -->|否| E[四种病理]
E --> P1[依赖幻觉:假设中间结果存在]
E --> P2[计划僵化:遇新信息不调整]
E --> P3[视野塌陷:7-9步后丢失目标]
E --> P4[粒度失衡:过细脆弱/过粗空洞]
P1 & P2 & P3 & P4 --> F[系统性失败<br/>换模型无用]
F -->|架构层修复| G[动态重规划阈值]
F -->|架构层修复| H[层级混合规划]
G & H --> A
按任务长度选范式是 2026 年唯一被数据反复验证的硬规则:
| 场景 | 首选范式 | 理由 |
|---|---|---|
| 探索性问答、API 串联(<8 步) | ReAct | 短任务规划开销大于收益,动态适应占优 |
| 合规审核、理赔流水线(10–40 步) | Plan-and-Execute + 动态重规划 | 成本/可调试性碾压,重规划 +34pp |
| 批量检索、固定报表(子任务独立) | ReWOO | 执行期零 LLM,token 降 5 倍 |
| 代码生成迭代(有客观测试信号) | Reflexion | 外部信号让反思言之有物 |
| 高歧义单点决策(证明/调度) | Tree-of-Thought | 分支搜索防复合放大,慎用于长程 |
| 混合长程任务(生产默认) | 层级 Plan-and-Execute + 局部 ReAct + 重规划阈值 | 全局骨架防偏航、局部细化适应现实 |
给落地者的三句话:第一,任务步数先于模型选型——8 步是 ReAct 与 Plan-and-Execute 的天然分水岭;第二,永远上动态重规划,它是性价比最高的成功率杠杆;第三,别让 Planner 在零观察下规划超过它实际能掌握的依赖深度,那是"纸上即败"的起点。
[!tip] 51学通信知识星球 星主:爱卫生(微信:gprshome201101)——公众号「51学通信」创办者,19 年通信行业运维与讲师经验,著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书(各大电商平台有售)。 星球定位:深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域,主打运维岗位与信令分析。 当前规模:5200 篇主题 / 990 个回答,198 元/年。 加入福利:加入星球后请加爱卫生微信,拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题,另有群内分享。 AI 加持:51学通信知识星球已作为 skill 接入 WorkBuddy,使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例,做总结、找文档和 PPT 等场景全覆盖。
