ReAct论文阅读笔记总结

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.rhkb.cn/news/29446.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

20250306-笔记-精读class CVRPEnv:step(self, selected)

文章目录 前言一、if self.time_step<4:控制时间步的递增判断是否在配送中心特定时间步的操作更新更新当前节点和已选择节点列表更新需求和负载更新访问标记更新负无穷掩码更新步骤状态&#xff0c;将更新后的状态同步到 self.step_state 二、使用步骤总结 前言 class CVRP…

nginx服务器实现上传文件功能_使用nginx-upload-module模块

目录 conf文件内容如下html文件内容如下上传文件功能展示 conf文件内容如下 #user nobody; worker_processes 1;error_log /usr/logs/error.log; #error_log /usr/logs/error.log notice; #error_log /usr/logs/error.log info;#pid /usr/logs/nginx.pid;even…

mapbox进阶,模仿百度,简单实现室内楼层切换

👨‍⚕️ 主页: gis分享者 👨‍⚕️ 感谢各位大佬 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍⚕️ 收录于专栏:mapbox 从入门到精通 文章目录 一、🍀前言1.1 ☘️mapboxgl.Map 地图对象1.2 ☘️mapboxgl.Map style属性1.3 ☘️fill-extrusion三维填充图层样式1.4 ☘…

String / StringBuffer / StringBuilder 的区别是什么?

String、StringBuffer 和 StringBuilder 都是 Java 中用于处理字符串的类&#xff0c;但它们在多个方面存在区别&#xff0c;以下是详细介绍&#xff1a; 1. 可变性 4. 使用场景 String&#xff1a;String 类是不可变的&#xff0c;一旦创建了一个 String 对象&#xff0c;它的…

为何吹订单?因为特斯拉的销量已遥遥领先,掩耳盗铃之举!

从去年以来&#xff0c;多家新造车企业都经常拿大定、小定的数据来说事&#xff0c;而不是如之前说销量领先&#xff0c;原因就在于他们曾对标的特斯拉在销量方面已远远超越&#xff0c;在销量方面无法与特斯拉比拼&#xff0c;就只好用订单 国内媒体一片宣传特斯拉在中国的销量…

深入掌握Redis:从原理到实践的全方位指南

文章为原创&#xff0c;转载请注明出处——Gavana - 半分之月&#x1f319;。 文章在我的博客中同步更新&#xff0c;也可访问本文链接——深入掌握Redis&#xff1a;从原理到实践的全方位指南 | Gavana 关注AI开发工程师Gavana&#xff0c;带你了解更多实用有趣的AI宝藏✨ 个人…

结构型模式---享元模式

概念 享元模式是一种结构型设计模式&#xff0c;他摒弃了在每个对象中保存所有数据的方式&#xff0c;通过共享多个对象所共有的相同状态&#xff0c;让你能在有限的内存容量中载入更多对象。享元模式将原始类中的数据分为内在状态数据和外在状态数据。 内在状态&#xff1a;就…

【Altium】22.11版本后如何导出Gerber镜像层

1、 文档目标 解决 22.11 版本后如何导出 Gerber 镜像层的问题 2、 问题场景 Gerber 导出旧版本&#xff0c;在 AD 22.11 之前的 Gerber 导出中是存在镜像层的选择。 图 1 软件更新至 AD22.11 及之后版本&#xff0c;在 Gerber 导出设置中无法选择层镜像进行导出。 图 2 3、…

Ubuntu 合上屏幕 不待机 设置

有时候需要Ubuntu的机器合上屏幕的时候也能正常工作&#xff0c;而不是处于待机状态。 需要进行配置文件的设置&#xff0c;并重启即可。 1. 修改配置文件 /etc/systemd/logind.conf sudo vi /etc/systemd/logind.conf 然后输入i&#xff0c;进入插入状态&#xff0c;修改如…

Dockerfile 深入浅出:从基础到进阶全解析

Dockerfile 深入浅出&#xff1a;从基础到进阶全解析 各位同学&#xff0c;大家好&#xff01;欢迎来到今天的 Dockerfile 课程。Docker 技术在当今的软件开发和部署领域可以说是非常热门&#xff0c;而 Dockerfile 作为构建 Docker 镜像的关键文件&#xff0c;掌握它对于我们…

视频录像机视频通道是指什么

视频录像机的视频通道是指摄像机在监控矩阵或硬盘录像机设备上的视频输入的物理位置。 与摄像头数量关系&#xff1a;在视频监控系统中&#xff0c;有多少个摄像头就需要多少路视频通道&#xff0c;通道数量决定了视频录像机可接入摄像头的数量&#xff0c;一般硬盘录像机有4路…

2025-03-06 学习记录--C/C++-PTA 习题6-6 使用函数输出一个整数的逆序数

合抱之木&#xff0c;生于毫末&#xff1b;九层之台&#xff0c;起于累土&#xff1b;千里之行&#xff0c;始于足下。&#x1f4aa;&#x1f3fb; 一、题目描述 ⭐️ 二、代码&#xff08;C语言&#xff09;⭐️ #include <stdio.h>int reverse( int number );int main…

游戏引擎学习第138天

仓库:https://gitee.com/mrxiao_com/2d_game_3 资产&#xff1a;game_hero_test_assets_003.zip 发布 我们的目标是展示游戏运行时的完整过程&#xff0c;从像素渲染到不使用GPU的方式&#xff0c;我们自己编写了渲染器并完成了所有的工作。今天我们开始了一些新的内容&#…

LeetCode hot 100—二叉树的最大深度

题目 给定一个二叉树 root &#xff0c;返回其最大深度。 二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。 示例 示例 1&#xff1a; 输入&#xff1a;root [3,9,20,null,null,15,7] 输出&#xff1a;3示例 2&#xff1a; 输入&#xff1a;root [1,n…

力扣刷题DAY6(滑动窗口/中等+栈/简单、中等)

一、滑动窗口 找到字符串中所有字母异位词 方法一&#xff1a;哈希表 class Solution { public:vector<int> findAnagrams(string s, string p) {vector<int> ans;unordered_map<char, int> target;for (int i 0; i < p.size(); i) {target[p[i]];}in…

DeepSeek V3 源码:从入门到放弃!

从入门到放弃 花了几天时间&#xff0c;看懂了DeepSeek V3 源码的逻辑。源码的逻辑是不难的&#xff0c;但为什么模型结构需要这样设计&#xff0c;为什么参数需要这样设置呢&#xff1f;知其然&#xff0c;但不知其所以然。除了模型结构以外&#xff0c;模型的训练数据、训练…

thinkphp5.1 在fetch模版就超时

场景 当被渲染模版不存在&#xff0c;请求不响应任何内容&#xff0c;过一会就timeout 排查过程 使用xdebug,追踪代码&#xff0c;发现走到D:\temporary_files\m40285_mini\40285_mini\thinkphp\library\think\exception\Handle.php&#xff0c;进入死循环&#xff0c;一直…

【Vue CLI脚手架开发】——6.scoped样式

文章目录 一、scoped是什么二、应用案例1.使用代码2.原理3父组件App未添加scoped影响 一、scoped是什么 我们知道vue为了防止css样式污染&#xff0c;在每个组件中提供了 scoped属性进行限定css作用域&#xff1b;当<style>标签有 scoped 属性时&#xff0c;它的 CSS 只…

微服务,服务治理nacos,负载均衡LOadBalancer,OpenFeign

1.微服务 简单来说&#xff0c;微服务架构风格[1]是一种将一个单一应用程序开发为一组小型服务的方法&#xff0c;每个服务运行在 自己的进程中&#xff0c;服务间通信采用轻量级通信机制(通常用HTTP资源API)。这些服务围绕业务能力构建并 且可通过全自动部署机制独立部署。这…

STM32-USART串口数据包

一&#xff1a;HEX数据包发送 1.为了收发数据包&#xff0c;先定义两个缓存区的数组 &#xff0c;这4个数据只存储发送或者接收的载荷数据&#xff0c;包头和包尾不存 uint8_t Serial_TxPacket[4]; uint8_t Serial_RxPacket[4]; uint8_t Serial_RxFlag;//接收一个数据包就置F…