让 AI 一边"想"一边"动手查"——ReAct 凭什么成了 Agent 时代的开山祖师?
- 关联论文:2210.03629
你用过 ChatGPT 的"联网搜索"吗?或者让 AI 帮你订外卖、比价下单、查航班?你有没有想过——它是怎么做到"想一句、查一句、再想一句"的?
这个看似理所当然的能力,背后其实有一篇 2022 年的论文,几乎凭一己之力奠定了整个 Agent 时代的玩法。它就是 arXiv 2210.03629 的 ReAct,被 Semantic Scholar 引了 10158 次(截至 2026-08),是 LangChain Agent、AutoGPT、Toolformer、Reflexion 这一整条技术血脉的"祖师爷"。
2022 年,LLM 卡在了两个死胡同里
2022 年中段,大语言模型已经在两条路上各自走得很远,但都暴露了致命短板:
- 第一条路:Chain-of-Thought(思维链)。让模型"think step by step",在算术、常识推理上效果惊艳。但问题是——它全靠模型自己在脑子里编。一旦中间某一步"想错了"(比如瞎编一个不存在的物理学家),整条推理链就会从这个错误出发,自信地走向荒谬的结论。这就是"幻觉蔓延"。
- 第二条路:Action Plan Generation(行动计划生成)。让模型直接生成"我要调用哪个 API"的步骤,跳过了思考过程。但坏处是——模型没法自我反思。订机票订错了,它不会回头检查"哎我刚才目的地是不是写错了",只会一条路走到黑。
那时候没人把这两条路打通:要么纯思考,要么纯动手,中间缺一座桥。
ReAct 的核心洞察:边想边查,边查边想
ReAct 的论文标题是 Synergizing Reasoning and Acting in Language Models,一句话概括:"推理"和"行动"不该是二选一,应该交替进行。
它发明了一种极简的轨迹格式——每一步都是:
Thought(思考)→ Action(行动)→ Observation(观察)→ Thought → Action → Observation → ... → 结束
举个例子。问"除了 Apple Remote,还有什么能控制 Front Row 这个程序?"
- Thought 1:我需要先查 Apple Remote 是干嘛的。
- Action 1:
Search[Apple Remote] - Observation 1:Apple Remote 最初是为 Front Row 设计的。
- Thought 2:Front Row 是被什么取代的?取代它的设备应该也能控制 Front Row。
- Action 2:
Search[Front Row successor] - Observation 2:Front Row 被 Apple TV 取代。
- Thought 3:Apple TV 应该能控制 Front Row,验证一下。
- Action 3:
Lookup[Apple TV Front Row] - Observation 3:无法找到相关信息。
- Thought 4:换个角度,搜"能控制 Front Row 的设备"。
- Action 4:
Search[remote control Front Row] - Observation 4:...iPhone 也可以。
- Action 5:
Finish[iPhone]
对比纯 CoT 的关键区别:Observation 永远来自外部 API(维基百科、数据库、搜索引擎),不是模型自己编的。这一步就把"幻觉"从根上掐断了——事实证据可回溯。
它到底有多强?数字说话
论文里给了四个标准基准的对比:
- HotpotQA(多跳问答):ReAct 27.4%,纯 CoT 25.7%,纯 Action 25.7%。当 ReAct 失败时回退到 CoT,得分 29.4%(论文最强)。
- ALFWorld(虚拟家居交互决策):71% 成功率,对比之前最好的 BUTLER 只有 37%。绝对提升 34 个百分点——这才是摘要主推的炸裂数字。
- WebShop(电商网站交互):ReAct 40%,模仿学习基线 30%。
- FEVER(事实验证):ReAct 显著降低假阳性。
关键数字:不用训练新模型、不动一个权重、只靠几段示例 prompt——你就能让现成的大模型"学会"这套循环。
为什么这是 Agent 时代的奠基石?
ReAct 之所以影响深远,不是因为数字多漂亮,而是因为它给出了一套可工程化的骨架:
- 零训练成本:不用微调、不用 RL、不用构造训练集。几段示例 prompt + 一个闭集动作 + 外部 API,就能跑起来。
- 可解释 + 可审计:每一步 Thought 都是自然语言,直接进日志就能看"AI 在想什么"。比传统强化学习 Agent(RL agent)的黑盒好排错一万倍。
- 跨任务通用:同一套"想-做-看"模板,在问答、事实验证、虚拟家居、电商四种完全不同的任务上都能 work。
- 开源生态立刻跟上:LangChain 当年 Q4 就推出了 ReAct Agent,把 prompt 模板 → 函数调用 → 解析 → 回填四件套标准化。LlamaIndex、Haystack、AutoGPT 全都跟上了。
后面所有 Agent 框架——AutoGPT 的"自己设子目标"、Reflexion 的"反思重试"、Toolformer 的"训练模型自己决定何时调用 API"——都可以追溯到 ReAct 这条主干。
现实里用 ReAct,有几个坑要知道
论文里的 PaLM-540B 是 2022 年的内部闭源大模型,我们今天落地用的是 GPT-4、Claude、开源 LLM。直接照搬原版 prompt 会踩这些坑:
- 坑 1:闭集动作 vs 开放工具。原版只有
search / lookup / finish三个动作,能查维基百科。但你要让它查你公司内部 CRM、调内部 API,得自己设计 JSON schema,否则解析会失败。 - 坑 2:小模型 Thought 失控。GPT-4 / Claude 这种强模型能用原版 prompt,但 7B / 13B 模型(如 Llama 3 8B)经常乱来——要么跳过思考段、要么动作名写错大小写。工程建议:在 prompt 里硬性约束 "Thought must be on its own line",并准备 4-6 条完整轨迹做 few-shot。
- 坑 3:Observation 污染整条链。如果维基百科 API 查不到,返回 "No good Wikipedia Result found",模型会把这句话当作事实继续推理。缓解:检测到失败关键词就触发"重写查询词后重试",别直接回填给 Thought。
- 坑 4:Action 解析脆弱。模型偶尔生成
Action: search[query](小写)或Action: 我觉得应该 search(自由文本),需要 robust parser 用正则多模式匹配,大小写不敏感。 - 坑 5:必须设计回退。HotpotQA 上"ReAct + CoT 混合"比纯 ReAct 还强 2 个百分点。生产里必须做:"ReAct 连续 N 步没有新 Observation → 切 CoT 自由推理 → 还不行 → 放弃"。
为什么它仍然值得今天读?
距 ReAct 发表已经快 4 年,但几乎所有生产级 Agent 系统的骨架仍然是 ReAct——Thought → Action → Observation → Loop。区别只在于:
- 2022 年:PaLM-540B + 几段 prompt + 维基百科 API。
- 2026 年:GPT-4o / Claude 4 + LangGraph / AutoGen + 内部工具集 + 多智能体协作 + RAG 检索 + 自反思。
骨架没变,基础设施堆了一百层。
如果你是 Agent 系统工程师,这篇论文是教科书起点;如果你只是想搞清楚"AI 凭什么能一边想一边查",读这一篇就够。
一句话总结
ReAct 不是什么高深理论,而是一个朴素到近乎直觉的工程范式——让 LLM 把"思考"和"动手"放在同一个轨迹里交替进行。 它用一个简单到 20 行代码就能复现的循环,直接定义了接下来四年代 Agent 系统的玩法。被引破万,名副其实。
三个标题变体
- Agent 时代的开山祖师——让 AI 一边"想"一边"动手查"的 ReAct,凭什么是 LangChain / AutoGPT 的祖师爷
- 被引破万的 Agent 论文到底讲了什么?——ReAct 的"想-做-看"循环,如何奠定整个 Agent 时代的玩法
- AI 凭什么能"一边想一边查"——读 arXiv 2210.03629 ReAct 论文,看懂 Agent 系统的底层骨架
📱 小红书风格卡片文案(可直接发布)
🤖 你有没有想过——AI 是怎么做到"想一句、查一句、再想一句"的?
ChatGPT 的"联网搜索"、AutoGPT 的自动执行、LangChain 的工具调用……这些 Agent 系统的玩法,全都源自 2022 年的一篇论文——arXiv 2210.03629 的 ReAct 📜
为什么 ReAct 这么重要?
2022 年的大模型卡在两条死胡同:
❌ 纯 CoT(思维链):模型全靠自己"想",想错了整条推理链自信地走向荒谬 ❌ 纯 Action(行动计划):模型只管执行,订机票订错了也不会回头检查
ReAct 一句话打通:「推理」和「行动」不该是二选一,应该交替进行 ✨
它发明了一种极简的轨迹格式:
Thought(想)→ Action(查)→ Observation(看结果)→ 再想→ 再查→ 再看 → ...
🌰 举个例子——问"除了 Apple Remote,还有什么能控制 Front Row?"
- 想:查 Apple Remote 是干嘛的
- 查:
Search[Apple Remote] - 看:它最初是为 Front Row 设计的
- 想:Front Row 被什么取代?
- 查:
Search[Front Row successor] - 看:被 Apple TV 取代
- ...循环几次后得到答案 iPhone 📱
关键洞察:Observation 永远来自外部 API(维基百科、数据库),不是模型自己编的——幻觉从根上被掐断 🚫
📊 数字说话(论文 §4): - HotpotQA 多跳问答:27.4%(纯 CoT 只有 25.7%) - ALFWorld 虚拟家居交互:71% 成功率,绝对提升 34 个百分点 🔥 - WebShop 电商交互:40%(模仿学习基线只有 30%)
🛠️ 今天落地 ReAct 的 5 个常见坑:
1️⃣ 闭集动作 vs 开放工具 —— 原版只有 search/lookup/finish 三动作,接 CRM / 内部 API 得自己设计 JSON schema
2️⃣ 小模型 Thought 失控 —— 7B 模型经常跳过思考段或动作名写错大小写,需要硬约束 + few-shot
3️⃣ Observation 污染整条链 —— API 返回 "No good result" 时,模型会把它当事实继续推理,需要触发重写查询
4️⃣ Action 解析脆弱 —— 模型偶尔输出 Action: search[query](小写)或自由文本,需要正则多模式匹配
5️⃣ 必须设计回退机制 —— "ReAct 失败 → 切 CoT 自由推理 → 还不行 → 放弃" 是生产必备兜底
🧠 为什么 ReAct 今天仍值得读?
距发表快 4 年,几乎所有生产级 Agent 系统的骨架仍是 ReAct——Thought → Action → Observation → Loop
区别只在于: - 2022:PaLM-540B + 几段 prompt + 维基百科 - 2026:GPT-4o / Claude 4 + LangGraph / AutoGen + 内部工具集 + 多智能体协作 + RAG
骨架没变,基础设施堆了一百层 🏗️
📎 论文 ID:2210.03629 💬 评论区:你用 LangChain / AutoGPT 搭 Agent 的时候,有没有注意到底层就是 ReAct 的"想-做-看"循环?现在生产里还在用 ReAct 骨架,还是已经切到更新的框架了?