AI Agent 核心:ReAct 机制原理、缺陷与 Plan-and-Execute 解决方案面试详解

文章目录

前言

很多面试者对 ReAct Agent 存在理解误区,分不清模型和代码各自承担的职责。本文拆解 ReAct 完整运行流程,剖析它的两大工程缺陷,对比 Plan-and-Execute 优化方案,贴合面试答题逻辑,帮你精准吃透 Agent 推理架构。

先澄清一个最常见的误区

很多人面试说到 ReAct 时,张口就是"模型自己在循环调用工具"。面试官听到这句话,脑子里直接打上一个标签:你不懂。

实际是怎么回事?模型不负责循环。模型每次只做一件事:看一眼当前的 history,输出下一步是什么(Thought + Action),或者直接给最终答案(Final Answer)。输出完它就停了,等着代码框架把结果喂回来。循环是谁做的?是你的代码。模型是大脑,代码框架是身体。

ReAct 的六步循环

从代码框架视角,ReAct 一次完整迭代是六个步骤:

  1. 拼接 prompt:把系统提示、用户输入、历史 Thought / Action / Observation 全拼成一段 prompt
  2. 调 LLM:把 prompt 发给模型,等它返回
  3. 检测 Final Answer:判断输出里有没有 Final Answer,有就结束
  4. 解析 Action:没有 Final Answer 就从输出里拆出 Action(工具名 + 参数)
  5. 执行工具:调用外部工具,拿到 Observation
  6. 追加到 history:把 Observation 追加进 history,回到步骤 1

模型只参与了第 2 步的输出。其余五个步骤全是代码框架的事。面试里把这个关系说清楚,基本分到手。

ReAct 解决了什么,又带了什么新坑

ReAct 出现之前,CoT 让模型能写出推理过程,但它只能纯文字推,调用不了外部工具。ReAct 把 Reasoning 和 Acting 合在一起,每一步都能调用外部工具获取真实信息,这是它相对于 CoT 的核心进步。

但它也带进来两个工程上很实在的问题。

第一个坑:循环漂移。 想象一个没有导航的旅行者,每到一个路口都根据眼前的路牌临时决定往哪走。路牌清晰的时候能顺利到目的地,但路上的"风景"也在不断吸引他注意力,走着走着就拐进岔路,忘了最初要去哪。ReAct 每一步都是根据当前 history 重新决策,缺少全局计划约束方向。步骤越长,history 越长,漂移概率越大。

第二个坑:错误传播。 ReAct 的每一步决策都建立在前面所有步骤的结果之上。如果中间某一步拿到了错误信息,后面的推理全部被带跑。更麻烦的是,ReAct 没有内置"回头检查"机制,它不会停下来问"前面那步的结果靠谱吗",默认前面的 Observation 都对,一路往前冲。错误出现在早期步骤,整条链后面全白费。

两个问题的根源是同一个:ReAct 是纯粹的"前向推理",走一步看一步,没有全局规划约束方向,也没有反思机制纠正错误。

Plan-and-Execute 怎么补位

针对漂移问题,工程上引入了 Plan-and-Execute,分两个阶段:

规划阶段(Planner): 让 LLM 先不急动手,站在全局角度想清楚:这个任务分几步?每一步做什么?步骤间的依赖是什么?输出一份结构化的执行计划。这一步 LLM 只做规划,不执行任何工具调用。

执行阶段(Executor): 拿着计划按顺序执行。每一步的执行本身可以用 ReAct 来跑,执行器处理单个子任务时仍然"思考→行动→观察"地循环。区别在于,执行器始终知道自己在整体计划的哪一步、下一步做什么,不会像 ReAct 那样漫无目的地漂移。

一个比较直观的类比:Plan-and-Execute 负责"做什么"的全局规划,ReAct 负责"怎么做"的单步执行。两者是配合关系,不是替代关系。

选型决策

ReAct 的优势是灵活,每一步都能根据最新情况调整,适合任务边界不明确、需要探索性获取信息的场景(开放式问答、信息搜索)。代价是容易漂移,而且每一步都把完整 history 带上调 LLM,步骤多了 token 消耗线性增长。

Plan-and-Execute 的优势是有全局视野,不容易跑偏,适合目标明确、需要多步骤协作的复杂任务(深度研究、长文写作、多工具协同的数据分析)。代价是初始规划本身就要一次 LLM 调用,任务如果一两步就搞定,规划这一步就是多余开销。

实际工程里通常混合用:Plan-and-Execute 做全局规划,ReAct 做每步执行。规划阶段用更强的模型保证方向正确,执行阶段用更快更便宜的模型控制成本。

面试怎么答

回到面试场景,核心就两个点:

  1. ReAct 的本质是"思考→行动→观察"的循环,推理过程显式化,又能动态调用外部工具,解决了 CoT 只能纯文字推理的局限
  2. 这个循环是代码框架驱动的,模型每次只输出 Thought + Action,你的代码负责解析、执行工具、把 Observation 填回 history,再传给模型进入下一轮

说清这两点之后,主动提一下两个实战局限(漂移和错误传播),再说 Plan-and-Execute 是怎么通过"先规划再执行"解决漂移的,以及实际项目里两者经常混合使用。整个回答的深度就出来了。

结语

ReAct 是 Agent 基础推理框架,但缺少全局规划能力,结合 Plan-and-Execute 搭配使用,才能兼顾灵活探索与任务可控性,这套组合思路也是工业级智能体项目的主流落地方案。

相关推荐
张彦峰ZYF6 小时前
从“全量 OCR”到按页智能路由:pdf-inspector 与企业 PDF 解析架构的工程化重构
人工智能·pdf·ocr·ai agent·pdf-inspector
酒旅Agent开发实战1 天前
开发者如何选择API和MCP
人工智能·大模型·酒店预订·ai agent·mcp
maxdaic1 天前
接入新语音模型不只是换密钥
ai agent·智能语音·phoneagent
张彦峰ZYF1 天前
Prefactor 从“看见 Agent”到“拦住 Agent”:实时评估如何重构 AI Agent 的生产可靠性
人工智能·llm·ai agent·evaluate·llm-as-a-judge·prefactor·金融agent
deepseek231 天前
MCP 2026-07-28 Tasks扩展深度解析:从无状态协议到长时运行任务的架构演进
ai agent·分布式系统·协议设计·mcp·无状态协议·tasks扩展
deepseek231 天前
MCP 供应链投毒实战拆解:Deadbugz 如何在 74 分钟内渗透 23 个 AI项目
安全漏洞·ai agent·供应链攻击·mcp安全·deadbugz
酒旅Agent开发实战2 天前
酒店供应链MCP实践分享
人工智能·大模型·酒店预订·ai agent·mcp
deepseek232 天前
OWASP 2026 智能体安全十大风险拆解:从 Anthropic 第四起违规联网事件看 Agent 持权上岗的安全边界
ai agent·owasp·智能体安全
张彦峰ZYF2 天前
从会话工具到常驻执行系统:重新理解 Prime Agent 的 RLM、Continual Harness 与长程 Agent 工程化
人工智能·ai agent·harness·openhands·智能体评测·prime agent·swe-agent
小白跃升坊2 天前
从「一切皆插件」到 AI 自进化:DeepSeek Harness 与 Cordis 元框架深度拆解
ai agent·deepseek·cordis·插件架构·harness engineering