Appearance
14.2 ReAct(Reason + Act)机制详解
引言:ReAct 是什么
ReAct(Reason + Act)是现代 Agent 的核心框架,它让大模型具备推理能力(Reason)和行动能力(Act),并支持循环执行:推理→行动→观察→再推理→再行动。
14.2.1 ReAct 架构的基本循环
| 阶段 | 说明 |
|---|---|
| Thought(推理) | 分析当前目标、当前信息、应采取的下一步 |
| Action(行动) | 调用工具(搜索/数据库/代码执行/API等) |
| Observation(观察) | 读取工具返回的结果,更新任务状态 |
| 循环 | 根据新的 Observation 再次推理,直到完成任务 |
14.2.2 ReAct 必须具备的三大能力
| 能力 | 说明 |
|---|---|
| 推理链路 | 识别任务、规划下一步、判断工具是否必要 |
| 工具选择 | 只在需要时调用工具、调用正确的工具、输入格式正确 |
| 状态管理 | 更新上下文、更新已知信息、更新任务进度 |
14.2.3 ReAct 的常见工具类型
| 工具类型 | 说明 |
|---|---|
| 搜索类工具 | 搜索信息、查资料 |
| 代码执行工具 | 执行 Python/JS 等代码 |
| 数据库查询 | 执行 SQL 查询 |
| 浏览器工具 | 访问网页、爬取结果 |
| API 路由工具 | 调用企业内部 API |
14.2.4 ReAct 的错误模式与解决方案
| 错误 | 原因 | 解决方案 |
|---|---|---|
| 无限循环 | 观察后推理不变、未更新任务状态 | 加入终止条件提示词、限制循环次数 |
| 错误工具调用 | 工具选择不当、格式错误 | 加入工具规范和示例 |
| 跑偏 | 推理链错误、未识别任务目标 | 加入 Goal Statement 和自检机制 |
| 工具滥用 | 每一步都调用工具 | 加入"仅在必要时使用工具"规则 |
14.2.5 ReAct 提示词模板
你是一名执行复杂任务的智能 Agent。
# Core Rules
1. 使用 Thought → Action → Observation 的循环形式
2. 若不需要工具,可直接 Thought 再输出最终答案
3. 工具调用格式:Action: 工具名称 / Action Input: 工具输入
4. 当目标达成时,停止循环并输出 Final Answer本节小结
关键要点
- ReAct = Reason + Act
- 它让模型能"推理→行动→观察→再推理"
- 高质量 ReAct 需要:推理、工具调用、状态管理、循环流程
- 大量企业级 Agent 使用 ReAct 架构
ReAct 是 Agent 的核心框架,接下来我们将学习:工具调用(Tool/Function Calling)。


