Press "Enter" to skip to content

ReAct,推理和行动用工具增强LLMs!

 

简介

 

Reasoning and Acting的缩写,本文介绍了一种改进LLMs性能的新概念,同时提供更多的可解释性和可理解性。

AGI的目标可能是人类文明要实现的最重要目标之一。想象一下创建一个能够泛化到许多问题的人工智能。对于AGI有许多解释,我们何时才能说我们已经实现了它呢?

过去几十年来,最有希望实现AGI的方法是强化学习路径,特别是DeepMind所能够完成的困难任务,如AlphaGo、AlphaStar等许多突破……

然而,ReAct的绝对成功率比模仿和强化学习方法分别高出34%和10%,而仅仅提供了一个或两个上下文示例。

有了这样的结果(当然,前提是不存在数据泄露,并且我们可以信任论文中提供的评估方法),我们就不能再忽视LLMs在推理和将复杂任务分解为逻辑步骤方面的潜力了。

 

论文的动机

 

本文从LLMs迄今为止在语言理解方面的印象深刻开始,它们已被用于生成CoT(思维链)来解决一些问题,并且还被用于行动和计划生成。

尽管这两者已经分别进行了研究,但本文旨在以交替的方式将推理和行动结合起来,以提高LLM的性能。

这个想法背后的原因是,如果你想想你作为一个人如何执行某个任务。

第一步是你会使用“内部言语”或者以某种方式写下或与自己交流,说“我如何执行任务X?要做任务X,我需要先做步骤1,然后做步骤2等等”

更具体地说,如果你要在厨房里做一道菜,你可以这样ReAct:

“现在一切都切好了,我应该把锅里的水烧热”,以处理异常情况或根据情况调整计划(“我没有盐,所以让我用酱油和胡椒代替”),并且在需要外部信息时意识到(“我怎么准备面团?让我在互联网上搜索一下”)。

你还可以采取行动(打开烹饪书阅读食谱,打开冰箱,检查食材),以支持推理并回答问题(“我现在能做什么菜?”)。

这种推理和行动的结合使得人类可以在以前未见过的情况下学习和完成任务,或者在面临信息不确定性时完成任务。

 

仅推理方法

 

以前的研究证明了LLMs推理的能力,例如,思维链提示证明了该模型可以提出计划来回答算术、常识和符号推理问题。

然而,这里的模型仍然是一个“静态的黑匣子”,因为它使用其内部语言表示来回答这些问题,而这种表示可能并不总是准确或最新的,这导致了事实幻觉(从自己的想象中得出事实)或错误传播(思维链中的一个错误传播到错误答案)。

没有能力采取某种行动并更新其知识,模型是有限的。

 

仅行动方法

 

也有研究使用LLMs根据语言进行行动,这些研究通常接收多模态输入(音频、文本和图像),将它们转换为文本,使用模型生成领域内的行动,然后使用控制器执行这些行动。

如果没有计划一些步骤和对要做的事情进行推理的能力,模型将简单地输出错误的行动。

 

将两者结合为ReAct

 

本文的提议是将上述两种方法结合起来。ReAct以交替的方式提示LLMs生成与任务相关的口头推理痕迹和行动,使该模型能够进行动态推理以创建、维护和调整用于行动的高级计划(推理以行动),同时与外部环境(例如维基百科)进行交互,将额外的信息纳入推理中(行动以推理)。

下图所示:

  ReAct,推理和行动用工具增强LLMs! 四海 第1张

 

动作空间

 

为了提高推理提示的效果,他们设计了一个动作空间,即模型在回答问题时允许使用的三个动作。

这是通过一个维基百科API来实现的,该API提供以下功能:

  • search[entity]:如果存在对应实体的维基页面,则返回该页面的前5个句子,否则建议维基百科搜索引擎的前5个相似实体
  • lookup[string]:返回包含字符串的页面中的下一个句子,模拟浏览器上的Ctrl+F功能
  • finish[answer]:用答案完成当前任务

这里不寻常的是,比上述提到的工具更强大的信息检索工具。

这样做的目标是模拟人类的行为以及人类如何与维基百科进行交互和推理以找到答案。

 

提示

 

除了提供的工具,我们还需要适当地提示LLM,提供推理并正确链接动作。

为此,他们使用了一系列思考方式,将问题分解为(“我需要搜索x,找到y,然后找到z”),从维基百科观测中提取信息(“x始于1844年”,“该段落不提及x”),进行常识推理(“x不是y,所以z必须是…”)或算术推理(“1844 < 1989”),引导搜索重构(“也许我可以搜索/查找x代替”),并综合得出最终答案(“…所以答案是x”)

最终,结果看起来像这样:

  ReAct,推理和行动用工具增强LLMs! 四海 第2张

 

结果

 

评估选择的数据集如下:

HotPotQA:这是一个需要对一到两个维基百科页面进行推理的问答数据集。

FEVER:这是一个事实验证基准,根据维基百科段落是否存在来注释每个声明为“SUPPORTS”、“REFUTES”或“NOT ENOUGH INFO”。

ALFWorld:这是一个包含6种任务类型的基于文本的游戏,代理需要执行这些任务以实现一个高级目标。

例如,“通过导航和与模拟家庭进行文本操作(例如,前往咖啡桌1,拿起纸2,使用台灯1)”来检查台灯下的纸

WebShop:这是一个包含1.18M个现实世界产品和12k个人类指令的在线购物网站环境,具有更多的多样性和复杂性。

它要求代理根据用户的指令购买一个产品。例如,“我正在寻找一张带抽屉的床头柜。它应该有镍镀层,并且价格低于140美元”,代理需要通过网络交互来实现这一目标。

因此,结果显示ReAct始终优于Act,这表明推理部分对增强动作非常重要。

另一方面,ReAct在Fever上优于CoT(60.9 vs. 56.3),在HotpotQA上略逊于CoT(27.4 vs. 29.4)。因此,在FEVER数据集上,通过行动获取更新的知识显示出对于做出正确的SUPPORT或REFUTE决策非常重要。

当在HotpotQA上比较CoT和ReAct以及性能时,发现以下关键观察结果:

  • 幻觉是CoT的一个严重问题,因此无法更新其知识,CoT不得不想象和产生幻觉,这是一个很大的障碍。
  • 同时交错推理、动作和观察步骤可以提高ReAct的扎实性和可信度,但这种结构约束也降低了其在制定推理步骤时的灵活性。ReAct可能会强制LLM进行动作,而仅仅进行CoT有时就足够了。
  • 对于ReAct来说,通过搜索成功检索到有信息的知识至关重要。如果搜索检索到错误的信息,那么基于这个错误信息的任何推理都是错误的,因此获取正确的信息至关重要。

  ReAct,推理和行动用工具增强LLMs! 四海 第3张  

希望这篇文章能帮助你理解这篇论文。你可以在这里查看它:https://arxiv.org/pdf/2210.03629.pdf

ReAct的实现已经存在于以下链接中: 这里 和 这里。

    Mohamed Aziz Belaweid 是SoundCloud的机器学习/数据工程师。他对研究和工程都很感兴趣。他喜欢阅读论文并将它们的创新实际应用。他从零开始训练语言模型,针对特定领域进行信息提取,使用命名实体识别、多模态搜索系统、图像分类和检测。他还在操作方面工作,如模型部署、可复现性、扩展和推断。

  原文。经允许转载。  

Leave a Reply

Your email address will not be published. Required fields are marked *