ReAct模式:推理和行动交替的Agent核心范式
什么是ReAct
ReAct = Reasoning(推理)+ Acting(行动),是当前最主流、最实用的Agent设计模式。
简单说:Agent不是想好了再干,也不是干了再说,而是"想一步→干一步→看结果→再想一步"的循环。
ReAct工作流程
→ Thought(我想干什么?需要什么信息?) → Action(调用工具:搜索、读文件、执行命令) → Observation(工具返回了什么?) → Thought(基于新信息,下一步做什么?) → Action(继续调用工具...) → ...重复直到任务完成 → Final Answer(汇总输出)
一个实例:Agent帮用户查天气并推荐穿衣
Thought: 用户问"明天适合穿什么",我需要先知道明天的天气。
Action: web_search("北京 2026-07-05 天气预报")
Observation: 明天北京晴,18-32°C,微风
Thought: 晴天气温32°C,炎热。推荐轻薄透气衣物。
Final Answer: 明天北京晴,最高32°C。建议穿短袖T恤+薄长裤,带遮阳帽,防晒霜别忘了。
ReAct vs 其他模式
- vs 纯推理:纯推理可能瞎猜,ReAct会主动查资料
- vs 纯工具链:纯工具链死板执行,ReAct动态调整策略
- vs CoT:CoT只推理不动手,ReAct边推理边动手
Agent实战
- 工具描述要写清楚:每个工具干什么、输入输出格式是什么
- Observation要结构化:JSON格式方便下一轮Thought解析
- 设置最大循环次数:防止Agent陷入"想→做→想→做"死循环