ReAct大模型学习指南:收藏这份Agent运行范式,小白也能轻松入门!
ReAct是一种将推理与行动交替组织的Agent运行范式,核心在于模型能在脑内生成答案的同时,根据需要查询、调用工具、观察结果并持续推理。它通过“思考→执行→观察→更新→再决策”的循环,将大模型从一次性问答推进到可与环境交互的任务执行形态。本文详细解析了ReAct的原理、运行过程、应用场景及局限,并探讨了其在代码Agent等领域的实际应用,适合希望学习大模型与Agent技术的程序员和小白参考。
先给结论
ReAct 可以理解为一个简单但非常关键的循环:
思考下一步 → 执行动作 → 观察结果 → 更新判断 → 再决定下一步
它的价值不在于让大模型“凭空知道更多”,而在于把大模型从一次性问答,推进到可与环境交互的任务执行形态。
表 1:ReAct 的核心定位
| 维度 | 说明 |
|---|---|
| 本质 | 一种 Agent 推理与行动交替的控制模式 |
| 解决的问题 | 单轮生成容易缺少事实依据、无法处理外部状态、无法逐步纠错 |
| 典型能力 | 工具调用、检索增强、任务分解、环境观察、迭代修正 |
| 适合场景 | 需要多步决策、外部信息、工具执行、过程可追踪的任务 |
| 不适合场景 | 简单问答、固定模板生成、低风险单步转换任务 |
- ReAct 到底是什么
ReAct 由两个词组成:
| Reasoning:模型基于当前问题、上下文和观察结果进行推理,判断下一步应该做什么。 |
| Acting:模型选择一个动作,例如搜索资料、调用 API、执行代码、查询数据库、打开网页、读文件等。 |
关键点是:ReAct 不是只让模型“写出推理过程”,也不是只让模型“调用工具”。它要求这两件事形成一个闭环。
图 1:ReAct 概念关系图
这张图展示 ReAct 中问题、推理、动作、观察和最终答案之间的关系。
表 2:ReAct 中各组成部分的含义
| 组成部分 | 作用 | 常见形式 |
|---|---|---|
| 用户问题 | 给出任务目标和约束 | 查询、写作、排错、分析、自动化任务 |
| 推理 | 判断当前状态、拆分问题、选择下一步 | 内部思考、计划、假设验证、风险判断 |
| 动作 | 对外部世界发起操作 | 搜索、读文件、调用函数、执行命令、请求 API |
| 观察 | 接收动作结果 | 搜索结果、日志、接口响应、网页内容、代码输出 |
| 最终答案 | 在信息足够后交付结果 | 解释、结论、文档、修复、执行报告 |
2. 为什么需要 ReAct
传统大模型问答往往是“一次输入,一次输出”。这在很多场景里足够好,但遇到以下问题时会暴露明显短板:
| 事实信息可能过期,模型需要查资料。 |
|---|
| 问题需要访问本地文件、数据库、系统状态。 |
| 任务无法一步完成,需要不断试错。 |
| 中间结果会改变后续判断。 |
| 用户希望看到可审计的执行轨迹。 |
ReAct 的意义,是把模型从“文本生成器”变成“可操作环境的任务协调者”。
表 3:纯生成模式与 ReAct 模式对比
| 对比项 | 纯生成模式 | ReAct 模式 |
|---|---|---|
| 信息来源 | 主要依赖模型参数和输入上下文 | 可结合模型知识、外部检索、工具结果和环境反馈 |
| 任务过程 | 通常一次性完成 | 多轮循环推进,允许中间修正 |
| 错误处理 | 容易把不确定内容直接说成结论 | 可通过观察结果验证假设,降低盲答概率 |
| 可扩展性 | 主要扩展提示词和上下文 | 可扩展工具、权限、工作流和环境接口 |
| 风险点 | 幻觉、过度自信、无法访问实时状态 | 工具选择错误、循环失控、权限边界复杂 |
3. ReAct 的运行过程
一个典型 ReAct 循环可以拆成四个阶段:
| 理解目标:模型判断用户到底要完成什么。 |
|---|
| 选择动作:模型决定是否需要调用工具,以及调用哪个工具。 |
| 读取观察:模型解析工具返回结果,判断信息是否足够。 |
| 继续或结束:如果信息不足,继续下一轮;如果足够,输出结果。 |
4. 一个简单例子:查询资料并回答问题
假设用户问:“某个开源项目最近一次稳定版发布了什么变化?”
纯生成模式可能直接凭印象回答;ReAct 模式更合理的过程是:
| 判断该问题需要实时信息。 |
|---|
| 调用搜索或 GitHub API。 |
| 查看 release note。 |
| 提取关键变化。 |
| 如果信息冲突,继续查官方文档或 changelog。 |
| 给出带来源边界的回答。 |
图 3:ReAct 时序图
这张图展示用户、Agent、工具和外部系统之间的交互顺序。
5. ReAct 与 Chain-of-Thought、Tool Use、RAG 的关系
ReAct 经常和几个概念混在一起:Chain-of-Thought、Tool Use、RAG。它们有关联,但不是一回事。
表 4:相关概念对比
| 概念 | 核心关注点 | 与 ReAct 的关系 |
|---|---|---|
| Chain-of-Thought | 让模型通过中间推理步骤解决复杂问题 | ReAct 可以包含推理,但不仅限于推理文本 |
| Tool Use | 让模型调用外部工具 | ReAct 把工具调用放进“推理—行动—观察”的循环中 |
| RAG | 从外部知识库检索信息增强回答 | RAG 可以作为 ReAct 中的一种动作 |
| Planner-Executor | 先规划,再由执行器完成任务 | ReAct 可以是更细粒度的动态规划与执行循环 |
| Workflow | 预先定义固定步骤 | ReAct 更强调运行时根据观察结果动态决策 |
图 4:ReAct 与相关范式的位置关系
这张图展示 ReAct 如何把推理、工具调用和检索组织到同一个控制闭环中。
6. ReAct 的局限和风险
ReAct 提升了 Agent 的外部行动能力,但也带来了新的问题。
表 7:ReAct 的主要局限
| 局限 | 表现 | 应对方式 |
|---|---|---|
| 工具选择错误 | 模型调用了不合适的工具,或者参数构造错误 | 强化工具说明、减少工具数量、使用结构化参数校验 |
| 观察误读 | 模型把工具返回结果理解错 | 使用结构化返回、关键字段解释、必要时二次验证 |
| 循环失控 | 反复搜索、反复尝试,迟迟不输出 | 设置最大步数、预算、时间限制和终止规则 |
| 成本上升 | 多轮调用增加 token、API 和时间成本 | 对任务分级,简单任务不启用完整 ReAct |
| 安全边界复杂 | 动作可能修改文件、调用生产接口或发送消息 | 分级授权、人工审批、只读优先、审计日志 |
| 推理不可完全可靠 | 模型仍可能做出错误判断 | 对关键任务引入验证器、测试、人工复核 |
ReAct 不等于自治。它可以让模型更会使用工具,但不能替代权限设计、风险控制、测试验证和人工审查。
7. 在 Codex 类代码 Agent 中的应用
这里的 Codex 可以泛指 OpenAI Codex / Codex CLI / 代码执行型 Agent 这一类系统。它们最典型的 ReAct 应用不是“聊天回答代码问题”,而是围绕代码仓库进行多轮操作:
| 理解用户需求。 |
|---|
| 搜索项目结构和相关文件。 |
| 阅读代码。 |
| 判断修改点。 |
| 编辑文件。 |
| 运行测试或检查命令。 |
| 根据错误日志继续修正。 |
| 输出变更总结。 |
这正是代码场景里的 ReAct:
| Reasoning:分析需求、定位代码、判断错误原因。 |
|---|
| Acting:读文件、改文件、运行测试、执行命令。 |
| Observation:文件内容、测试结果、编译错误、lint 输出。 |
表 12:Codex 类代码 Agent 中的 ReAct 映射
| ReAct 环节 | 代码 Agent 中的表现 | 具体例子 |
|---|---|---|
| Reasoning | 判断任务目标和修改策略 | “需要先找到路由定义和对应组件” |
| Action | 调用开发工具 | grep 搜索、读取文件、编辑代码、运行测试 |
| Observation | 获取环境反馈 | 测试失败日志、TypeScript 报错、Git diff |
| 再推理 | 根据反馈调整方案 | 发现类型不匹配后修改接口定义 |
| 结束判断 | 判断是否可交付 | 测试通过、变更范围明确、无明显副作用 |
图 10:Codex 类代码 Agent 的 ReAct 循环
这张图展示代码 Agent 如何通过文件和测试反馈不断修正结果。
Codex 类系统里,ReAct 的价值非常明显:代码修改不是一次性生成,而是一个需要不断读取上下文、执行验证、根据反馈修正的过程。
8. 总结
现在的主流 Agent 系统,大多不是在“是否使用 ReAct”之间二选一,而是在不同层次上组合:
| 简单任务:直接生成,不需要 ReAct。 |
|---|
| 中等复杂任务:工具调用 + 短 ReAct 循环。 |
| 复杂工程任务:ReAct + 状态管理 + 权限控制 + 审计日志。 |
| 长期任务:ReAct 作为局部能力,外层由工作流、状态图或多 Agent 编排控制。 |
可以把 ReAct 理解为现代 Agent 的“基础动作循环”:不是所有系统都会显式叫它 ReAct,但只要系统需要边观察边行动、边行动边修正,它就很可能在使用 ReAct 式结构。
表 16:从 ReAct 到现代 Agent 的演进
| 阶段 | 主要特征 | 代表形态 |
|---|---|---|
| 原始 ReAct | Thought / Action / Observation 显式交替 | 论文示例、早期 Agent demo |
| 工具调用 Agent | 模型根据工具描述动态调用工具 | LangChain Agent、函数调用助手 |
| 代码 Agent | 在仓库中读写文件并根据测试反馈修正 | Codex、Claude Code、Cursor Agent、Aider |
| 状态图 Agent | 将循环拆成可控制的节点和边 | LangGraph、企业 Agent 编排系统 |
| 多 Agent 系统 | 多角色之间共享观察与决策 | AutoGen、CrewAI、软件工程 Agent |
理解这一点后,再看 Codex、Claude Code 或其他 Agent 框架,会更容易抓住本质:它们不是简单地“会调用工具”,而是把工具调用放进了一个持续观察、判断、行动、修正的循环里。
如何学习大模型 AI ?
由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。
但是具体到个人,只能说是:
“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。
这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。
我在一线科技企业深耕十二载,见证过太多因技术卡位而跃迁的案例。那些率先拥抱 AI 的同事,早已在效率与薪资上形成代际优势,我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在大模型的学习中的很多困惑。我们整理出这套AI 大模型突围资料包:
- ✅ 从零到一的 AI 学习路径图
- ✅ 大模型调优实战手册(附医疗/金融等大厂真实案例)
- ✅ 百度/阿里专家闭门录播课
- ✅ 大模型当下最新行业报告
- ✅ 真实大厂面试真题
- ✅ 2026 最新岗位需求图谱
所有资料 ⚡️ ,朋友们如果有需要《AI大模型入门+进阶学习资源包》,下方扫码获取~
① 全套AI大模型应用开发视频教程
(包含提示工程、RAG、LangChain、Agent、模型微调与部署、DeepSeek等技术点)
② 大模型系统化学习路线
作为学习AI大模型技术的新手,方向至关重要。 正确的学习路线可以为你节省时间,少走弯路;方向不对,努力白费。这里我给大家准备了一份最科学最系统的学习成长路线图和学习规划,带你从零基础入门到精通!
③ 大模型学习书籍&文档
学习AI大模型离不开书籍文档,我精选了一系列大模型技术的书籍和学习文档(电子版),它们由领域内的顶尖专家撰写,内容全面、深入、详尽,为你学习大模型提供坚实的理论基础。
④ AI大模型最新行业报告
2025最新行业报告,针对不同行业的现状、趋势、问题、机会等进行系统地调研和评估,以了解哪些行业更适合引入大模型的技术和应用,以及在哪些方面可以发挥大模型的优势。
⑤ 大模型项目实战&配套源码
学以致用,在项目实战中检验和巩固你所学到的知识,同时为你找工作就业和职业发展打下坚实的基础。
⑥ 大模型大厂面试真题
面试不仅是技术的较量,更需要充分的准备。在你已经掌握了大模型技术之后,就需要开始准备面试,我精心整理了一份大模型面试题库,涵盖当前面试中可能遇到的各种技术问题,让你在面试中游刃有余。
以上资料如何领取?
为什么大家都在学大模型?
最近科技巨头英特尔宣布裁员2万人,传统岗位不断缩减,但AI相关技术岗疯狂扩招,有3-5年经验,大厂薪资就能给到50K*20薪!
不出1年,“有AI项目经验”将成为投递简历的门槛。
风口之下,与其像“温水煮青蛙”一样坐等被行业淘汰,不如先人一步,掌握AI大模型原理+应用技术+项目实操经验,“顺风”翻盘!
这些资料真的有用吗?
这份资料由我和鲁为民博士(北京清华大学学士和美国加州理工学院博士)共同整理,现任上海殷泊信息科技CEO,其创立的MoPaaS云平台获Forrester全球’强劲表现者’认证,服务航天科工、国家电网等1000+企业,以第一作者在IEEE Transactions发表论文50+篇,获NASA JPL火星探测系统强化学习专利等35项中美专利。本套AI大模型课程由清华大学-加州理工双料博士、吴文俊人工智能奖得主鲁为民教授领衔研发。
资料内容涵盖了从入门到进阶的各类视频教程和实战项目,无论你是小白还是有些技术基础的技术人员,这份资料都绝对能帮助你提升薪资待遇,转行大模型岗位。