ReAct论文阅读笔记总结

news2025/3/13 16:29:36

ReAct:Synergizing Reasoning and Acting in Language Models

背景

最近的研究结果暗示了在自主系统中结合语言推理与交互决策的可能性。

  • 一方面,经过适当Prompt的大型语言模型(LLMs)已经展示了在算术、常识和符号推理任务中通过多步推理推导问题答案的新兴能力。然而,这种“思维链(CoT)”推理是一个静态的黑箱,因为模型依赖其内部表示生成思维,并未与外部世界建立联系,这限制了其进行反应性推理或更新知识的能力。这可能导致诸如事实幻觉和推理过程中的错误传播等问题
  • 另一方面,近期的研究探索了利用预训练语言模型在交互环境中进行规划和行动的可能性 。然而,这些方法并未利用语言模型进行高层次目标的抽象推理,也未维护一个工作记忆以支持行动。

在这里插入图片描述

上图表示4种提示方法的比较。(1a)表示普通方法,(1b)表示CoT,即只有Reason。(1c)表示仅行动,(1d)表示ReACT,即Reason+Act
在这里插入图片描述

上图表示基于AlfWorld解决方案的Act和ReAct方法比较。(2a)表示只有行动,(2b)表示ReAct

研究目的、动机

如何以协同的方式结合推理与行动,以及这种结合是否能带来相较于单独推理或行动的系统性优势。

成果

  • 作者提出了ReAct,这是一种将推理和行动与语言模型相结合的一般范式,用于解决不同的语言推理和决策务。 提示LLMs以交错方式生成与任务相关的语言推理跟踪和动作,这允许模型执行动态推理以创建、维护和调整高级行动计划(Reason to Act),同时还与外部环境(例如维基百科)交互以将其他信息纳入推理(Act to Reason)。
  • 在问答、事实验证、基于文本的游戏和网页导航进行评测,证明了提出方法的有效性,与精心设计的CoT相竞争。总体上最好的方法是ReAct和CoT的组合,允许在推理过程中同时使用内部知识和外部获得的信息。

收获

  • ReAct思想简述:
    思考:涉及对下一个行动进行推理。在这一步需要评估当前情况并考虑可能的行动方案。
    行动:基于思考的结果,决定采取什么行动。
    观察:执行行动后,需要观察并收集反馈。对行动结果进行评估,它可能影响或改变下一轮思考的方向。
  While(目标未完成):
  	Thought;
  	Action;
  	Observation
  • 对于ReAct来说,采取行动检索准确和最新的知识至关重要
  • ReAct+CoT结合效果会更好一些
  • 存在的问题。尽管ReAct可以提高模型的可信度,但这种结构约束也降低了其制定推理步骤的灵活性,导致推理错误率高于 CoT。 且ReAct具有一种常见错误模式,会重复生成之前的想法和行动,作者将其归类为 “推理错误” 的一部分,因为模型未能推理出正确的下一步行动并跳出循环。
  • 此外作者对这四种方法在Prompt和微调(基于3000样本点对模型做了微调)上进行了测试,表明ReAct更适合微调后的场景。可能是前者本质上是教模型记住(可能是幻觉的)知识事实,而后者教模型如何(推理和)行动以访问维基百科的信息,这是一种更通用的知识推理技能。
    在这里插入图片描述

举例四种方式的Prompt案例

  • normal
  Question:  哪位演员出演了《肖申克的救赎》,并且还出演了另一部由弗兰克·德拉邦特执导的电影?
  Answer: 摩根·弗里曼
  Question:《肖申克的救赎》的导演是谁?
  Answer:弗兰克·德拉邦特
  Question:摩根·弗里曼在《绿色奇迹》中扮演了什么角色?
  Answer:他饰演了角色“艾利斯·波伊德·瑞德”。
  Question:《绿色奇迹》是哪一年上映的?
  Answer: 1999
  • Act
      Question: 哪位演员出演了《肖申克的救赎》,并且还出演了另一部由弗兰克·德拉邦特执导的电影?
      Action 1:查询关于《肖申克的救赎》的文档。
      Observation 1: 《肖申克的救赎》是一部1994年的电影,由弗兰克·德拉邦特执导,主演包括蒂姆·罗宾斯和摩根·弗里曼。
      Action 2:查询弗兰克·德拉邦特的其他电影。
      Observation 2: 弗兰克·德拉邦特还执导了《绿色奇迹》,这部电影于1999年上映,主演包括汤姆·汉克斯和摩根·弗里曼。
      Action 3:确认摩根·弗里曼是否同时出演了这两部电影。
      Observation 3:是的,摩根·弗里曼在这两部电影中都有出演。
      Final Answer:摩根·弗里曼
  • CoT
      Question:哪位演员出演了《肖申克的救赎》,并且还出演了另一部由弗兰克·德拉邦特执导的电影?
      Thought:首先,我需要找到《肖申克的救赎》的主演名单,并确认导演是弗兰克·德拉邦特。
      Answer: 主演包括蒂姆·罗宾斯和摩根·弗里曼,导演是弗兰克·德拉邦特。
      Question:弗兰克·德拉邦特还执导了哪些电影?
      Thought:我需要查找弗兰克·德拉邦特的其他作品,并检查是否有相同的演员出演。
      Answer:弗兰克·德拉邦特还执导了《绿色奇迹》,主演包括汤姆·汉克斯和摩根·弗里曼。
      Question:是否有演员同时出演了《肖申克的救赎》和《绿色奇迹》?
      Thought:根据以上信息,摩根·弗里曼在这两部电影中都有出演。
      Answer: 摩根·弗里曼
  • ReAct
      Question:哪位演员出演了《肖申克的救赎》,并且还出演了另一部由弗兰克·德拉邦特执导的电影?
      Thought 1:我需要先找到《肖申克的救赎》的主演名单和导演信息。
      Action 1:查询关于《肖申克的救赎》的文档。
      Observation 1:《肖申克的救赎》是一部1994年的电影,由弗兰克·德拉邦特执导,主演包括蒂姆·罗宾斯和摩根·弗里曼。
      Thought 2:接下来,我需要查找弗兰克·德拉邦特的其他电影,并确认是否有相同的演员出演。
      Action 2:查询弗兰克·德拉邦特的其他电影。
      Observation 2:弗兰克·德拉邦特还执导了《绿色奇迹》,这部电影于1999年上映,主演包括汤姆·汉克斯和摩根·弗里曼。
      Thought 3 : 现在我可以确认,摩根·弗里曼同时出演了《肖申克的救赎》和《绿色奇迹》。
      Final Answer : 摩根·弗里曼

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2311477.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

InternalError: too much recursion

🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》、《前端求职突破计划》 🍚 蓝桥云课签约作者、…

在WSL2-Ubuntu中安装CUDA12.8、cuDNN、Anaconda、Pytorch并验证安装

#记录工作 提示:整个过程最好先开启系统代理,也可以用镜像源,确保有官方发布的最新特性和官方库的完整和兼容性支持。 期间下载会特别慢,需要在系统上先开启代理,然后WSL设置里打开网络模式“Mirrored”,以设置WSL自动…

LLM论文笔记 19: On Limitations of the Transformer Architecture

Arxiv日期:2024.2.26机构:Columbia University / Google 关键词 Transformer架构幻觉问题数学谜题 核心结论 1. Transformer 无法可靠地计算函数组合问题 2. Transformer 的计算能力受限于信息瓶颈 3. CoT 可以减少 Transformer 计算错误的概率&#x…

基于51单片机的智能水箱控制系统proteus仿真

地址:https://pan.baidu.com/s/1zgG90VB5TEA05O2ZkKC3CA 提取码:1234 仿真图: 芯片/模块的特点: AT89C52/AT89C51简介: AT89C52/AT89C51是一款经典的8位单片机,是意法半导体(STMicroelectroni…

虚拟系统实验

实验拓扑 启动虚拟系统 [FW]vsys enable 配置资源类 先查看 配置 创建虚拟系统 [USG6000V1]vsys name vsysa 绑定资源类 [USG6000V1-vsys-vsysa]assign resource-class r1 将接口划入虚拟系统 [USG6000V1-vsys-vsysa]assign interface GigabitEthernet 1/0/1 公共接口 --- 勾…

V90伺服电机初调试

分配设备IP地址 打开博途,将IP地址分配给对应伺服 打开V-ASSISTANT软件,刷新后读取硬件。VASSISTANT软件选择指定伺服,点击设备调试, 在控制模式选项中选择基本定位器控制(EPOS) 在设置PROFINET-选择报文页…

Air780EPM:SIM 卡接口设计指导来啦~

在数字化浪潮中,SIM卡作为通信设备的“身份证”,早已成为人们生活中不可或缺的存在。 以下详细阐述了SIM卡接口如何通过读取卡片信息完成4G网络鉴权,并支持双卡切换功能,使设备能够灵活选择最优网络。这种看似简单的机制&#xf…

DNS云解析有什么独特之处?

在数字化浪潮中,每一次网页点击、视频加载或在线交易背后,都依赖着域名系统(DNS)的高效运转。传统DNS架构的局限性(如单点故障、延迟高、安全脆弱)在云计算时代被彻底颠覆,DNS云解析作为新一代解…

VMware Workstation安装rocky9.5虚拟机

1、在镜像源网站中下载rocky镜像源,下载dvd版(图像,软件全部都有,其他版本还需下载图像),这里我使用的镜像源网站是ubuntu-releases安装包下载_开源镜像站-阿里云 2、找到isos: 3、找x86_64/ 4、…

概念|RabbitMQ 消息生命周期 待消费的消息和待应答的消息有什么区别

目录 消息生命周期 一、消息创建与发布阶段 二、消息路由与存储阶段 三、消息存活与过期阶段 四、消息投递与消费阶段 五、消息生命周期终止 关键配置建议 待消费的消息和待应答的消息 一、待消费的消息(Unconsumed Messages) 二、待应答的消息…

多模态知识图谱融合

1.Knowledge Graphs Meet Multi-Modal Learning: A Comprehensive Survey 1.1多模态实体对齐 1.2多模态实体链接 研究进展&#

多宠识别:基于计算机视觉的智能宠物管理系统架构解析

一、行业痛点与技术方案演进 在多宠家庭场景中,传统方案面临三大技术瓶颈: 1. 生物特征混淆:同品种/毛色宠物识别准确率低于65% 2. 动态场景适应:进食/奔跑状态下的误检率达30% 3. 数据孤岛问题:离线设备无法实现持续…

蓝桥杯-15届研究生组-A 劲舞团

思路和时间复杂度 思路&#xff1a;签到模拟题&#xff0c;但是思路也很重要&#xff0c;在K的重新赋值时&#xff0c;卡了一下&#xff0c;在不满足时间条件时&#xff0c;应该重置为1时间复杂度&#xff1a; 代码 #include <iostream> #include<cmath>…

最长重复子数组、最长公共子序列、判断子序列

20250307 题目区别dp数组含义的区别dp数组状态转移方程 代码随想录&#xff1a; 最长重复子数组 最长公共子序列 判断子序列 题目区别 最长重复子数组&#xff08;连续&#xff09;&#xff1a; 最长公共子序列&#xff08;不连续&#xff09;&#xff1a; 判断子序列 dp数…

【数据分析】转录组基因表达的KEGG通路富集分析教程

禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍差异分析(limma)KEGG富集分析(enrichKEGG)可视化加载R包数据下载导入数据基因差异分析火山图KEGG通路富集分析可视化通路结果另一个案例总结系统信息参考介绍 KEGG富集分析,可…

SpringBoot - 用责任链模式实现业务编排

文章目录 前因责任链&#xff1a;像工作台一样组织代码CodeSEQ3.1 定义处理器规范3.2 实现具体处理器3.3 共享上下文3.4 组装责任链 适用场景优势 前因 2000多行的业务逻辑里&#xff0c;各种校验规则、促销计算、库存操作像意大利面条一样缠绕在一起。最要命的是这样的代码结…

ResNet 改进:轻量级的混合本地信道注意机制MLCA

目录 1. MLCA注意力机制 2. 改进位置 3. 完整代码 Tips:融入模块后的网络经过测试,可以直接使用,设置好输入和输出的图片维度即可 1. MLCA注意力机制 MLCA(Mixed Local Channel Attention)是一种轻量级的混合本地信道注意机制,旨在提升卷积神经网络(CNN)在图像处理…

【第22节】C++设计模式(行为模式)-Iterator(迭代器)模式

一、问题背景 Iterator 模式是设计模式中最为常见和实用的模式之一。它的核心思想是将对聚合对象的遍历操作封装到一个独立的类中&#xff0c;从而避免暴露聚合对象的内部表示。通过 Iterator 模式&#xff0c;我们可以实现对聚合对象的统一遍历接口&#xff0c;而不需要关心聚…

PyTorch基础语法万字解析

第一章&#xff1a;张量基础&#xff08;Tensor Fundamentals&#xff09; 1.1 张量创建 在PyTorch中&#xff0c;张量&#xff08;Tensor&#xff09;是用于表示数据的基本单元。它类似于NumPy中的数组&#xff0c;但额外支持GPU加速和自动微分功能。以下是几种创建张量的方…

eclipse查看源码

查看 Collection 源码的步骤 打开 Eclipse。 在代码中定位到 Collection 接口&#xff1a; 例如&#xff0c;在代码中输入 Collection&#xff0c;然后按住 Ctrl 键并单击 Collection。 或者直接在代码中使用 Collection 的地方按 F3 键。 如果源码已关联&#xff1a; Ecl…