PostgreSQL码农集散地

AI论文解读 | 推理与行动, ReAct

本期播客

AI论文解读 | 推理与行动, ReAct

1 前置知识

《REACT: SYNERGIZING REASONING AND ACTING IN LANGUAGE MODELS》这篇论文属于人工智能、自然语言处理和大语言模型(LLM)领域的前沿研究。为了更好地理解它,你需要掌握以下几个核心基础知识:


1. 大语言模型(LLM, 如GPT)

概念

  • 大语言模型是一种通过大量语料库训练出来的深度神经网络,能理解和生成类似人类的自然语言。
  • 它们通常采用“自回归模型”结构,通过预测下一个词来生成文本。

图示

输入文本 → [神经网络] → 输出文本  

2. 推理(Reasoning)与行动(Acting)

推理(Reasoning)

  • 指模型根据给定输入,进行思考、分析和逻辑推断,得出结论或中间结果。
  • 例:解数学题时,逐步写出计算过程。

行动(Acting)

  • 指模型不仅产生文本,还能与外部环境交互,采取“行动”来获取信息或改变外部状态。
  • 例:遇到不会的知识点,模型可以主动去“查资料”或调用工具。
       ┌───────────────┐  
输入 → │    推理      │ → 输出/行动  
       └─────┬─────────┘  
             │  
         ┌───▼────┐  
         │ 行动   │(如查资料、调用API等)  
         └────────┘  

3. Chain-of-Thought(思维链)推理

  • 让模型“像人一样”分步思考,写出中间推理过程,而不是直接给出最终答案。
  • 这种方式可以提高复杂问题的解题能力。
问题 → 步骤1 → 步骤2 → … → 答案  

4. 工具增强(Tool-augmentation)

  • LLM不仅生成文本,还能调用外部工具(如搜索引擎、计算器、API等)。
  • 通过“行动”获取新信息,弥补只靠已有知识的局限。

图示

           ┌──────────────┐  
           │  语言模型    │  
           └─────┬────────┘  
                 │  
    ┌────────────┴─────────────┐  
    │   工具(搜索、计算器等)  │  
    └──────────────────────────┘  

5. Agent(智能体)与环境交互

  • “Agent”指具备自主决策和行动能力的系统。
  • 在LLM应用中,Agent能自主判断何时需要“推理”,何时需要“行动”,并与环境(如互联网、数据库等)交互。

简易流程图

[输入] → [Agent决策]  
         │  
   ┌─────┴─────┐  
 [推理]      [行动]  
   │           │  
[中间结果]  [环境反馈]  
   └─────┬─────┘  
      [继续决策]  

6. Prompt Engineering(提示工程)

  • 指如何设计输入(prompt),引导模型按预期方式(如分步推理、调用工具)工作。
  • 这在REACT框架中尤为重要,因为它结合了“Reasoning+Acting”。

7. 通用AI/强化学习基础

  • 了解AI Agent与环境的“观测-决策-行动-反馈”循环。
  • 强化学习里Agent通过与环境互动,不断优化决策策略。

小结

理解REACT论文,需先掌握:

  • 大语言模型基本原理
  • 推理与行动的区别及结合
  • 思维链推理(Chain-of-Thought)
  • 如何让模型调用外部工具
  • Agent决策与环境交互流程
  • 提示工程的设计方法
  • 通用AI/强化学习的Agent-环境交互思想

如有某一部分不清楚,欢迎随时提问!

2 解读论文

通俗解读《REACT: SYNERGIZING REASONING AND ACTING IN LANGUAGE MODELS》

一、论文核心问题

传统的大语言模型(如GPT)虽然善于推理(Reasoning),但遇到知识盲点或外部世界信息时,会变“纸上谈兵”。而“工具增强”模型可以调用工具(如搜索、计算器),但容易“盲动”或“乱查”,缺乏深思熟虑。

REACT提出:能不能让模型“边思考边动手”,像人一样既推理又行动,彼此协同,解决更复杂、更现实的问题?


二、REACT的核心思想

1. Reasoning + Acting 联合作业

  • Reasoning(推理):模型内在的分步思考,写出推理链。
  • Acting(行动):模型调用工具、查资料、执行外部操作。
图:REACT的工作流程
┌──────────────┐  
│  用户问题    │  
└──────┬───────┘  
       │  
       ▼  
┌──────────────┐  
│  REACT Agent │  
└──────┬───────┘  
       │  
  ┌────┴─────┐  
  │  推理    │  
  │ (Reason) │  
  └────┬─────┘  
       │  
  ┌────▼─────┐  
  │  行动    │  
  │ (Act)    │  
  └────┬─────┘  
       │  
  ┌────▼─────┐  
  │  获取新信息 │  
  └────┬─────┘  
       │  
     回到推理  

2. Prompt设计——如何让模型“边想边查”

REACT设计了一种特殊的Prompt模板,强制模型每一步都要先说明“我为什么要查”,再写明“我要查什么”:

  • Thought(思考):写出当前的推理理由。
  • Action(行动):决定接下来做什么,例如“搜索”、“计算”或“输出答案”。
  • Observation(观测):外部工具返回的结果。
  • 反复循环:直到问题被解决。
示意流程
问题 → Thought1 → Action1 → Observation1 → Thought2 → Action2 → ... → 最终答案  

三、REACT是如何协同推理与行动的?

1. 例子一:知识盲点查资料

问题:2023年奥斯卡最佳影片是谁?

REACT流程:

  1. Thought:我需要知道2023年奥斯卡最佳影片得主。
  2. Action:用搜索工具查找“2023年奥斯卡最佳影片”。
  3. Observation:返回“瞬息全宇宙”。
  4. Thought:根据搜索结果,答案是“瞬息全宇宙”。
  5. Action:输出答案。

2. 例子二:复杂推理分步查信息

问题:2020年中国GDP比2019年高还是低?增长了多少?

REACT流程:

  1. Thought:我需要2020年和2019年的中国GDP数据。
  2. Action:查找“2019年中国GDP”。
  3. Observation:2019年中国GDP为XX万亿元。
  4. Thought:已得2019年数据,还需2020年数据。
  5. Action:查找“2020年中国GDP”。
  6. Observation:2020年中国GDP为YY万亿元。
  7. Thought:有了两年数据,可以对比和计算增长。
  8. Action:计算增长量和增速。
  9. Observation:输出“增长了ZZ,增速为PP%”。

四、REACT的优点与创新

1. 灵活自主

  • 解决“模型不知道就瞎编”与“工具用得不明不白”的问题。
  • 每一步既有理由(推理),又有行动(查证),更像人类思维。

2. 透明可追溯

  • 分步显示推理过程和每次行动,便于人类检查与纠错。

3. 更强问题解决能力

  • 能处理需要外部信息和多步推理的问题,适应现实复杂任务。

五、REACT与传统方法对比

方式
能力
局限性
仅推理(CoT)
分步思考
知识盲点时会“编造”
仅行动(Action)
获取最新信息
行动盲目、缺乏策略
REACT
推理+行动+协同
设计Prompt较复杂

六、REACT的实际应用场景

  • 智能问答机器人
  • 自动化数据分析助理
  • 具备外部工具调用能力的AI助手
  • 复杂知识检索与推理场景

七、总结

REACT让大语言模型既能“像专家一样思考”,又能“像助手一样动手”,二者协同,让AI真正成为高效、可靠的问题解决者。


附加小图示:REACT与传统模型的认知路径对比

仅推理  
[问题] → [推理1] → [推理2] → [输出]  
             ↓    知识盲点  
           [虚构]  

仅行动  
[问题] → [查资料1] → [查资料2] → [输出]  
             ↓    没有策略  
           [冗余查找]  

REACT  
[问题] → [推理1] → [查资料] → [推理2] → [查资料] → [输出]  
        (每一步有理有据,查证及时)  

如需对论文中的实验、评价指标或实现细节进一步深入讲解,也可告知!

3 术语

《REACT: SYNERGIZING REASONING AND ACTING IN LANGUAGE MODELS》重要术语详解


1. Reasoning(推理)

定义
Reasoning 指模型对问题进行逻辑分析、分步思考和中间推断,模仿人类“想一想”的过程。

图示

问题 → [推理1] → [推理2] → ... → [结论]  

举例
解数学题时,模型会写出每一步推理过程,而不是直接给答案。


2. Acting(行动)

定义
Acting 是指模型主动与外部环境交互,比如调用搜索引擎、查数据库、用计算器等,相当于“动手查证”。

图示

[模型] → [行动: 查找/搜索/计算] → [获取新信息]  

举例
遇到新知识点,模型会主动搜索资料,而不是凭空编造答案。


3. Chain-of-Thought (CoT,思维链)

定义
Chain-of-Thought 是让模型按人类的思维方式分步推理,把解决问题的全过程写出来。

图示

[输入问题]  
    ↓  
[思考1]  
    ↓  
[思考2]  
    ↓  
[最终答案]  

好处
提升模型解决复杂、多步骤问题的能力,减少“跳步”或错误推断。


4. Tool Use/Tool-Augmentation(工具增强)

定义
指模型不仅能生成文本,还能调用外部工具(如搜索、计算器、API),获取最新/更准的信息。

图示

[模型] ──→ [调用工具] ──→ [返回结果]  
   ↑                             ↓  
   └─────────────交互────────────┘  

意义
模型能弥补自身知识盲点,更精准地回答用户问题。


5. Agent(智能体)

定义
Agent 是具有自主决策和行动能力的AI实体,可以不断判断“需不需要查资料”“接下来做什么”,并与环境互动。

图示

        ┌─────────────┐  
        │  输入       │  
        └────┬────────┘  
             │  
        ┌────▼─────┐  
        │ Agent决策│  
        └────┬─────┘  
         推理/行动  ↔  环境/工具  

6. Observation(观测)

定义
模型调用工具后获得的新信息,作为下一步推理和决策的依据。

图示

[Action: 搜索] → [Observation: 搜索结果] → [继续推理]  

7. Prompt Engineering(提示工程)

定义
设计引导语言模型按预期方式工作的输入格式,通过精心构造的Prompt,让模型按“思考—行动—观测—思考...”循环。

REACT常用Prompt结构

Thought: xxx  
Action: xxx  
Observation: xxx  
...(循环)...  

8. Synergizing(协同)

定义
指推理(Reasoning)和行动(Acting)不是单独进行,而是相互促进。推理决定是否行动,行动结果反过来丰富推理,形成高效闭环。

协同流程小图解

[推理] → [决定行动] → [行动] → [观测] → [再推理] → ... → [解决问题]  

如需对某一术语再举例或更深入解释,可随时提出!

参考

https://arxiv.org/pdf/2210.03629

https://edu.aliyun.com/course/3126500/lesson/342570389

https://github.com/AlibabaCloudDocs/aliyun_acp_learning/blob/main/%E5%A4%A7%E6%A8%A1%E5%9E%8BACP%E8%AE%A4%E8%AF%81%E6%95%99%E7%A8%8B/p2_%E6%9E%84%E9%80%A0%E5%A4%A7%E6%A8%A1%E5%9E%8B%E9%97%AE%E7%AD%94%E7%B3%BB%E7%BB%9F/2_6_%E7%94%A8%E6%8F%92%E4%BB%B6%E6%89%A9%E5%B1%95%E7%AD%94%E7%96%91%E6%9C%BA%E5%99%A8%E4%BA%BA%E7%9A%84%E8%83%BD%E5%8A%9B%E8%BE%B9%E7%95%8C.ipynb

 以上内容基于DeepSeek、QwQ及诸多AI生成, 轻微人工调整, 感谢杭州深度求索人工智能、阿里云等公司. 

 AI 生成的内容请自行辨别正确性, 当然也多了些许踩坑的乐趣, 毕竟冒险是每个男人的天性.