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 : 摩根·弗里曼
相关文章:
ReAct论文阅读笔记总结
ReAct:Synergizing Reasoning and Acting in Language Models 背景 最近的研究结果暗示了在自主系统中结合语言推理与交互决策的可能性。 一方面,经过适当Prompt的大型语言模型(LLMs)已经展示了在算术、常识和符号推理任务中通…...
Linux云计算SRE-第十七周
1. 做三个节点的redis集群。 1、编辑redis节点node0(10.0.0.100)、node1(10.0.0.110)、node2(10.0.0.120)的安装脚本 [rootnode0 ~]# vim install_redis.sh#!/bin/bash # 指定脚本解释器为bashREDIS_VERSIONredis-7.2.7 # 定义Redis的版本号PASSWORD123456 # 设置Redis的访问…...
Python在数字货币交易中的算法设计:从策略到实践
Python在数字货币交易中的算法设计:从策略到实践 随着区块链技术的发展和加密货币市场的繁荣,数字货币交易已经成为金融领域的一个重要分支。从个体投资者到量化基金,算法交易(Algorithmic Trading)正在为提高交易效率和决策质量提供强大的支撑。在这些技术应用中,Pytho…...
高纬度、跨极区导航技术
本文是何昆鹏老师所写,在此非常感谢何老师的分享。 全球导航,特别是极区导航,一直被美俄导航领域所关注。美俄本身部分国土就处于极区,很多战略军事部署与全球航线也都处于该区域,加之其战略军事任务也都强调全球覆盖…...
用AI学编程2——python学习1
一个py文件,学会所有python所有语法和特性,给出注释,给出这样的文件 Python 学习整合文件 """ Python 学习整合文件 包含 Python 的基础语法、数据结构、函数定义、面向对象编程、异常处理、文件操作、高级特性等内容 每个部…...
用数据唤醒深度好眠,时序数据库 TDengine 助力安提思脑科学研究
在智能医疗与脑科学快速发展的今天,高效的数据处理能力已成为突破创新的关键。安提思专注于睡眠监测与神经调控,基于人工智能和边缘计算,实现从生理体征监测、智能干预到效果评估的闭环。面对海量生理数据的存储与实时计算需求,安…...
Ubuntu下MySQL的安装与使用(一)
目录 用户切换 MySQL的安装 MySQL的初步使用 登录与退出 Linux和mysql中的普通用户和root用户 查看、创建与使用 简单应用 MySQL 数据库在 Linux 文件系统中的存储结构 数据库、数据库服务、数据库管理系统(宏观) 微观下的DBMS SQL语言及其分…...
步进电机软件细分算法解析与实践指南
1. 步进电机细分技术概述 步进电机是一种将电脉冲信号转换为角位移的执行机构,其基本运动单位为步距角。传统步进电机的步距角通常为 1.8(对应 200 步 / 转),但在高精度定位场景下,这种分辨率已无法满足需求。细分技术…...
pytorch retain_grad vs requires_grad
requires_grad大家都挺熟悉的,因此穿插在retain_grad的例子里进行捎带讲解就行。下面看一个代码片段: import torch# 创建一个标量 tensor,并开启梯度计算 x torch.tensor(2.0, requires_gradTrue)# 中间计算:y 依赖于 x&#x…...
RabbitMQ消息队列中间件安装部署教程(Windows)-2025最新版详细图文教程(附所需安装包)
目录 前言 一、安装Erlang环境 1、下载Erlang安装包 2、安装Erlang 3、设置环境变量 二、安装RabbitMQ环境 1、下载RabbitMQ安装包 2、安装RabbitMQ 3、设置环境变量 三、启动RabbitMQ 1、开启RabbitMQ管理插件 2、启动RabbitMQ 四、访问RabbitMQ 前言 RabbitMQ 是…...
vue-cli3+vue2+elementUI+avue升级到vite+vue3+elementPlus+avue总结
上一个新公司接手了一个vue-cli3vue2vue-router3.0elementUI2.15avue2.6的后台管理项目,因为vue2在2023年底已经不更新维护了,elementUI也只支持到vue2,然后总结了一下vue3的优势,最后批准升级成为了vitevue3vue-router4.5element…...
车载以太网测试-3【Wireshark介绍】
1 摘要 Wireshark 是一款开源的网络协议分析工具,广泛用于网络故障排查、协议分析、网络安全检测等领域。它能够捕获网络数据包,并以详细的、可读的格式显示这些数据包的内容。广泛应用于车载网络测试,是车载网络测试工程师必须掌握的工具。…...
扫雷雷雷雷雷雷雷
大家好啊,我是小象٩(๑ω๑)۶ 我的博客:Xiao Xiangζั͡ޓއއ 很高兴见到大家,希望能够和大家一起交流学习,共同进步。 这一节课我们不学习新的知识,我们来做一个扫雷小游戏 目录 扫雷小游戏概述一、扫雷游戏分析…...
图片分类实战:食物分类问题(含半监督)
食物分类问题 simple_class 1. 导入必要的库和模块 import random import torch import torch.nn as nn import numpy as np import os from PIL import Image #读取图片数据 from torch.utils.data import Dataset, DataLoader from tqdm import tqdm from torchvision impo…...
RuoYi框架添加自己的模块(学生管理系统CRUD)
RuoYi框架添加自己的模块(学生管理系统) 框架顺利运行 首先肯定要顺利运行框架了,这个我不多说了 设计数据库表 在ry数据库中添加表tb_student 表字段如图所示 如图所示 注意id字段是自增的 注释部分是后面成功后前端要展示的部分 导入…...
机器学习在地图制图学中的应用
原文链接:https://www.tandfonline.com/doi/full/10.1080/15230406.2023.2295948#abstract CSDN/2025/Machine learning in cartography.pdf at main keykeywu2048/CSDN GitHub 核心内容 本文是《制图学与地理信息科学》特刊的扩展评论,系统探讨了机…...
【JAVA架构师成长之路】【电商系统实战】第9集:订单超时关闭实战(Kafka延时队列 + 定时任务补偿)
30分钟课程:订单超时关闭实战(Kafka延时队列 定时任务补偿) 课程目标 理解订单超时关闭的业务场景与核心需求。掌握基于 Kafka 延时队列与定时任务的关单方案设计。实现高并发场景下的可靠关单逻辑(防重复、幂等性)。…...
《探秘课程蒸馏体系“三阶训练法”:解锁知识层级递进式迁移的密码》
在人工智能与教育科技深度融合的时代,如何高效地实现知识传递与能力提升,成为众多学者、教育工作者以及技术专家共同探索的课题。课程蒸馏体系中的“三阶训练法”,作为一种创新的知识迁移模式,正逐渐崭露头角,为解决这…...
K8s 1.27.1 实战系列(六)Pod
一、Pod介绍 1、Pod 的定义与核心设计 Pod 是 Kubernetes 的最小调度单元,由一个或多个容器组成,这些容器共享网络、存储、进程命名空间等资源,形成紧密协作的应用单元。Pod 的设计灵感来源于“豌豆荚”模型,容器如同豆子,共享同一环境但保持隔离性。其核心设计目标包括…...
Java CountDownLatch 用法和源码解析
🧑 博主简介:CSDN博客专家,历代文学网(PC端可以访问:https://literature.sinhy.com/#/literature?__c1000,移动端可微信小程序搜索“历代文学”)总架构师,15年工作经验,…...
MongoDB学习和应用(高效的非关系型数据库)
一丶 MongoDB简介 对于社交类软件的功能,我们需要对它的功能特点进行分析: 数据量会随着用户数增大而增大读多写少价值较低非好友看不到其动态信息地理位置的查询… 针对以上特点进行分析各大存储工具: mysql:关系型数据库&am…...
java调用dll出现unsatisfiedLinkError以及JNA和JNI的区别
UnsatisfiedLinkError 在对接硬件设备中,我们会遇到使用 java 调用 dll文件 的情况,此时大概率出现UnsatisfiedLinkError链接错误,原因可能有如下几种 类名错误包名错误方法名参数错误使用 JNI 协议调用,结果 dll 未实现 JNI 协…...
【解密LSTM、GRU如何解决传统RNN梯度消失问题】
解密LSTM与GRU:如何让RNN变得更聪明? 在深度学习的世界里,循环神经网络(RNN)以其卓越的序列数据处理能力广泛应用于自然语言处理、时间序列预测等领域。然而,传统RNN存在的一个严重问题——梯度消失&#…...
1688商品列表API与其他数据源的对接思路
将1688商品列表API与其他数据源对接时,需结合业务场景设计数据流转链路,重点关注数据格式兼容性、接口调用频率控制及数据一致性维护。以下是具体对接思路及关键技术点: 一、核心对接场景与目标 商品数据同步 场景:将1688商品信息…...
1.3 VSCode安装与环境配置
进入网址Visual Studio Code - Code Editing. Redefined下载.deb文件,然后打开终端,进入下载文件夹,键入命令 sudo dpkg -i code_1.100.3-1748872405_amd64.deb 在终端键入命令code即启动vscode 需要安装插件列表 1.Chinese简化 2.ros …...
UR 协作机器人「三剑客」:精密轻量担当(UR7e)、全能协作主力(UR12e)、重型任务专家(UR15)
UR协作机器人正以其卓越性能在现代制造业自动化中扮演重要角色。UR7e、UR12e和UR15通过创新技术和精准设计满足了不同行业的多样化需求。其中,UR15以其速度、精度及人工智能准备能力成为自动化领域的重要突破。UR7e和UR12e则在负载规格和市场定位上不断优化…...
MySQL用户和授权
开放MySQL白名单 可以通过iptables-save命令确认对应客户端ip是否可以访问MySQL服务: test: # iptables-save | grep 3306 -A mp_srv_whitelist -s 172.16.14.102/32 -p tcp -m tcp --dport 3306 -j ACCEPT -A mp_srv_whitelist -s 172.16.4.16/32 -p tcp -m tcp -…...
mac 安装homebrew (nvm 及git)
mac 安装nvm 及git 万恶之源 mac 安装这些东西离不开Xcode。及homebrew 一、先说安装git步骤 通用: 方法一:使用 Homebrew 安装 Git(推荐) 步骤如下:打开终端(Terminal.app) 1.安装 Homebrew…...
CSS | transition 和 transform的用处和区别
省流总结: transform用于变换/变形,transition是动画控制器 transform 用来对元素进行变形,常见的操作如下,它是立即生效的样式变形属性。 旋转 rotate(角度deg)、平移 translateX(像素px)、缩放 scale(倍数)、倾斜 skewX(角度…...
Git 3天2K星标:Datawhale 的 Happy-LLM 项目介绍(附教程)
引言 在人工智能飞速发展的今天,大语言模型(Large Language Models, LLMs)已成为技术领域的焦点。从智能写作到代码生成,LLM 的应用场景不断扩展,深刻改变了我们的工作和生活方式。然而,理解这些模型的内部…...
