智能体课程文档

思考:内部推理和 ReAct 方法

Hugging Face's logo
加入 Hugging Face 社区

并获得增强的文档体验

开始使用

思考:内部推理和 ReAct 方法

在本节中,我们将深入探讨 AI 智能体的内部运作——其推理和规划能力。我们将探索智能体如何利用其内部对话来分析信息,将复杂问题分解为可管理步骤,并决定下一步采取何种行动。

此外,我们还将介绍 ReAct 方法,这是一种鼓励模型在行动前“逐步思考”的提示技术。

思考代表智能体解决任务的内部推理和规划过程

这利用了智能体的大型语言模型 (LLM) 容量,用于分析提示中提供的信息——本质上,是它在解决问题时的内心独白。

智能体的思考帮助它评估当前的观察结果并决定下一步行动。通过这个过程,智能体可以将复杂问题分解成更小、更易于管理的步骤,反思过去的经验,并根据新信息不断调整其计划。

🧠 常见思考类型的例子

思考类型 示例
规划 “我需要将此任务分解为三个步骤:1) 收集数据,2) 分析趋势,3) 生成报告”
分析 “根据错误消息,问题似乎出在数据库连接参数上”
决策 “考虑到用户的预算限制,我应该推荐中档选项”
问题解决 “为了优化此代码,我应该首先对其进行分析以识别瓶颈”
记忆整合 “用户之前提到他们喜欢 Python,所以我将提供 Python 示例”
自我反思 “我上次的方法效果不佳,我应该尝试不同的策略”
目标设定 “要完成此任务,我首先需要确定验收标准”
优先级 “应在添加新功能之前解决安全漏洞”

注意: 对于为函数调用微调的 LLM,思考过程是可选的。更多详情将在行动部分介绍。

🔗 思维链 (CoT)

思维链 (CoT) 是一种提示技术,引导模型在生成最终答案之前逐步思考问题。

它通常以

“让我们一步一步地思考。”

这种方法有助于模型内部推理,尤其是对于逻辑或数学任务,而无需与外部工具交互

✅ 示例 (CoT)

Question: What is 15% of 200?
Thought: Let's think step by step. 10% of 200 is 20, and 5% of 200 is 10, so 15% is 30.
Answer: 30

⚙️ ReAct:推理 + 行动

一个关键方法是 ReAct 方法,它结合了“推理”(思考)和“行动”(行动)。

ReAct 是一种提示技术,鼓励模型逐步思考,并在推理步骤之间穿插行动(例如使用工具)。

这使得智能体能够通过交替进行以下操作来解决复杂的、多步骤的任务:

  • 思考:内部推理
  • 行动:工具使用
  • 观察:接收工具输出

🔄 示例 (ReAct)

Thought: I need to find the latest weather in Paris.
Action: Search["weather in Paris"]
Observation: It's 18°C and cloudy.
Thought: Now that I know the weather...
Action: Finish["It's 18°C and cloudy in Paris."]
ReAct
(d) 是 ReAct 方法的一个例子,其中我们提示“让我们一步一步地思考”,模型在思考之间进行行动。

🔁 比较:ReAct 与 CoT

特性 思维链 (CoT) ReAct
逐步逻辑 ✅ 是 ✅ 是
外部工具 ❌ 否 ✅ 是(行动 + 观察)
最适合 逻辑、数学、内部任务 信息搜寻、动态多步骤任务

最近的模型,如 Deepseek R1OpenAI 的 o1,经过微调以先思考再回答。它们使用结构化标记,如 ,明确地将推理阶段与最终答案分开。

与 ReAct 或 CoT(它们是提示策略)不同,这是一种训练级技术,模型通过示例学习思考。

< > 在 GitHub 上更新