XYZNOT

论文 · arXiv 2210.03629

ReAct:在语言模型中协同推理与行动 (Synergizing Reasoning and Acting in Language Models)

ReAct: Synergizing Reasoning and Acting in Language Models

发表于 cs.CLcs.AIcs.LG arXivPDF

用 XYZNOT 阅读(全文翻译与 AI 讲解)

三句话总结

  1. 🎯 纯思维链推理的 LLMs 孤立思考且容易产生幻觉,而仅执行行动的智能体则缺乏工作记忆和策略规划。
  2. 🔧 通过将自由形式的自然语言思考与物理/API 行动交替结合来扩充智能体的行动空间,实现动态规划、跟踪与执行。
  3. 📈 ReAct 在 ALFWorld 上取得了 71% 的成功率,在 WebShop 上达到 40.0%,超越了模仿/强化学习基线,同时大幅减少了问答中的幻觉。

摘要

尽管大语言模型(LLMs)在语言理解和交互式决策任务中展现出了惊人的能力,但它们的推理能力(如思维链提示,chain-of-thought prompting)和行动能力(如行动计划生成)以往大多作为独立课题分别进行研究。在本文中,我们探索了利用 LLMs 以交替方式同时生成推理轨迹和任务特定行动的方法,从而实现两者之间更强大的协同效应:推理轨迹帮助模型归纳、跟踪和更新行动计划并处理异常;而行动则允许它与外部源(例如知识库或环境)进行交互以收集更多信息。我们将这种名为 ReAct 的方法应用于一系列多样的语言与决策任务中,证明了其相比当前最先进基线的有效性,并且相较于缺乏推理或行动组件的方法具有更强的人类可解释性与可信度。具体而言,在问答(HotpotQA)和事实核查(FEVER)任务中,ReAct 通过与简单的 Wikipedia API 交互,克服了思维链推理中普遍存在的幻觉和错误传播问题,并生成了比没有推理轨迹的基线更具可解释性且类似人类的问题解决轨迹。在两个交互式决策基准(ALFWorld 和 WebShop)上,ReAct 仅通过一两个上下文样本进行提示,就分别以 34% 和 10% 的绝对成功率超越了模仿学习和强化学习方法。项目网站及代码:https://react-lm.github.io

英文原文摘要

While large language models (LLMs) have demonstrated impressive capabilities across tasks in language understanding and interactive decision making, their abilities for reasoning (e.g. chain-of-thought prompting) and acting (e.g. action plan generation) have primarily been studied as separate topics. In this paper, we explore the use of LLMs to generate both reasoning traces and task-specific actions in an interleaved manner, allowing for greater synergy between the two: reasoning traces help the model induce, track, and update action plans as well as handle exceptions, while actions allow it to interface with external sources, such as knowledge bases or environments, to gather additional information. We apply our approach, named ReAct, to a diverse set of language and decision making tasks and demonstrate its effectiveness over state-of-the-art baselines, as well as improved human interpretability and trustworthiness over methods without reasoning or acting components. Concretely, on question answering (HotpotQA) and fact verification (Fever), ReAct overcomes issues of hallucination and error propagation prevalent in chain-of-thought reasoning by interacting with a simple Wikipedia API, and generates human-like task-solving trajectories that are more interpretable than baselines without reasoning traces. On two interactive decision making benchmarks (ALFWorld and WebShop), ReAct outperforms imitation and reinforcement learning methods by an absolute success rate of 34% and 10% respectively, while being prompted with only one or two in-context examples. Project site with code: https://react-lm.github.io

论文解读

问题与动机

大语言模型(LLMs)既擅长通过思维链(CoT)进行推理,也能通过输出可执行的指令完成决策。然而,这两种能力通常被孤立地进行研究:

  • CoT 推理缺乏落地(ungrounded):模型完全依赖于冻结的内部表征,极易出现事实性幻觉、缺乏最新知识以及复合错误传播。
  • **纯行动系统(Action-only systems)**直接将上下文映射到环境行动:它们缺乏显式的工作记忆来制定抽象目标、维护中间子目标或处理意外的状态变化。

受人类内部语言(inner speech)的启发,本文探讨了将推理步骤与环境交互交替结合是否能够创造一个相互增强的闭环:推理指导行动,而行动反馈为推理提供实际依据。

核心思想

  • 行动空间扩充(Action Space Augmentation): 扩展智能体的行动空间,将不产生外部观察但能够更新内部上下文的语言思考(thoughts)纳入其中。
  • 密集与稀疏思考机制: 取决于任务类型,思考可以紧密耦合(例如多跳问答中按步骤逐步交替),也可以是异步且稀疏的(仅在长流程游戏中用于规划或处理意外情况)。
  • 混合推理(Hybrid Reasoning): 将内部参数化知识(通过 CoT 自我一致性)与检索到的外部反馈(通过 ReAct)相结合,在事实准确性与推理灵活性之间取得平衡。

方法(包含关键公式)

考虑一个交互式环境,在时间步 时,智能体接收观察 ,维护轨迹上下文 ,并根据策略 采取行动。

ReAct 将行动空间扩充为: 其中 为自由形式的语言表达空间。

  • 如果智能体生成一个环境行动 ,环境将返回一个观察 ,形成下一个上下文 。
  • 如果智能体生成一个思考 ,则不会产生外部观察;思考直接追加到智能体的上下文中:。

对于知识任务(HotpotQA、FEVER),API 行动集为 。对于混合架构:

  • : 如果 ReAct 在固定步数内未完成(例如 HotpotQA 为 7 步,FEVER 为 5 步),则回退到 CoT 自我一致性的多数投票。
  • : 如果 个采样结果中的多数一致性低于 ,则回退到 ReAct。

实验结果(包含核心数据)

  • 知识推理 (PaLM-540B):
    • 在 HotpotQA 上,结合两种模式()达到了 35.1% 的完全匹配率(EM),相比之下标准提示为 28.7%,CoT 为 29.4%,纯 Act 为 25.7%。
    • 在 FEVER 上, 达到了 64.6% 的准确率,而标准提示为 57.1%,CoT 为 56.3%。
    • 错误分析显示,在 HotpotQA 上,ReAct 的失败案例中幻觉占比为 0%,而在 CoT 的失败案例中幻觉占到了 56%。
  • 决策制定 (ALFWorld & WebShop):
    • 在 ALFWorld 上,6 次采样取最佳(best-of-6)的 ReAct 达到了 71% 的平均成功率(不同提示间的平均值为 57%),优于纯 Act(最佳 45%)、内心独白式提示(Inner Monologue,最佳 53%)以及在 条轨迹上训练的模仿学习智能体 BUTLER(最佳 37%)。
    • 在 WebShop 上,单样本(1-shot)ReAct 取得了 40.0% 的成功率 和 66.6 的平均分,击败了在超过 10,000 条指令上训练的模仿学习 + 强化学习基线(28.7% 成功率,62.4 分)。
  • 微调(Finetuning): 利用 3,000 条自主生成的正确轨迹对 PaLM-8B 和 PaLM-62B 进行微调引导,使 ReAct 成为表现最好的模型,其中微调后的 PaLM-8B ReAct 超越了所有 62B 模型的提示方法。

局限性与开放问题

  • 上下文提示的限制: 受上下文窗口限制,LLMs 只能观察到少数示例(1–6 个),因此仅通过提示词很难掌握庞大的行动空间。
  • 搜索脱轨与死循环: 在贪心解码(greedy decoding)下,若搜索未返回有用信息,会导致 ReAct 在 23% 的错误案例中失败,偶尔还会让模型陷入重复循环。
  • 安全性与工具执行: 允许 LLMs 在开放环境中执行外部操作会带来意外行动的风险(例如执行非预期的网络交易或检索敏感数据)。

关键术语

ReAct
一种基于提示的范式,通过引导大语言模型交替生成推理轨迹与特定领域行动以解决通用任务。
Chain-of-Thought (CoT)
一种提示方法,模型在生成最终答案前先输出内部推理步骤,而不与外部环境进行交互采取行动。
Action Space Augmentation
对智能体离散行动空间的形式化扩充,将任意自然语言表述纳入其中,作为不改变环境状态的思考行动。
Inner Monologue (IM)
一种基线及先验方法,其中语言模型的思考主要受限于外部环境反馈,而非灵活的内部战略规划。
CoT-SC
结合了自我一致性(self-consistency)的思维链提示,在非零温度下对答案进行多次采样,并通过多数投票选出最终结果。
ALFWorld
一个基于 ALFRED 基准的文本交互环境,用于测试多步家庭目标分解、导航和物体操作能力。
WebShop
一个逼真的网络导航基准,包含从亚马逊抓取的 118 万种真实商品,通过评估智能体根据文本指令浏览并购买商品的能力来进行测试。
Self-Reflection / Thought Editing
一种人机协同干预方式,操作员通过手动调整生成的语言思考来纠正或引导模型的运行轨迹,而无需修改模型权重或行动历史。

常见问题

为什么 ReAct 比标准思维链更不容易产生幻觉?

CoT 完全依赖内部参数化记忆,这种记忆经常会编造不存在的事实。ReAct 通过具体行动检查外部来源(如 Wikipedia API),将随后的思考直接建立在检索到的观察基础之上。

ReAct 与 WebGPT 或 SayCan 有何不同?

WebGPT 和 SayCan 专注于利用人类反馈或可供性(affordance)模型来预测行动或计划,并没有明确提示模型在交替闭环中维护、分解和调整自身的自然语言推理轨迹。

在 ReAct 中如果搜索没有返回有用结果会发生什么?

在 HotpotQA 上,搜索失败约占 ReAct 失败案例的 23%;在贪心解码下,模型有时难以重新构思查询,并可能陷入重复的行动循环中。

ReAct 中的人机协同思考编辑是如何工作的?

因为推理轨迹采用纯自然语言表示,人类可以直接检查失败的轨迹,并实时修改一两个中间思考,从而在无需微调参数的情况下立即引导智能体摆脱死循环或错误信念。

本页解读由 AI 根据论文生成,可能有错误;细节请以原文为准。

用 XYZNOT 阅读(全文翻译与 AI 讲解)