REAC T: SYNERGIZING REASONING AND ACTING IN LANGUAGE MODELS
- 文章标题: ReAct:协同语言模型中的推理与行动
- 作者/机构: Shunyu Yao∗,1, Jeffrey Zhao2, Dian Yu2, Nan Du2, Izhak Shafran2, Karthik Narasimhan1, Yuan Cao2
- 机构: 1普林斯顿大学计算机科学系, 2Google Research, Brain团队
A1 主要贡献
本文探讨了如何利用大型语言模型(LLMs)以交错的方式生成推理轨迹和任务特定动作,从而实现两者之间更强的协同作用。核心问题在于,先前研究主要将LLMs的推理能力(如思维链提示)和行动能力(如动作规划生成)作为独立主题进行研究。这种分离限制了模型的应用潜力:仅有推理的模型是静态的黑盒,无法与外部世界互动以更新其知识,容易产生事实幻觉和错误传播(如图1(1b)所示);而仅有行动的模型则缺乏抽象推理和维护工作记忆的能力,难以处理复杂任务。
研究目标是提出一个通用范式,将推理和行动结合起来,解决多样化的语言推理和决策任务。这种结合旨在实现一种协同作用:推理轨迹帮助模型引导、跟踪和更新行动计划,并处理异常情况;而行动则允许模型与外部源(如知识库或环境)交互,以收集额外信息来支持推理。
本文的核心创新点是提出了 ReAct 框架。其关键思想是提示(prompt)大型语言模型以交错的方式生成言语推理轨迹和特定任务的动作。这一机制实现了双向增益:
1. 推理驱动行动(Reason to Act):模型通过动态推理来创建、维护和调整高级行动计划。
2. 行动辅助推理(Act to Reason):模型通过与外部环境(如维基百科)互动,将外部信息整合到其推理过程中。
图 1: (1) 四种提示方法在解决HotpotQA问题上的对比:(a) 标准提示, (b) 思维链 (CoT, 仅推理), (c) 仅行动, 和 (d) ReAct (推理+行动)。(2) (a) 仅行动 和 (b) ReAct 提示解决AlfWorld游戏的对比。在两个领域中,我们都省略了提示中的上下文示例,只展示了模型生成的任务解决轨迹 (行动, 思考) 和环境的反馈 (观察)。
本文在四个基准测试上验证了ReAct的有效性:问答(HotPotQA)、事实核查(Fever)、基于文本的游戏(ALFWorld)和网页导航(WebShop)。
- 在HotpotQA和Fever上,ReAct通过与一个简单的维基百科API交互,克服了思维链推理中常见的幻觉和错误传播问题。
- 在ALFWorld和WebShop上,仅用一到两个上下文示例的ReAct提示,其成功率分别比模仿学习和强化学习方法高出34%和10%。
主要贡献总结如下:
1. 提出ReAct:一个新颖的、基于提示的范式,用于协同语言模型中的推理和行动,以解决通用任务。
2. 广泛的实验验证:在多样化的基准上进行实验,展示了ReAct在少样本学习设置下相对于孤立进行推理或行动生成的方法的优势。
3. 系统的消融分析:分析了行动在推理任务中的重要性,以及推理在交互式任务中的重要性。
4. 潜力和局限性分析:分析了ReAct在提示设置下的局限性,并通过初步的微调实验展示了其通过额外训练数据改进的潜力。
A3 ReAct:协同推理与行动
通用任务解决框架。在一个通用的智能体与环境交互以解决任务的设定中,智能体在时间步 $t$ 接收到一个观察 $o_t \in O$,并根据某个策略 $\pi(a_t|c_t)$ 采取一个行动 $a_t \in A$,其中 $c_t = (o_1, a_1, \dots, o_{t-1}, a_{t-1}, o_t)$ 是智能体的上下文。当上下文 $c_t$ 到行动 $a_t$ 的映射非常隐晦且需要大量计算时,学习一个有效的策略是具有挑战性的。例如,图1(1c)中展示的智能体无法生成正确的最终行动(Act 4)来完成问答任务,因为它需要对轨迹上下文(问题、行动1-3、观察1-3)进行复杂的推理。同样,图1(2a)中的智能体未能从上下文中理解到水槽1中不包含胡椒瓶1,因此持续产生幻觉性的动作。
ReAct的核心思想。ReAct的思想很简单:我们将智能体的行动空间扩展为 $\hat{A} = A \cup L$,其中 $L$ 是语言空间。在语言空间中的一个行动 $\hat{a}_t \in L$,我们称之为思考或推理轨迹,它不影响外部环境,因此不会产生观察反馈。相反,一个思考 $\hat{a}_t$ 的目的是通过对当前上下文 $c_t$ 进行推理来组织有用的信息,并更新上下文为 $c_{t+1} = (c_t, \hat{a}_t)$ 以支持未来的推理或行动。如图1所示,思考可以有多种有用的类型,例如:分解任务目标并创建行动计划(2b, Act 1; 1d, Thought 1)、注入与任务解决相关的常识知识(2b, Act 1)、从观察中提取重要部分(1d, Thought 2, 4)、跟踪进展并转换行动计划(2b, Act 8)、处理异常并调整行动计划(1d, Thought 3)等。
通过少样本提示实现。由于语言空间 $L$ 是无限的,在这个增强的行动空间中学习是困难的,并且需要强大的语言先验知识。本文主要关注的设置是,使用一个固定的、大型的语言模型 PaLM-540B【索引6, Palm: Scaling language modeling with pathways, 2022, arXiv preprint】,通过少样本的上下文示例进行提示,以生成特定领域的行动和自由形式的语言思考来解决任务(如图1(1d)和(2b)所示)。每个上下文示例都是一个人类解决任务实例的行动、思考和环境观察的轨迹(详见附录C)。对于推理至关重要的任务(图1(1)),我们交替生成思考和行动,使任务解决轨迹包含多个“思考-行动-观察”步骤。相反,对于可能涉及大量行动的决策任务(图1(2)),思考只需要在轨迹中最相关的位置稀疏地出现,因此我们让语言模型自行决定思考和行动的异步出现。
ReAct的特性。由于决策和推理能力被整合到一个大型语言模型中,ReAct具有几个独特的特性:
- A) 直观且易于设计:设计ReAct提示很简单,因为人类标注者只需在他们采取的行动之上用语言写下他们的想法。本文没有使用特定的格式选择、思考设计或示例选择。
- B) 通用且灵活:由于灵活的思考空间和思考-行动的出现格式,ReAct适用于具有不同行动空间和推理需求的多样化任务,包括但不限于问答、事实核查、文本游戏和网页导航。
- C) 高效且稳健:ReAct仅从一到六个上下文示例中学习,就表现出对新任务实例的强大泛化能力,在不同领域中始终优于仅有推理或行动的基线。
- D) 人类对齐且可控:ReAct提供了一个可解释的顺序决策和推理过程,人类可以轻松地检查推理和事实的正确性。此外,人类还可以通过编辑思考来即时控制或纠正智能体的行为,如第4节的图5所示。
A2 方法细节
知识密集型推理任务
我们首先从知识密集的推理任务开始,如多跳问答和事实核查。如图1(1d)所示,通过与维基百科API交互,ReAct能够检索信息以支持推理,同时利用推理来确定下一步要检索什么,展示了推理和行动的协同作用。
3.1 设置
领域。我们考虑两个具有挑战性的知识检索和推理数据集:(1) HotPotQA【索引36, Hotpotqa: A dataset for diverse, explainable multi-hop question answering, 2018, arXiv preprint】,一个需要对两个或更多维基百科段落进行推理的多跳问答基准;(2) FEVER【索引31, Fever: a large-scale dataset for fact extraction and verification, 2018, arXiv preprint】,一个事实核查基准,其中每个声明根据是否存在维基百科段落来验证,被标注为支持(SUPPORTS)、反驳(REFUTES)或信息不足(NOT ENOUGH INFO)。在这项工作中,我们对这两个任务都采用“仅问题”设置,模型只接收问题/声明作为输入,而无法访问支持段落,必须依赖其内部知识或通过与外部环境交互来检索知识以支持推理。
行动空间。我们设计了一个简单的维基百科Web API,包含三种类型的行动以支持交互式信息检索:(1) search[entity]
,如果存在对应的实体维基页面,则返回前5个句子,否则从维基百科搜索引擎建议前5个相似的实体;(2) lookup[string]
,返回页面中包含该字符串的下一个句子,模拟浏览器上的Ctrl+F功能;(3) finish[answer]
,用答案结束当前任务。我们注意到,这个行动空间主要只能基于确切的段落名称检索一小部分内容,这比最先进的词汇或神经检索器要弱得多。其目的是模拟人类与维基百科的交互方式,并迫使模型通过明确的语言推理来进行检索。
3.2 方法
ReAct提示。对于HotpotQA和Fever,我们分别从训练集中随机选择了6个和3个案例,并手动编写了ReAct格式的轨迹,作为提示中的少样本示例。与图1(d)类似,每个轨迹都包含多个“思考-行动-观察”步骤(即密集的思考),其中自由形式的思考用于各种目的。具体来说,我们使用的思考组合包括:分解问题(“我需要搜索x,找到y,然后找到z”)、从维基百科观察中提取信息(“x始于1844年”,“该段落没有告诉我们x”)、进行常识(“x不是y,所以z必须是……”)或算术推理(“1844 < 1989”)、指导搜索重构(“也许我可以搜索/查找x”),以及综合最终答案(“……所以答案是x”)。更多细节见附录C。
表 1: PaLM-540B在HotpotQA和Fever上的提示结果。
图 2: PaLM-540B提示结果与使用的CoT-SC样本数量的关系。
基线方法。我们系统地对ReAct轨迹进行消融,为多个基线构建提示(格式如图1(1a-1c)所示):(a) 标准提示(Standard),移除了ReAct轨迹中的所有思考、行动和观察。(b) 思维链提示(CoT)【索引35, Chain of thought prompting elicits reasoning in large language models, 2022, arXiv preprint】,移除了行动和观察,作为仅推理的基线。我们还构建了一个自洽性基线(CoT-SC)【索引33, Self-consistency improves chain of thought reasoning in language models, 2022a, arXiv preprint; 索引34, Rationale-augmented ensembles in language models, 2022b, arXiv preprint】,通过在推理时使用解码温度0.7采样21个CoT轨迹,并采纳多数答案,这种方法被发现能持续提升CoT的性能。(c) 仅行动提示(Act),移除了ReAct轨迹中的思考,这松散地类似于WebGPT【索引23, Webgpt: Browser-assisted question-answering with human feedback, 2021, arXiv preprint】与互联网交互来回答问题的方式,尽管它在不同的任务和行动空间上操作,并且使用模仿和强化学习而不是提示。
结合内部与外部知识。我们观察到ReAct展示的问题解决过程更具事实性和依据性,而CoT在构建推理结构上更准确,但容易受到幻觉事实或思考的影响。因此,我们提出将ReAct和CoT-SC结合起来,并让模型根据以下启发式规则决定何时切换到另一种方法:A) ReAct → CoT-SC:当ReAct在给定步数内未能返回答案时,退回到CoT-SC。我们为HotpotQA和FEVER分别设置了7步和5步的限制。B) CoT-SC → ReAct:当n个CoT-SC样本中的多数答案出现次数少于n/2时(即内部知识可能不足以自信地支持任务),退回到ReAct。
微调。由于大规模手动标注推理轨迹和行动的挑战,我们考虑了一种类似于Zelikman等人【索引39, Star: Bootstrapping reasoning with reasoning, 2022, arXiv preprint】的自举方法,使用由ReAct(以及其他基线)生成的3000个带有正确答案的轨迹,来微调较小的语言模型(PaLM-8/62B),以在给定问题/声明的条件下解码轨迹(包括所有思考、行动和观察)。更多细节在附录B.1。
图 3: ReAct(我们的方法)和基线在HotPotQA上进行提示和微调的扩展性结果。
决策任务
我们还在两个基于语言的交互式决策任务上测试了ReAct:ALFWorld和WebShop。这两个任务都具有复杂的环境,要求智能体在长时程和稀疏奖励下行动,因此需要推理来有效地行动和探索。
ALFWorld。ALFWorld【索引28, Alfworld: Aligning text and embodied environments for interactive learning, 2020b, arXiv preprint】(图1(2))是一个合成的基于文本的游戏,旨在与具身ALFRED基准【索引27, Alfred: A benchmark for interpreting grounded instructions for everyday tasks, 2020a, CVPR】对齐。它包括6种任务类型,其中智能体需要通过文本动作(如go to coffeetable 1
, take paper 2
, use desklamp 1
)在模拟的家庭环境中导航和互动,以实现一个高级目标(如“检查台灯下的纸”)。一个任务实例可能有超过50个位置,并且专家策略需要超过50个步骤才能解决,因此对智能体的规划、子目标跟踪以及系统性探索(例如逐一检查所有桌子以寻找台灯)提出了挑战。特别是,ALFWorld内置的一个挑战是需要确定常见家居物品可能的位置(例如,台灯可能在桌子、架子或梳妆台上),这使得该环境非常适合LLMs利用其预训练的常识知识。为了提示ReAct,我们为每种任务类型从训练集中随机标注了三个轨迹,每个轨迹都包含稀疏的思考,用于(1)分解目标,(2)跟踪子目标完成情况,(3)确定下一个子目标,以及(4)通过常识推理来判断在哪里找到一个物体以及如何处理它。我们在附录C.4中展示了用于ALFWorld的提示。我们遵循Shridhar等人【索引28, Alfworld: Aligning text and embodied environments for interactive learning, 2020b, arXiv preprint】的方法,在134个未见过的评估游戏中以任务特定的设置进行评估。为了保证稳健性,我们通过对我们标注的3个轨迹中的任意2个进行排列组合,为每种任务类型构建了6个提示。Act提示使用相同的轨迹构建,但不包含思考——由于任务实例是从训练集中随机选择的,这既不偏向ReAct也不偏向Act,并为测试稀疏思考的重要性提供了一个公平和受控的比较。对于基线,我们使用了BUTLER【索引28, Alfworld: Aligning text and embodied environments for interactive learning, 2020b, arXiv preprint】,这是一个为每种任务类型在10^5个专家轨迹上训练的模仿学习智能体。
表 3: AlfWorld任务特定成功率(%)。BUTLER和BUTLERg的结果来自Shridhar等人(2020b)的表4。除BUTLER使用波束搜索外,所有方法均使用贪婪解码。
表 4: Webshop上的得分和成功率(SR)。IL/IL+RL数据来自Yao等人(2022)。
WebShop。为了探究ReAct是否也能与嘈杂的真实世界语言环境进行交互以用于实际应用,我们研究了WebShop【索引38, Webshop: Towards scalable real-world web interaction with grounded language agents, 2022, arXiv preprint】,一个最近提出的在线购物网站环境,拥有118万个真实世界产品和1.2万条人类指令。与ALFWorld不同,Webshop包含大量结构化和非结构化的文本(例如,从亚马逊爬取的产品标题、描述和选项),并要求智能体根据用户指令(例如,“我正在寻找一个带抽屉的床头柜。它应该有镍色饰面,价格低于140美元”)通过网络交互(例如,搜索“床头柜抽屉”,选择按钮如“颜色:现代-镍-白”或“返回搜索”)来购买产品。该任务通过平均得分(所选产品覆盖期望属性的百分比,在所有回合中取平均)和成功率(所选产品满足所有要求的回合百分比)在500个测试指令上进行评估。我们制定了包含搜索、选择产品、选择选项和购买等动作的Act提示,而ReAct提示则额外增加了推理,以确定探索什么、何时购买以及哪些产品选项与指令相关。我们与一个在1012个人类标注轨迹上训练的模仿学习(IL)方法,以及一个额外在10587个训练指令上训练的模仿+强化学习(IL + RL)方法进行了比较。
内部推理与外部反馈的价值。据我们所知,ReAct是首次在一个闭环系统内,将使用LLM的推理和行动结合应用于交互式环境的展示。也许最接近的先前工作是来自Huang等人【索引14, Inner monologue: Embodied reasoning through planning with language models, 2022b, arXiv preprint】的“内心独白”(Inner Monologue, IM),其中具身智能体的行动由同名的“内心独白”所驱动。然而,IM的“内心独白”仅限于对环境状态的观察和为满足目标智能体需要完成的任务。相比之下,ReAct中用于决策的推理轨迹是灵活和稀疏的,允许为不同任务引导出不同类型的推理(见第2节)。
与IM风格提示的消融实验。为了展示ReAct和IM之间的差异,并强调内部推理相对于简单响应外部反馈的重要性,我们进行了一个消融实验,使用了一种由类似IM的密集外部反馈组成的思考模式。如表3所示,ReAct在整体成功率上显著优于IM风格的提示(ReAct-IM)(71% vs. 53%),并且在六个任务中的五个上具有一致的优势。从定性分析中我们观察到,由于缺乏高层次的目标分解,ReAct-IM经常在判断子目标何时完成或下一个子目标应该是什么时犯错。此外,由于缺乏常识推理,许多ReAct-IM轨迹难以确定一个物品在ALFWorld环境中可能的位置。这两种缺点都可以在ReAct范式中得到解决。关于ReAct-IM的更多细节在附录B.2中。
A4 实验环境
-
数据集:
- HotPotQA: 一个多跳问答基准,需要对多个维基百科段落进行推理。
- FEVER: 一个事实核查基准,任务是验证一个声明是支持、反驳还是信息不足。
- ALFWorld: 一个基于文本的合成游戏环境,模拟家庭场景中的具身任务,包含6种任务类型。
- WebShop: 一个在线购物网站环境,包含118万真实商品,要求智能体根据用户指令完成购买任务。
-
模型架构:
- 主要模型: PaLM-540B,一个大型语言模型,用于主要的少样本提示实验。
- 微调模型: PaLM-8B 和 PaLM-62B,用于微调实验。
- 对比模型: GPT-3 (text-davinci-002),用于验证ReAct在不同LLM上的通用性。
-
硬件配置:
- 论文未明确提供具体的硬件配置信息,但实验是在Google内部的大规模计算设施上完成的。
-
软件配置:
- 实现: 主要通过对大型语言模型进行少样本提示(in-context learning)来实现。
- 依赖库/环境:
- 为HotPotQA和FEVER任务设计了一个简单的维基百科Web API。
- 使用了ALFWorld和WebShop的官方基准环境。
- 代码: 提供了用于GPT-3实验的ReAct提示代码,链接为 https://anonymous.4open.science/r/ReAct-2268/。
A4 实验结果
知识密集型推理任务 (HotpotQA & Fever)
- ReAct vs. Act: 在HotpotQA和Fever两个任务上,ReAct的性能始终优于仅行动的Act基线,这证明了推理对于指导行动的重要性,尤其是在综合最终答案方面(见表1)。
- ReAct vs. CoT: ReAct在Fever上优于CoT(60.9% vs. 56.3%),但在HotpotQA上略逊于CoT(27.4% vs. 29.4%)。分析表明(见表2),CoT的主要失败原因是事实幻觉(占56%的失败案例),而ReAct通过与外部知识库交互,轨迹更加扎实和可信。然而,ReAct的“思考-行动-观察”结构限制了其推理的灵活性,导致了更多的推理错误,例如陷入重复生成相同思考和行动的循环。此外,非信息性搜索是ReAct的另一个主要失败模式(占23%)。
表 2: ReAct和CoT在HotpotQA上的成功和失败模式类型,以及它们在随机选择的人工研究样本中的百分比。 - 结合ReAct与CoT: 结合内部知识(CoT)和外部知识(ReAct)的策略取得了最佳性能。在HotpotQA上,ReAct → CoT-SC 表现最好;在Fever上,CoT-SC → ReAct 表现最好(见表1)。图2显示,这两种组合方法使用的CoT-SC样本远少于单独使用CoT-SC时,就能达到甚至超越其性能。
- 微调结果: 在HotpotQA上,尽管在提示设置下,ReAct在较小的PaLM-8/62B模型上表现不佳,但经过3000个生成轨迹的微调后,ReAct成为所有方法中表现最好的。微调后的PaLM-62B ReAct甚至超越了所有在PaLM-540B上的提示方法(见图3)。这表明微调教会了模型一种更通用的技能(如何行动以获取信息),而不是仅仅记忆事实。
决策任务 (ALFWorld & WebShop)
- ALFWorld: 在ALFWorld上,ReAct的最佳试验取得了71%的平均成功率,显著优于Act(45%)和先前最先进的模仿学习方法BUTLER(37%)(见表3)。即使是ReAct最差的试验(48%)也超过了其他方法的最佳试验。定性分析发现,没有思考的Act模型无法正确分解目标或跟踪环境状态。
- WebShop: 在WebShop上,仅使用单样本提示的ReAct取得了比经过大量数据训练的模仿学习(IL)和模仿+强化学习(IL+RL)方法更好的性能,成功率绝对提升了10%(见表4)。ReAct通过推理能更好地识别与指令相关的产品和选项。
- 内部推理的重要性: 与模仿“内心独白”(IM)风格的ReAct-IM进行的消融实验显示,ReAct在ALFWorld上的成功率远高于ReAct-IM(71% vs. 53%)。这证明了ReAct的灵活、高层次内部推理比仅对外部反馈做简单反应的模式更有效(见表3)。
其他观察
- 获取最新知识: 附录图4的例子表明,ReAct能够通过与网络互动获取最新的信息,纠正数据集中过时的标签,而其他方法则会给出错误答案。
- 人机协同: 附录图5展示了人类可以通过编辑ReAct的思考轨迹来修正其行为,使其完成原本失败的任务,这为新型的人机协作提供了可能。
- 模型通用性: 附录表5中的GPT-3实验结果证实,ReAct的有效性不局限于PaLM模型,在不同的LLM上均表现出色。
A5 结论
本文提出了ReAct,一种简单而有效的方法,用于协同大型语言模型中的推理和行动。通过在多跳问答、事实核查和交互式决策任务等一系列多样化的实验中,我们证明了ReAct不仅能带来卓越的性能,还能生成可解释的决策轨迹。
尽管该方法简单,但也存在局限性。对于具有庞大行动空间的复杂任务,模型需要更多的演示才能学习得好,但这很容易超出上下文学习的输入长度限制。我们在HotpotQA上探索了微调方法并取得了初步的有希望的结果,但要进一步提升性能,理想的方式是使用更多高质量的人类标注数据进行学习。
未来工作展望:通过多任务训练来扩展ReAct,并将其与强化学习等互补范式相结合,可能会产生更强大的智能体,从而进一步释放大型语言模型在更多应用中的潜力。
A6 附录
A.1 GPT-3实验
跨模型性能验证。为了确认ReAct提示的性能在不同的大型语言模型中具有普适性,我们使用GPT-3(text-davinci-002模型,贪婪解码)进行了额外的实验。如表5所示,GPT-3在HotpotQA和ALFWorld上始终优于PaLM-540B,这可能是因为它经过了人类指令遵循的微调。这表明ReAct提示在不同任务和不同大型语言模型上都是有效的。
表 5: 使用PaLM-540B与GPT-3 (text-davinci-002, 贪婪解码)的ReAct提示结果。在HotpotQA上,我们随机抽取了500个验证问题的子集。在ALFWorld上,我们使用了所有134个未见过的验证任务实例,并使用了根据PaLM-540B确定的最佳提示集。
A.2 ReAct在HOTPOTQA上获取最新知识
纠正过时信息。在检查轨迹时,我们发现有时ReAct的答案与数据集标签不一致,因为标签本身可能已经过时。例如,如图4所示,一个问题询问一家酒店的规模,该酒店的规模在HotpotQA构建后有所增加。Standard和CoT方法由于幻觉而给出错误答案,而Act方法尽管可以访问真实世界的网络互动,但由于缺乏指导如何与互联网互动以进行问答的推理而失败。只有ReAct能够从互联网上检索到最新的信息并提供合理的答案。因此,更好地整合推理能力可能有助于最近的互联网增强语言模型【索引23, Webgpt: Browser-assisted question-answering with human feedback, 2021, arXiv preprint; 索引17, Internetaugmented language models through few-shot prompting for open-domain question answering, 2022, arXiv preprint; 索引29, Language models that seek for knowledge: Modular search & generation for dialogue and prompt completion, 2022a, arXiv preprint】进行最新的任务解决。
图 4: 另一个HotpotQA问题示例,其中原始标签已过时。只有ReAct凭借真实世界的网络互动加上推理,才能获得最新的答案。
A.3 在ALFWORLD上的人在环行为修正
通过编辑思考进行干预。我们还探索了与ReAct的人在环交互,允许人类检查并编辑ReAct的推理轨迹。图5显示,通过简单地移除Act 17中的一个幻觉句子并在Act 23中添加一些提示,就可以使ReAct的行为发生巨大变化,以与这些人类的思考编辑对齐,并成功完成任务。从人类的角度来看,解决这样一个任务变得非常容易,从输入数十个动作变为仅编辑几个思考,这开启了新形式的人机协作。我们注意到,对于Act和以前的RL方法来说,这种即时的策略编辑是困难的,因为人类无法改变模型参数,改变几个动作也可能不会改变模型的其余行为。这种范式也超越了像Huang等人【索引14, Inner monologue: Embodied reasoning through planning with language models, 2022b, arXiv preprint】中通过人类对话来更新目标或子目标的方式——虽然编辑ReAct的思考可以做到这些,但它还可以修改模型的内部信念、推理风格或灵活的思考空间所支持的任何东西,以更好地解决任务。
图 5: 在AlfWorld中使用ReAct进行人在环行为修正的示例。(a) ReAct轨迹因一个幻觉性思考(Act 17)而失败。(b) 通过人类简单地编辑两个思考(Act 17, 23),ReAct轨迹产生了期望的推理轨迹和行动并成功。
B 实验细节
B.1 HotpotQA微调细节。对于所有微调,我们使用的批处理大小为64。在PaLM-8B上,我们对ReAct和Act方法微调了4000步,对Standard和CoT方法微调了2000步。在PaLM-62B上,我们对ReAct和Act方法微调了4000步,对Standard和CoT方法微调了1000步。我们发现ReAct和Act方法通常受益于更多的训练步数(和更多的训练数据),而Standard和CoT方法在微调后很快性能就会下降。
B.2 ALFWorld IM风格细节。对于IM风格的消融实验,我们重新标注了与ReAct中使用的相同的专家轨迹,在这些轨迹中加入了密集的外部反馈思考。这些思考将ReAct-IM限制为只思考(1)分解当前目标和(2)需要完成的当前子目标。特别是,ReAct-IM缺乏以下思考:(1)确定一个子目标何时完成,(2)确定下一个子目标应该是什么,(3)引导LLM参考其内部预训练知识来确定物品在环境中的位置。
C 提示示例
本节展示了论文中使用的提示样例,包括HotpotQA、FEVER、WebShop和ALFWorld任务。这些图片详细列出了用于引导模型生成推理和行动轨迹的具体上下文示例。
Hotpot QA 提示 – 接上页
问题
Hotpot QA 提示 – 接上页
FEVER 提示
Fever 提示 – 接上页
WebShop 提示
ALFWorld ReAct-IM 提示示例
D 轨迹示例
本节提供了由ReAct、CoT和Act在FEVER数据集的随机样本上生成的轨迹示例,以及在同一个ALFWorld游戏上,ReAct、Act和ReAct-IM生成的轨迹。这些示例直观地展示了不同方法在解决任务时的行为差异。
示例 2491 (gt: REFUTES)
示例 5908 (gt: SUPPORTS)
示例 1951 (gt: REFUTES)
示例 3208 (gt: REFUTES)
ReAct ALFWorld轨迹
Act ALFWorld轨迹
ReAct-IM ALFWorld轨迹
E 更多分析
本节提供了与第3.3节中给出的成功和错误模式分析相对应的示例。
成功: 假阳性
失败: 推理错误
失败: 搜索错误
失败: 幻觉
失败: 标签歧义
💬 评论讨论
欢迎在这里分享您的想法和见解!