GrowPIP
← 返回所有素材

INFO · info-20251219-075

ReAct vs CoT:两种核心Prompt Engineering技术对比

[INFO] ReAct vs CoT:两种核心Prompt Engineering技术对比

  • 时间: 2024-12-19
  • 类型: 技术原理/方法对比
  • 来源: Prompt Engineering研究
  • 置信度: 10/10
  • 标签: #ReAct #CoT #PromptEngineering #Agent #推理 #工具调用

核心区分

CoT(思维链):让模型一步一步地"想",最终得出答案。它是一个纯粹的"思考者"。

ReAct(推理+行动):让模型一边"想"一边"做"(使用工具),通过与环境互动来获取新信息。它是一个"思考者"兼"行动者"。

一、核心对比表

维度CoT (Chain-of-Thought)ReAct (Reason + Act)
核心思想模拟纯推理过程,分解问题将推理与行动结合
关键组件Thought(思考步骤)Thought + Act + Observation
工作流程线性、封闭循环、交互
信息源仅依赖模型内部知识内部知识 + 外部信息

二、关键组件详解

2.1 CoT 组件

输入 → 思考1 → 思考2 → ... → 思考N → 最终答案

单一组件:Thought(一系列推理步骤)

2.2 ReAct 组件

循环:思考 → 行动 → 观察 → 思考 → 行动 → 观察 → ... → 最终答案
组件作用
Thought(思考)决定下一步该做什么
Act(行动)执行动作(如 Search, Calculate)
Observation(观察)环境对动作的反馈结果

三、优劣势对比

3.1 CoT 的优势

优势说明
提升多步推理性能数学题、逻辑推理效果显著
可解释性强思路清晰,便于人类理解
实现简单无需外部工具接口

3.2 CoT 的局限

局限说明
知识截止日期无法获取新信息
幻觉风险可能基于过时/错误知识推理
无法验证无法事实核查

3.3 ReAct 的优势

优势说明
克服知识局限获取事实性新知识
减少幻觉通过外部验证减少错误
精确计算调用计算器等工具
更接近人类思考、查资料、再思考

3.4 ReAct 的成本

成本说明
复杂度高需要设计工具接口
延迟增加外部调用增加响应时间
依赖外部工具可用性影响结果

四、实例对比

问题:"现任英国首相是谁?他的妻子是谁?"(假设模型知识截止2023年初)

4.1 CoT 回答

思考1:我的知识截止日期是2023年初,那时英国首相是里希·苏纳克
思考2:里希·苏纳克的妻子是阿克沙塔·穆尔蒂
答案:英国首相是里希·苏纳克,妻子是阿克沙塔·穆尔蒂

问题:可能是过时的错误答案

4.2 ReAct 回答

思考1:需要确认当前首相,我的知识可能不是最新的
行动1:Search("current UK Prime Minister")
观察1:[搜索结果:基尔·斯塔默,2024年7月当选]

思考2:现任首相是基尔·斯塔默,需要查找他的妻子
行动2:Search("Keir Starmer wife")
观察2:[搜索结果:维多利亚·斯塔默,NHS律师]

思考3:信息完整,可以回答
答案:现任首相是基尔·斯塔默,妻子是维多利亚·斯塔默

优势:通过行动获取最新信息,给出正确答案

五、应用场景适配

5.1 适合 CoT 的场景

场景原因
数学应用题纯逻辑推理,无需外部信息
逻辑谜题封闭域问题
常识问答答案在模型知识库内
代码逻辑推理分析已给定的代码

5.2 适合 ReAct 的场景

场景原因
开放域问答尤其涉及最新事件
工具使用任务需要调用API(天气、计算等)
事实核查需要验证信息真实性
交互式决策需要实时反馈

六、关系总结

6.1 层次关系

ReAct = CoT + Act + Observation
         ↓
    ReAct是CoT的扩展和增强

6.2 互补而非替代

情况选择
答案在内部知识库 + 主要依赖逻辑CoT(更简单高效)
需要外部事实信息ReAct(必不可少)

6.3 与AI Agent的关系

ReAct 是构建AI代理(Agent)的核心范式

AI Agent = 自主执行"思考→行动→观察"循环的系统

七、核心公式

思维模式对比

CoT:   Answer = f(Reasoning(Input))
ReAct: Answer = f(Reasoning(Input) + Actions(Tools) + Observations(World))

能力边界

CoT能力边界 = 模型内部知识 × 推理能力
ReAct能力边界 = (模型内部知识 + 外部工具能力) × 推理能力

与知识库的关联

与INFO-061的直接关联

INFO-061 讨论的 Claude Code Agentic Loop 正是 ReAct 的工程实现:

ReAct概念Claude Code实现
ThoughtLLM推理环节
Act工具调用(Read, Write, Bash等)
Observation工具返回结果
循环while(true) 直到任务完成

与INFO-054的呼应

INFO-054 的 PPLA循环(Perceive-Plan-Learn-Act)是 ReAct 在更高抽象层面的表达:

ReActPPLA
ObservationPerceive(感知)
ThoughtPlan(规划)
ActAct(行动)
多轮积累Learn(学习)

与INFO-060的技术链

INFO-060 讨论的 Prompt Engineering 正是 CoT 和 ReAct 所属的技术领域:

Prompt Engineering
       ├── CoT(推理增强)
       ├── ReAct(推理+行动)
       ├── Few-shot(示例学习)
       └── 结构化Prompt(格式规范)

与INFO-066的战略呼应

INFO-066 提出的 "AI驾驶舱" 概念:

  • CoT = 自动驾驶的路径规划
  • ReAct = 自动驾驶 + 实时感知 + 动态调整
  • 人类 = 驾驶舱中的决策者,设定目标和边界

核心金句

CoT让模型学会了"思考",而ReAct让模型在思考的基础上学会了"动手"和"查资料"。

关联

  • 相关: INFO-20251219-061(Claude Code / Agentic Loop)
  • 相关: INFO-20251219-054(Option-Based Agent / PPLA循环)
  • 相关: INFO-20251219-060(Prompt & Context Engineering)
  • 相关: INFO-20251219-066(AI驾驶舱)
  • 相关: INFO-20251219-073(Transformer数学框架/推理基础)
  • 触发规则: -
  • 待验证: 不同场景下CoT与ReAct的效率对比