ReAct是主流Agent框架(如LangChain、LlamaIndex)的核心推理模式,理解它对掌握Agent的“思考并行动”至关重要。本文介绍了ReAct的由来、工作流程(Thought-Action-Observation循环)、各角色职责以及与Prompt工程的关系,并分析了其优势(可解释性强、减少幻觉、泛化能力好)与局限(效率问题、错误累积、依赖模型能力)。最后,文章还探讨了ReAct在现代Agent框架中的演进与变体,为程序员提供了一套系统学习大模型推理技术的框架。

1、题目分析

这道题考察的是对大模型 Agent 核心推理范式的理解。ReAct 是目前几乎所有主流 Agent 框架(如 LangChain、LlamaIndex)的底层推理模式,可以说理解了 ReAct,就理解了 Agent 是怎么"思考并行动"的。面试官问这道题,本质上是想看你对 Agent 的工作原理有没有真正吃透,而不是停留在"会调 API"的层面。

1.1 ReAct 的由来和核心思想

要理解 ReAct,我们先要知道它解决了什么问题。在 ReAct 之前,大模型在处理复杂任务时主要有两条路线:一条是以 Chain-of-Thought(CoT,思维链)为代表的纯推理路线,另一条是以 WebGPT、SayCan 等为代表的纯行动路线

纯推理路线的问题在于,模型只能依赖自身内部的参数知识来一步步推导,一旦遇到需要实时信息、精确计算或者外部数据的场景,它就容易"幻觉"——也就是一本正经地胡说八道。比如你问它"今天北京天气怎么样",它没有联网能力,只能瞎编一个答案。

纯行动路线的问题则相反,模型直接映射到动作空间去执行操作,但缺少中间的推理过程,导致它不知道"为什么要做这个动作"、“做完之后下一步该怎么办”,面对复杂的多步任务时就很容易迷失方向。

ReAct 的核心思想其实非常朴素:让大模型像人一样,边想边做。人在解决复杂问题的时候,不会先把所有事情想清楚再动手,也不会不过脑子就蛮干,而是想一步、做一步、看一步,根据每一步的反馈来调整下一步的计划。ReAct 就是把这种"交替进行推理和行动"的过程形式化了。

1.2 ReAct 的工作流程

ReAct 框架的名字本身就说明了一切:Reasoning + Acting,推理加行动。它的工作流程可以用一个循环来概括:Thought → Action → Observation → Thought → Action → Observation → … → Finish

我们用一个具体例子来说明。假设用户问:“《流浪地球》的导演还执导过哪些电影?这些电影中评分最高的是哪一部?”

这个问题对人来说不难,但需要分步骤完成。ReAct 的处理过程大致是这样的:

第一轮:

  • Thought(思考):我需要先查一下《流浪地球》的导演是谁。
  • Action(行动):调用搜索工具,搜索"流浪地球 导演"。
  • Observation(观察):搜索结果返回——导演是郭帆。

第二轮:

  • Thought(思考):好的,导演是郭帆。接下来我需要查一下郭帆还导演过哪些电影。
  • Action(行动):调用搜索工具,搜索"郭帆 导演 电影作品"。
  • Observation(观察):搜索结果返回——郭帆导演的电影有《流浪地球》《流浪地球2》《同桌的你》《李献计历险记》等。

第三轮:

  • Thought(思考):现在我知道了他的作品列表,接下来需要比较这些电影的评分,找出最高的。
  • Action(行动):调用搜索工具,搜索这些电影的评分信息。
  • Observation(观察):返回评分数据。

第四轮:

  • Thought(思考):根据评分数据,《流浪地球2》评分最高。我现在可以给出最终答案了。
  • Action(行动):Finish,输出最终答案。

可以看到,整个过程中,模型的每一次行动都有明确的推理依据,每次获得新信息后都会重新思考下一步该怎么走。这就是 ReAct 的精髓——推理指导行动,行动反馈推理,二者交替螺旋式推进,直到任务完成

1.3 Thought、Action、Observation 各自的角色

在 ReAct 的三元组中,每个部分承担着不同的职责:

Thought 是模型的"内心独白",它不会被发送给外部工具,而是留在推理链中供模型自己参考。Thought 的作用非常关键,它负责分解任务、分析当前进度、决定下一步策略。可以说 Thought 就是 CoT 思维链在 ReAct 中的体现,它让模型的决策过程变得可解释、可追溯。

Action 是模型与外部世界交互的桥梁。Action 通常是对某个外部工具的调用,比如搜索引擎、计算器、数据库查询、API 调用等。Action 的关键在于它是结构化的,通常包含工具名和调用参数,这样系统才能解析并执行。

Observation 是外部环境给模型的反馈,也就是 Action 执行后返回的结果。Observation 不是模型生成的,而是真实的外部数据,这就保证了模型的推理过程是"接地气"的,基于真实信息而非臆想。

这三者的协同关系,本质上构成了一个闭环反馈系统:Thought 基于当前上下文做出判断,Action 将判断转化为具体操作,Observation 将操作结果反馈回来更新上下文,然后新一轮的 Thought 再基于更新后的上下文继续推理。

1.4 ReAct 与 Prompt 工程的关系

在实际实现中,ReAct 的核心机制是通过精心设计的 Prompt 来驱动的。一个典型的 ReAct Prompt 模板大致包含以下几个部分:

你是一个智能助手,可以使用以下工具来回答问题:1. Search[query] - 搜索相关信息2. Lookup[term] - 在文档中查找特定内容3. Finish[answer] - 给出最终答案请按照以下格式交替进行思考和行动:Thought: 你的思考过程Action: 工具名[参数]Observation: 工具返回的结果...(重复以上过程)Thought: 我现在可以给出答案了Action: Finish[最终答案]

通过这种 Prompt 模板,我们实际上是在用 few-shot 或 instruction 的方式"教会"大模型按照 Thought-Action-Observation 的固定格式来输出。模型生成到 Action 时,系统会截断模型输出、解析 Action 内容、调用相应工具、获取结果,然后将 Observation 拼接回上下文,再让模型继续生成下一轮的 Thought。

这也是为什么说 ReAct 是一个框架而非一个模型——它是一种组织大模型推理和行动的协议和流程,可以套用在任何足够强的大模型上。

1.5 ReAct 的优势和局限

ReAct 的优势主要体现在三个方面:

  1. 第一,可解释性强,因为每一步行动之前都有明确的推理过程,出了问题可以回溯到具体是哪一步的思考出了偏差;
  2. 第二,减少幻觉,通过调用外部工具获取真实数据,而不是让模型凭空编造,大大提高了事实准确性;
  3. 第三,泛化能力好,同一套 ReAct 框架可以对接不同的工具集,适用于问答、数据分析、代码生成等多种场景。

但 ReAct 也有明显的局限性。首先是效率问题,每一轮 Thought-Action-Observation 都需要一次 LLM 调用加一次工具调用,对于简单任务来说开销过大;其次是错误累积,如果中间某一步的推理或工具调用出错,后续步骤可能会在错误的基础上越走越偏;最后是对模型能力的依赖,ReAct 需要模型有较强的指令遵循能力和格式控制能力,弱模型很容易输出不符合格式要求的内容导致解析失败。

1.6 ReAct 在现代 Agent 框架中的演进

在理解了 ReAct 的基本原理之后,还需要知道它在实际工程中的演进。现在主流的 Agent 框架基本都是在 ReAct 的基础上做了增强和扩展。

比如 LangChain 中的 AgentExecutor 就是 ReAct 的典型实现,它的 Agent 循环本质就是不断地让 LLM 生成 Thought 和 Action,然后执行工具获取 Observation,直到 LLM 输出 Final Answer。再比如更新的框架像 LangGraph,它把 ReAct 的线性循环扩展成了图结构,允许更复杂的分支和条件跳转,但底层的 Thought-Action-Observation 三元组逻辑依然没变。

另外还有一些变体和增强方案值得关注,比如 Reflexion 在 ReAct 的基础上加入了自我反思机制,当任务失败时模型会回顾整个推理过程并总结经验教训,下次再遇到类似问题时可以避免犯同样的错误。Plan-and-Execute 则是先做全局规划再分步执行,适合更长链路的复杂任务。

2、参考回答

ReAct 的全称是 Reasoning and Acting,它是一种大模型推理框架,核心思想是让模型交替进行推理和行动来完成复杂任务。

在 ReAct 之前,大模型处理复杂问题主要有两条路:一条是 Chain-of-Thought 这种纯推理路线,模型只在内部一步步思考,但容易产生幻觉,因为它没有办法获取外部真实信息;另一条是纯行动路线,直接让模型调用工具,但缺少推理过程,面对复杂多步任务很容易迷失方向。ReAct 把这两者结合了起来,形成了 Thought-Action-Observation 的循环机制。每一轮中,模型先通过 Thought 进行推理分析当前状态和下一步策略,然后通过 Action 调用外部工具,工具执行后返回 Observation 作为真实反馈,模型再基于这个新信息进行下一轮思考。这个循环不断迭代,直到模型判断可以给出最终答案为止。这种设计有三个显著优势:第一是推理指导行动,每次工具调用都有明确的推理依据,可解释性很强;第二是行动反馈推理,通过外部工具获取真实数据来辅助推理,大幅减少了幻觉;第三是这套框架与具体工具解耦,泛化性很好。

在实际落地层面,像 LangChain 的 AgentExecutor 本质上就是 ReAct 循环的工程实现,而更新的 LangGraph 则是把 ReAct 的线性循环扩展成了图结构以支持更复杂的流程控制。当然 ReAct 也有局限,比如多轮调用带来的延迟开销、中间步骤错误可能导致的错误累积、以及对模型指令遵循能力的强依赖,这些在实际工程中都需要针对性地去优化。

最后

对于正在迷茫择业、想转行提升,或是刚入门的程序员、编程小白来说,有一个问题几乎人人都在问:未来10年,什么领域的职业发展潜力最大?

答案只有一个:人工智能(尤其是大模型方向)

当下,人工智能行业正处于爆发式增长期,其中大模型相关岗位更是供不应求,薪资待遇直接拉满——字节跳动作为AI领域的头部玩家,给硕士毕业的优质AI人才(含大模型相关方向)开出的月基础工资高达5万—6万元;即便是非“人才计划”的普通应聘者,月基础工资也能稳定在4万元左右

再看阿里、腾讯两大互联网大厂,非“人才计划”的AI相关岗位应聘者,月基础工资也约有3万元,远超其他行业同资历岗位的薪资水平,对于程序员、小白来说,无疑是绝佳的转型和提升赛道。
图片
图片
对于想入局大模型、抢占未来10年行业红利的程序员和小白来说,现在正是最好的学习时机:行业缺口大、大厂需求旺、薪资天花板高,只要找准学习方向,稳步提升技能,就能轻松摆脱“低薪困境”,抓住AI时代的职业机遇。

如果你还不知道从何开始,我自己整理一套全网最全最细的大模型零基础教程,我也是一路自学走过来的,很清楚小白前期学习的痛楚,你要是没有方向还没有好的资源,根本学不到东西!

下面是我整理的大模型学习资源,希望能帮到你。

图片

👇👇扫码免费领取全部内容👇👇

在这里插入图片描述

最后

1、大模型学习路线

img

2、从0到进阶大模型学习视频教程

从入门到进阶这里都有,跟着老师学习事半功倍。

在这里插入图片描述

3、 入门必看大模型学习书籍&文档.pdf(书面上的技术书籍确实太多了,这些是我精选出来的,还有很多不在图里)

在这里插入图片描述

4、 AI大模型最新行业报告

2026最新行业报告,针对不同行业的现状、趋势、问题、机会等进行系统地调研和评估,以了解哪些行业更适合引入大模型的技术和应用,以及在哪些方面可以发挥大模型的优势。

img

5、面试试题/经验

img

【大厂 AI 岗位面经分享(107 道)】

img

【AI 大模型面试真题(102 道)】

img

【LLMs 面试真题(97 道)】

img

6、大模型项目实战&配套源码

img

适用人群

在这里插入图片描述

四阶段学习规划(共90天,可落地执行)
第一阶段(10天):初阶应用

该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。

  • 大模型 AI 能干什么?
  • 大模型是怎样获得「智能」的?
  • 用好 AI 的核心心法
  • 大模型应用业务架构
  • 大模型应用技术架构
  • 代码示例:向 GPT-3.5 灌入新知识
  • 提示工程的意义和核心思想
  • Prompt 典型构成
  • 指令调优方法论
  • 思维链和思维树
  • Prompt 攻击和防范
第二阶段(30天):高阶应用

该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。

  • 为什么要做 RAG
  • 搭建一个简单的 ChatPDF
  • 检索的基础概念
  • 什么是向量表示(Embeddings)
  • 向量数据库与向量检索
  • 基于向量检索的 RAG
  • 搭建 RAG 系统的扩展知识
  • 混合检索与 RAG-Fusion 简介
  • 向量模型本地部署
第三阶段(30天):模型训练

恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。

到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?

  • 为什么要做 RAG
  • 什么是模型
  • 什么是模型训练
  • 求解器 & 损失函数简介
  • 小实验2:手写一个简单的神经网络并训练它
  • 什么是训练/预训练/微调/轻量化微调
  • Transformer结构简介
  • 轻量化微调
  • 实验数据集的构建
第四阶段(20天):商业闭环

对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。

  • 硬件选型

  • 带你了解全球大模型

  • 使用国产大模型服务

  • 搭建 OpenAI 代理

  • 热身:基于阿里云 PAI 部署 Stable Diffusion

  • 在本地计算机运行大模型

  • 大模型的私有化部署

  • 基于 vLLM 部署大模型

  • 案例:如何优雅地在阿里云私有部署开源大模型

  • 部署一套开源 LLM 项目

  • 内容安全

  • 互联网信息服务算法备案

  • 👇👇扫码免费领取全部内容👇👇

    在这里插入图片描述

3、这些资料真的有用吗?

这份资料由我和鲁为民博士(北京清华大学学士和美国加州理工学院博士)共同整理,现任上海殷泊信息科技CEO,其创立的MoPaaS云平台获Forrester全球’强劲表现者’认证,服务航天科工、国家电网等1000+企业,以第一作者在IEEE Transactions发表论文50+篇,获NASA JPL火星探测系统强化学习专利等35项中美专利。本套AI大模型课程由清华大学-加州理工双料博士、吴文俊人工智能奖得主鲁为民教授领衔研发。

资料内容涵盖了从入门到进阶的各类视频教程和实战项目,无论你是小白还是有些技术基础的技术人员,这份资料都绝对能帮助你提升薪资待遇,转行大模型岗位。
在这里插入图片描述
在这里插入图片描述

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

在这里插入图片描述

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐