论文翻译 | 反应:在语言模型中协同推理与行动 REACT: SYNERGIZING REASONING AND ACTING IN LANGUAGE MODELS

摘要

        虽然大型语言模型(LLM)在语言理解和交互式决策方面的表现令人印象深刻,但它们的推理能力(如思维链提示)和行动能力(如行动计划生成)主要是作为单独的主题进行研究的。在本文中,我们探索了LLM的使用,以交错的方式生成推理跟踪和任务特定的操作,允许两者之间更大的协同作用:推理跟踪帮助模型诱导、跟踪和更新操作计划以及处理异常,而操作允许它与外部来源(如知识库或环境)交互并收集额外的信息。我们将我们的方法(称为ReAct)应用于各种语言和决策任务,并在最先进的基线上证明了它的有效性,此外还提高了人类的可解释性和可信度。具体来说,在问答(HotpotQA)和事实验证(Fever)上,ReAct通过与简单的Wikipedia API交互,克服了思维链推理中普遍存在的幻觉和错误传播问题,并生成了比没有推理痕迹的基线更可解释的类似人类的任务解决轨迹。
        此外,在两个交互式决策基准(ALFWorld和WebShop)上,ReAct在只有一个或两个上下文示例提示的情况下,其绝对成功率分别超过模仿和强化学习方法的34%和10%。

1 引言

        人类智能的一个独特特征是能够将任务导向的行为与言语推理(或内部言语,Alderson-Day & Fernyhough, 2015)无缝结合,这在理论上在人类认知中发挥重要作用,以实现自我调节或策略化(Vygotsky, 1987;仅有1965;Fernyhough, 2010)和维持工作记忆(Baddeley, 1992)。以在厨房烹饪一道菜为例。在任何两个具体行动之间,我们可以用语言进行推理,以便跟踪进度(“现在所有的东西都切好了,我应该把一壶水加热”),根据情况处理异常或调整计划(“我没有盐,所以让我用酱油和胡椒代替”),并意识到何时需要外部信息(“我如何准备面团?让我在网上搜索一下”)。我们也可以采取行动(打开烹饪书阅读食谱,打开冰箱,检查配料)来支持推理和回答问题(“我现在可以做什么菜?”)。“行动”和“推理”之间的这种紧密协同作用使人类能够快速学习新任务,并执行强有力的决策或推理,即使是在以前看不见的情况下或面临信息不确定的情况下。

        最近的结果暗示了在自主系统中结合言语推理与互动决策的可能性。一方面,适当提示的大型语言模型(LLMs)已经展示了涌现出的能力,能够执行多个推理步骤的跟踪,以从算术、常识和符号推理任务中的问题推导出答案(Wei等人,2022年)。然而,这种“思维链”推理是一个静态的黑箱,因为模型使用自己的内部表示来生成想法,并且没有与现实世界相联系,这限制了它进行反应性推理或更新知识的能力。这可能导致诸如事实虚构和推理过程中的错误传播等问题(如图1(1b)所示)。另一方面,最近的工作探索了在交互式环境中使用预训练的语言模型进行规划和行动(Ahn等人,2022年;Nakano等人,2021年;Yao等人,2020年;Huang等人,2022a年),重点是通过对语言先验的预测来执行动作。这些方法通常将多模态观察转换为文本,使用语言模型生成特定领域的动作或计划,然后使用控制器来选择或执行它们。然而,它们没有使用语言模型来抽象地推理高级目标或维持工作记忆以支持行动,除了Huang等人(2022b)进行了有限的言语推理来重申关于当前状态的空间事实。除了这些简单的具身体验任务与几个块进行互动之外,还没有研究如何以协同的方式结合推理和行动来解决问题,以及这样的结合是否能够与单独推理或行动相比带来系统性的好处。

图1:(1)4种提示方法的比较,(a) Standard, (b) Chain-of-thought (CoT, Reason Only), (c) Act- Only, (d) ReAct (Reason+Act),解决一个HotpotQA (Yang et al, 2018)问题。(2)比较(a) Act-only和(b) ReAct提示解决《AlfWorld》(Shridhar et al, 2020b)游戏。在这两个领域中,我们省略了提示中的上下文示例,只显示了由模型(行为,思想)和环境(Obs)生成的任务解决轨迹。

        在这项工作中,我们提出了ReAct,这是一种将推理和行为与语言模型相结合的通用范式,用于解决各种语言推理和决策任务(图1)。ReAct提示LLM以交错的方式生成口头推理痕迹和与任务相关的动作,这允许模型执行动态推理以创建、维护和调整高级行动计划(行动理由)。同时也与外部环境(如维基百科)互动,将额外的信息纳入推理(从行动到推理)。

        我们在四个不同的基准上对ReAct和最先进的基线进行了实证评估:问答(HotPotQA, Yang等人,2018),事实验证(Fever, Thorne等人,2018),基于文本的游戏(ALFWorld, Shridhar等人,2020b)和网页导航(WebShop, Yao等人,2022)。对于HotPotQA和Fever,通过访问模型可以与之交互的维基百科API, ReAct优于普通的动作生成模型,同时与思维链推理(CoT)竞争(Wei et al, 2022)。总的来说,最好的方法是ReAct和CoT的结合,它允许在推理过程中使用内部知识和外部获得的信息。在ALFWorld和WebShop上,两次甚至一次的ReAct提示能够胜过使用103 ~ 105个任务实例训练的模仿或强化学习方法,成功率分别提高34%和10%。我们还展示了稀疏、通用推理在决策制定中的重要性,展示了相对于只有行动的受控基线的一致优势。除了一般适用性和性能提升之外,推理和行为的结合还有助于模型的可解释性、可信度和所有领域的可诊断性,因为人类可以很容易地从模型的内部知识和外部环境中区分信息,以及检查推理痕迹以了解模型行为的决策基础。

        总而言之,我们的主要贡献如下:(1)我们引入了ReAct,这是一种新的基于提示的范式,用于在语言模型中协同推理和行为,以解决一般任务;(2)我们在不同的基准测试中进行了广泛的实验,以展示ReAct在几次学习设置中的优势,而不是先前单独执行推理或动作生成的方法;(3)我们提出了系统的消融和分析,以理解在推理任务中行动的重要性,以及在互动任务中推理的重要性;(4)我们分析了提示设置下ReAct的局限性(即对推理和行为行为的有限支持),并进行了初步的微调实验,显示了ReAct在额外训练数据下的改进潜力。扩展ReAct以训练和操作更多的任务,并将其与强化学习等互补范例相结合,可以进一步释放大型语言模型的潜力。

2 REACT:协同推理+交流

       考虑一个代理与解决任务的环境交互的一般设置。在时间步长t,代理从环境接收观测值o_{t}\epsilon O,并按照某个策略\pi (a_{t}|c_{t})采取行动a_{t}\epsilon A,其中c_{t} = (o_{1},a_{1},...,o_{t-1},a_{t-1},o_{t})是代理的上下文。当映射c_{t} \mapsto a_{t}高度隐含且需要大量计算时,学习策略是具有挑战性的。例如,如图1(1c)所示的代理无法生成正确的最终动作(动作4)来完成QA任务,因为它需要对轨迹上下文(问题,动作1-3,观察1-3)进行复杂推理。同样,如图1(2a)所示的代理未能从上下文理解水槽1不包含胡椒瓶1,因此不断产生幻觉行为。

        ReAct的想法很简单:我们将代理的操作空间扩展到\hat{A} = A\cup L,其中L是语言空间。在语言空间中的一个动作\hat{a_{t}} ∈ 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(Chowdhery等人,2022年)1,通过少量示例提示生成特定领域的动作和自由形式的语言思想以解决问题(图1(1d),(2b))。每个上下文示例是人类为解决任务实例而采取的动作、思想和环境观察的轨迹(见附录C)。对于推理至关重要的任务(图1(1)),我们交替生成思想和动作,以便任务解决轨迹包含多个思想-动作-观察步骤。相比之下,对于可能涉及大量动作的决策任务(图1(2)),思想只需要在轨迹的最相关位置稀疏出现,因此我们让语言模型自行决定思想和动作的异步发生。

        由于决策和推理能力集成到一个大型语言模型中,ReAct具有几个独特的功能:a)直观且易于设计:设计ReAct提示非常简单,就像人类注释者只需在他们采取的行动上用语言键入他们的想法。没有特别的格式选择,思想设计,或例子选择在本文中使用。我们将在第3节和第4节中详细介绍每个任务的提示符设计。B)通用性和灵活性:由于灵活的思维空间和思维-动作发生格式,ReAct适用于具有不同动作空间和推理需求的多种任务,包括但不限于QA、事实验证、文本游戏、网页导航等。C)高性能和鲁棒性:ReAct在仅从一到六个上下文示例中学习时,对新任务实例显示出强大的泛化,始终优于仅在不同领域进行推理或行动的基线。我们还将在第3节中展示启用调优时的其他好处,并在第4节中展示ReAct的性能对提示选择的健壮性。D)与人类一致和可控:ReAct承诺一个可解释的顺序决策和推理过程,人类可以很容易地检查推理和事实的正确性。此外,人类还可以通过思想编辑在运行中控制或纠正代理行为,如第4节中的图5所示。

3 知识密集型推理任务

        我们从知识密集型推理任务开始,比如多跳问答和事实验证。如图1(1d)所示,通过与Wikipedia API交互,ReAct能够检索信息来支持推理,同时也可以使用推理来确定下一步要检索的内容,从而展示了推理和行为的协同作用。

3.1 设置

        域。我们考虑了两个挑战知识检索和推理的数据集:(1)HotPotQA (Yang等人,2018),这是一个多跳问答基准,需要对两个或多个维基百科段落进行推理;(2)FEVER (Thorne等人,2018),这是一个事实验证基准,其中每个声明都标注了SUPPORTS、REFUTES或NOT ENOUGH INFO,基于是否存在一个维基百科段落来验证该声明。在这项工作中,我们为这两个任务设置了一个仅限问题的设置,其中模型只接收问题/声明作为输入,而不能访问支持段落,并且必须依赖其内部知识或通过与外部环境交互来检索知识来支持推理。

        动作空间。我们设计了一个简单的Wikipedia web API,其中包含三种类型的操作来支持交互式信息检索:(1)search[entity],如果存在对应的实体wiki页面,则返回前5个句子,否则从Wikipedia搜索引擎中建议前5个类似的实体;(2)lookup[string],将返回包含字符串的页面中的下一个句子,模拟浏览器上的Ctrl+F功能。(3) finish[answer],用answer完成当前任务。我们注意到,这个动作空间大多只能根据确切的段落名称检索段落的一小部分,这明显弱于目前的词汇检索器或神经检索器。目的是模拟人类如何与维基百科互动,并迫使模型通过语言的明确推理进行检索。

3.2 方法

        ReAct Prompting。对于HotpotQA和Fever,我们从训练集中随机选择了6个和3个案例,并手动编写了ReAct格式的轨迹,用作提示中的少量示例。与图1(d)类似,每个轨迹包含多个思想-动作-观察步骤(即密集思想),其中自由形式的思维用于各种目的。具体来说,我们使用了多种思想组合,包括分解问题(“我需要搜索x,找到y,然后找到z”),从维基百科观察中提取信息(“x始于1844年”,“段落没有提到x”),进行常识性或算术推理(“x不是y,所以z必须是...”, “1844 < 1989”),指导搜索改写(“也许我可以搜索/查找x”),以及综合最终答案(“...所以答案是x”)。更多细节请参见附录C。

        基线  我们系统地删除ReAct轨迹以构建多个基线的提示(格式如图1(1a-1c)):(a)标准提示(Standard),它删除ReAct轨迹中的所有想法、动作和观察。(b)思维链提示(CoT) (Wei et al ., 2022),它消除了行动和观察,并作为唯一的推理基线。我们还建立了一个自一致性基线(CoT- sc) (Wang等人,2022a;b),在推理过程中采样21个解码温度为0.7的CoT轨迹,并采用多数答案,发现这可以持续提高CoT的性能。(c)仅行动提示(Act),它删除了ReAct轨迹中的想法,大致类似于WebGPT (Nakano等人,2021)与互联网交互以回答问题的方式,尽管它在不同的任务和动作空间上运行,并使用模仿和强化学习而不是提示。

        结合内部和外部知识 如第3.3节将详细说明的,我们观察到ReAct展示的问题解决过程更加事实化和具体,而CoT在构建推理结构方面更为精确,但容易受到虚构事实或想法的影响。因此,我们提议将ReAct和CoT-SC相结合,并让模型根据以下启发式规则决定何时切换到另一种方法:A)ReAct\rightarrowCoT-SC:当ReAct在给定步骤内未能返回答案时,回退到CoT-SC。我们为HotpotQA和FEVER分别设置了7步和5步,因为我们发现更多的步骤将不会提高ReAct的性能。 B)CoT-SC\rightarrowReAct:当n个CoT-SC样本中的大多数答案出现少于n/2次时(即内部知识可能不足以自信地支持任务),回退到ReAct。

        微调 由于大规模手动注释推理痕迹和动作的挑战,我们考虑了一种类似于Zelikman等人(2022)的自引导方法,使用ReAct生成的3,000个具有正确答案的轨迹(也用于其他基线)来微调较小的语言模型(PaLM-8/62B),以解码基于输入问题/声明的轨迹(所有思想、动作、观察)。详情见附录B.1。

3.3 结果与观察

        表1显示了使用PaLM540B作为基本模型使用不同提示方法的HotpotQA和Fever结果。我们注意到ReAct在这两项任务上都优于Act,这证明了推理对指导行动的价值,特别是在综合最终答案方面,如图1 (1c-d)所示。微调结果也证实了推理痕迹对更明智的行为的好处。

表1:PaLM-540B对HotpotQA和Fever的提示结果。

        ReAct vs. CoT 另一方面,ReAct在Fever上的表现优于CoT(60.9比56.3),略微落后于HotpotQA上的CoT(27.4比29.4)。对支持/反驳的狂热主张可能只有轻微的差异(见附录D.1),因此采取行动获取准确和最新的知识是至关重要的。为了更好地理解HotpotQA上ReAct和CoT的行为差异,我们分别从ReAct和CoT中随机抽取50个正确和错误答案(由EM判断)的轨迹(总共200个例子),并在表2中手动标记其成功和失败模式。以下是一些重要意见:

        A)幻觉是CoT的一个严重问题,其成功模式的假阳性率远高于ReAct (14% vs. 6%),是其主要的失败模式(56%)。相比之下,由于外部知识库的访问,ReActis的问题解决轨迹更有基础、事实驱动和值得信赖。

        B)推理、行动和观察步骤交错在提高ReAct的接地性和可信度的同时,这种结构约束也降低了其制定推理步骤的灵活性,导致推理错误率高于CoT。我们注意到有一种特定于ReAct的常见错误模式,在这种模式中,模型重复地生成先前的想法和操作,我们将其归类为“推理错误”的一部分,因为模型无法推理出下一步应该采取什么适当的操作并跳出循环。

        C)对于ReAct来说,通过搜索成功地检索信息知识是至关重要的。非信息性搜索占错误案例的23%,它使模型推理细节化,使其很难恢复和重新形成思想。这可能是事实性和灵活性之间的预期权衡,这激发了我们提出的结合两种方法的策略。

        我们在附录E.1中提供了每种成功和失败模式的示例。我们还发现一些HotpotQA问题可能包含过时的答案标签,例如参见图4。

        ReAct + CoT-SC对LLM的提示效果最好。如表1所示,HotpotQA和Fever的最佳提示方法是ReAct \rightarrow CoT-SC 和 CoT-SC \rightarrow ReAct分别作出反应。

        此外,图2显示了不同方法在使用的CoT-SC样本数量方面的表现。虽然两种ReAct + CoT-SC方法在每个任务中都是有利的,但它们在不同数量的样本中都显著且始终优于CoT-SC,仅使用3-5个样本就可以在21个样本中达到CoT-SC性能。这些结果表明模型内部知识和外部知识的合理结合对于推理任务的价值。

图2:PaLM-540B提示结果与使用的CoT-SC样本数量有关。

        图3显示了HotpotQA上提示/微调四种方法(Standard、CoT、Act、ReAct)的缩放效果。对于PaLM-8/62B,提示ReAct在四种方法中表现最差,因为很难从上下文示例中学习推理和行为。然而,当仅使用3,000个示例进行微调时,ReAct成为四种方法中最好的方法,其中经过PaLM-8B微调的ReAct优于所有PaLM-62B提示方法,而经过PaLM-62B微调的ReAct优于所有540B提示方法。相比之下,对于PaLM8/62B来说,调优Standard或CoT比调优ReAct或Act要差得多,因为前者本质上是教模型记忆(可能是幻觉)知识事实,而后者则教模型如何(推理和)行动以从Wikipedia获取信息,这是一种更通用的知识推理技能。由于所有提示方法与特定于领域的最先进的方法(表1)相差甚远,我们认为使用更多人工编写的数据进行调优可能是释放ReAct功能的更好方法。

图3:使用ReAct(我们的)和基线在HotPotQA上进行提示和微调的缩放结果

4 决策任务

        我们还在两个基于语言的交互式决策任务(ALFWorld和WebShop)上测试了ReAct,这两个任务都具有复杂的环境,需要代理以稀疏的奖励进行长期行动,从而保证需要推理来有效地行动和探索。

        ALFWorld  ALFWorld(Shridhar等人,2020b)(图1(2))是一个合成的基础文本游戏,旨在与具身ALFRED基准(Shridhar等人,2020a)保持一致。它包括6种类型的任务,其中代理需要通过文本操作(例如,去咖啡桌1,拿纸2,使用台灯1)导航并与模拟家庭互动来实现高级目标(例如,检查台灯下的纸张)。一个任务实例可能包含超过50个位置,并且需要专家策略超过50步来解决,因此挑战代理进行计划和跟踪子目标,以及系统地探索(例如,逐一检查所有桌子以寻找台灯)。特别是,ALFWorld内置的一个挑战是需要确定常见家用物品的可能位置(例如,台灯可能放在桌子、架子上或梳妆台上),这使得这个环境非常适合LLMs利用其预训练的常识知识。为了提示ReAct,我们从每个任务类型的训练集中随机标注了三条轨迹,每条轨迹都包括了稀疏的思想,这些思想(1)分解目标,(2)跟踪子目标完成,(3)确定下一个子目标,以及(4)通过常识推理在哪里找到对象以及如何处理它。我们在附录C.4中展示了用于ALFWorld的提示。按照Shridhar等人(2020b)的方法,我们在134个未见评估游戏中进行任务特定的评估。为了提高鲁棒性,我们通过从我们标注的3个轨迹中每个任务类型的2个标注轨迹的每种排列构造了6个提示。Act提示使用相同的轨迹构建,但不包括思想——由于任务实例是从训练集中随机选择的,它既不偏向ReAct也不偏向Act,并提供了一个公平且受控的比较,以测试稀疏思想的重要性。对于基线,我们使用BUTLER(Shridhar等人,2020b),这是一个模仿学习代理,每个任务类型训练了105条专家轨迹。

        WebShop ReAct能否与噪声较大的现实世界语言环境互动,以应用于实际应用?我们研究了WebShop(Yao等人,2022年),这是一个最近提出的在线购物网站环境,拥有118万种真实世界产品和12,000条人类指令。与ALFWorld不同,WebShop包含了大量结构化和非结构化的文本(例如,从亚马逊抓取的产品标题、描述和选项),并要求代理通过网页互动(例如,搜索“床头柜抽屉”,选择“颜色:现代镍白”或“返回搜索”等按钮)根据用户指令购买产品(例如,“我正在寻找一个带抽屉的床头柜。它应该有镍质表面,价格低于140美元”)。这个任务通过平均分数(选择的产品的属性覆盖所需属性的平均百分比,跨所有剧集计算)和成功率(选择的 产品满足所有要求的剧集百分比)在500个测试指令上进行评估。我们制定了Act提示,包括搜索、选择产品、选择选项和购买的动作,而ReAct提示除此之外还包括推理,以确定探索什么、何时购买以及哪些产品选项与指令相关。示例提示见表6,模型预测见附录中的表10。我们将其与一种模仿学习(IL)方法进行比较,该方法使用了1,012条人类标注的轨迹进行训练,以及一种模仿+强化学习(IL + RL)方法,该方法额外使用了10,587条训练指令进行训练。

        结果 ReAct在ALFWorld(表3)和Webshop(表4)上都优于Act。在ALFWorld上,最好的ReAct试验达到了71%的平均成功率,显著优于最好的Act(45%)和BUTLER(37%)试验。事实上,即使是最差的ReAct试验(48%)也击败了这两种方法的最佳试验。此外,ReAct相对于Act的优势在六个受控试验中是一致的,相对性能提升从33%到90%不等,平均为62%。从质量上讲,我们发现,如果没有思想,Act无法正确地将目标分解为更小的子目标,或者失去对环境当前状态的了解。比较ReAct和Act的示例轨迹可以在附录D.2.1和附录D.2.2中找到。
        在Webshop上,一次性的Act提示已经与IL和IL+RL方法的表现相当。通过额外的稀疏推理,ReAct实现了显著更好的性能,比先前的最佳成功率提高了绝对的10%。通过检查示例,我们发现ReAct通过推理来弥合噪声观察和行动之间的差距,更有可能识别与指令相关的产品和选项(例如,“对于‘节省空间的客厅ottoman长凳’,该商品有‘39x18x18英寸’和‘蓝色’的选项,似乎值得购买。”)。然而,现有方法在性能上仍然远远落后于专家人类(表4),后者进行了显著更多的产品探索和查询改写,这对基于提示的方法来说仍然具有挑战性。

表3:AlfWorld任务特定的成功率(%)。BUTLER和BUTLER的结果来自Shridhar等人(2020b)的表4。所有的方法都使用贪婪解码,除了BUTLER使用波束搜索。

表4:Webshop的评分和成功率(SR)。IL/IL+RL取自Yao等人(2022)。

        据我们所知,ReAct是第一个将LLM应用于闭环系统内的交互环境的推理和行动相结合的演示。或许最接近的先前研究是Huang等人(2022b)的《内心独白》(Inner Monologue, IM),在该研究中,一个具身主体的行动是由同名的“内心独白”驱动的。然而,IM的“内心独白”仅限于对环境状态的观察,以及agent需要完成什么才能满足目标。相比之下,ReAct中用于决策的推理轨迹是灵活和稀疏的,允许为不同的任务诱导不同的推理类型(参见第2节)。

        为了证明ReAct和IM之间的差异,并强调内部推理与对外部反馈的简单反应的重要性,我们使用由类似IM的密集外部反馈组成的思维模式进行了消融实验。从表3中可以看出,ReAct大大优于IM风格的提示(ReAct- im)(总成功率为71比53),在6个任务中的5个任务上具有一致的优势。定性地说,我们观察到,由于缺乏高层次的目标分解,ReAct-IM经常在确定子目标何时完成,或者下一个子目标应该是什么的时候犯错误。此外,由于缺乏常见性推理,许多ReAct-IM轨迹难以确定一个项目在ALFWorld环境中的可能位置。

        这两个缺点都可以在ReAct范例中解决。关于ReAct-IM的更多细节见附录B.2。在附录C.4中可以找到一个ReAct-IM的示例提示符,在附录D.2.3中可以找到一个示例轨迹。

5 相关工作

        用于推理的语言模型 也许最著名的使用LLMs进行推理的工作是Chain-of-Thought (CoT)(Wei等人,2022年),它揭示了LLMs为解决问题制定自己的“思考过程”的能力。此后,已经进行了几项后续工作,包括用于解决复杂任务的最少到最多提示(Zhou等人,2022年),零样本CoT(Kojima等人,2022年),以及具有自我一致性的推理(Wang等人,2022a年)。最近,Madaan & Yazdanbakhsh(2022年)系统地研究了CoT的公式化和结构,并观察到符号、模式和文本的存在对CoT的有效性至关重要。其他工作也已经扩展到更复杂的推理架构,超越了简单的提示。例如,Selection-Inference(Creswell等人,2022年)将推理过程分为“选择”和“推理”两个步骤。STaR(Zelikman等人,2022年)通过模型自身生成的正确理由来引导推理过程。Faithful reasoning(Creswell & Shanahan,2022年)将多步骤推理分解为三个步骤,每个步骤由一个专门的LM分别执行。类似的方法如Scratchpad(Nye等人,2021年),它通过中间计算步骤对LM进行微调,也显示出在多步骤计算问题上的改进。与这些方法相比,ReAct不仅仅执行孤立、固定的推理,而是将模型动作及其相应的观察整合成一个连贯的输入流,使模型能够更准确地推理并解决超出推理范围的任务(例如,互动决策制定)。

        用于决策制定的语言模型 LLMs的强大能力使它们能够执行超出语言生成的任务,利用LLMs作为决策制定的政策模型越来越受欢迎,特别是在交互式环境中。WebGPT(Nakano等人,2021年)使用一个语言模型与网络浏览器互动,浏览网页,并从ELI5(Fan等人,2019年)推断出复杂问题的答案。与ReAct相比,WebGPT没有明确地模拟思考和推理过程,而是依赖于昂贵的人工反馈进行强化学习。在对话建模中,像BlenderBot(Shuster等人,2022b年)和Sparrow(Glaese等人,2022年)这样的聊天机器人,以及像SimpleTOD(Hosseini-Asl等人,2020年)这样的面向任务的对话系统,也训练LLMs来决定API调用。与ReAct不同,它们也没有明确考虑推理过程,并且依赖于昂贵的数据集和人工反馈收集来进行策略学习。相比之下,ReAct以更便宜的方式学习策略,因为决策制定过程只需要对推理过程的语言描述。

        LLMs也越来越多地被应用于交互式和具身环境中进行规划和决策制定。在这方面,与ReAct最相关的工作可能是SayCan(Ahn等人,2022年)和Inner Monologue(Huang等人,2022b年),它们使用LLMs进行机器人动作规划和决策制定。在SayCan中,LLMs被提示直接预测机器人可以采取的可能动作,然后由一个基于视觉环境的可用性模型重新排名以进行最终预测。Inner Monologue通过添加名为“内心独白”的“内心独白”,进一步进行了改进,这被实现为来自环境的注入反馈。据我们所知,Inner Monologue是第一个展示此类闭环系统的作品,ReAct就是在此基础上建立的。然而,我们认为Inner Monologue并不真正包含内心思考——这在第4节中有详细说明。我们还指出,在其他情况下,利用语言作为交互式决策制定过程中的语义丰富的输入已被证明是成功的(Abramson等人,2020年;Karamcheti等人,2021年;Huang等人,2022a年;Li等人,2022年)。随着LLMs的发展,语言作为一种基本认知机制,在交互和决策制定中将发挥关键作用,这一点变得越来越明显。此外,LLMs的进步也激发了像Reed等人(2022年)这样多才多艺和通用的代理的发展。

6 结论

        我们提出了ReAct——一种简单而有效的方法,用于在大型语言模型中协同推理和行动。通过一系列多跳问答、事实核查和交互式决策制定任务的实验,我们表明ReAct能够产生优越的性能和可解释的决策痕迹。尽管我们的方法简单,但复杂任务和大规模行动空间需要更多的示例来学习,这不幸地很容易超出上下文学习中的输入长度限制。我们在HotpotQA上探索了微调方法,并取得了初步的积极结果,但学习更多高质量的人类注释将是进一步提高性能的愿望。通过多任务训练扩大ReAct规模,并将其与强化学习等互补范式相结合,可以产生更强大的代理,进一步释放LLM在更多应用中的潜力。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值