今天我们介绍一篇论文《REACT: Synergizing Reasoning and Acting in Language Models》,它是来自谷歌研究院和普林斯顿大学的一组研究人员在探索了在语言模型中结合推理和行为的潜力后发布的结果。虽然大型语言模型(LLM)推理(思维链提示)和行动(行动计划生成)的能力已经作为单独的主题进行了研究,但这是第一次将这两种能力组合到一个系统中。所以我觉得这是一篇重要的论文,因为ReAct框架允许虚拟代理使用诸如连接到web和SQL数据库之类的工具,所以可以提供几乎无限的扩展。
人类智能的特点是将以任务为导向的行动和关于下一步行动的推理无缝结合。这种能力使我们能够快速学习新任务并做出可靠的决定,而且可以适应不可预见的情况。ReAct的目标就是在语言模型中复制这种协同作用,使它们能够以交错的方式生成推理步骤和特定于任务的操作。
ReAct提示大型语言模型为给定任务生成口头推理历史步骤和操作。这些提示由少量的上下文示例组成,这些示例指导模型的思考和操作生成。下面的图中给出了一个上下文示例。这些例子引导代理经历一个循环过程:产生一个想法,采取一个行动,然后观察行动的结果。通过结合推理跟踪和操作,ReAct允许模型执行动态推理,这样可以生成高级计划,还可以与外部环境交互以收集额外的信息。
研究人员将ReAct应用于多种语言推理和决策任务,包括问题回答、事实验证、基于文本的游戏和网页导航。结果是非常好的,ReAct在可解释性和可信赖性方面始终优于其他最先进的基线。
在问答和事实验证任务中,ReAct通过与简单的Wikipedia API交互,克服了推理中普遍存在的幻觉和错误传播问题。它生成了类似人类的解决任务的步骤,比没有推理痕迹的基线更容易解释。在交互式决策基准中,ReAct的表现明显优于模仿和强化学习方法,即使只有一两个上下文示例。
虽然推理、行动和观察步骤交织在一起提高了ReAct的接地性和可信度,但这种结构也约束降低了其制定推理步骤的灵活性,导致在某些任务上的推理错误率高于思维链提示。
研究人员还进行了消融实验,了解在不同任务中推理和行动的重要性。他们发现,ReAct的内部推理和外部行为的结合始终优于专注于推理或单独行动的基线。这突出了整合这两个过程的价值,以获得更有效的决策。
虽然ReAct已经显示出很好的结果,但仍有改进的空间。研究人员建议扩大ReAct的规模,以训练和操作更多的任务,并将其与强化学习等互补范例结合起来。此外还可以使用更多的人工注释数据对模型进行微调可以进一步提高它们的性能。
ReAct在开发更智能、更通用的AI系统方面向前迈进了一步,并且它也支持Langchain库中一些非常有用的代理功能。通过在语言模型中结合推理和行为,已经证明了在一系列任务中的性能提高,以及增强的可解释性和可信度。随着人工智能的不断发展,推理和行为的整合将在创造更有能力和适应性的人工智能系统方面发挥关键作用。