Agents 课程文档

思考:内部推理和 Re-Act 方法

Hugging Face's logo
加入 Hugging Face 社区

并获得增强的文档体验

开始

思考:内部推理和 Re-Act 方法

在本节中,我们将深入探讨 AI Agent 的内部运作方式——其推理和计划能力。我们将探索 Agent 如何利用其内部对话来分析信息,将复杂问题分解为可管理的步骤,并决定下一步采取什么行动。此外,我们还将介绍 Re-Act 方法,这是一种提示技术,鼓励模型在行动前“逐步思考”。

思考代表 Agent 解决任务的内部推理和计划过程。

这利用 Agent 的大型语言模型 (LLM) 能力来分析提示中呈现的信息。

可以将其视为 Agent 的内部对话,Agent 在其中考虑手头的任务并制定策略。

Agent 的思考负责访问当前的观察结果并决定下一步应该采取什么行动。

通过这个过程,Agent 可以将复杂问题分解为更小、更易于管理的步骤,反思过去的经验,并根据新信息不断调整其计划。

以下是一些常见思考的示例

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

注意:对于为函数调用微调的 LLM,思考过程是可选的。如果您不熟悉函数调用,将在“行动”部分提供更多详细信息。

Re-Act 方法

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

ReAct 是一种简单的提示技术,它在让 LLM 解码下一个 token 之前附加“让我们逐步思考”。

事实上,提示模型“逐步思考”会鼓励解码过程朝向生成计划而不是最终解决方案的下一个 token,因为模型被鼓励将问题分解为子任务。

这允许模型更详细地考虑子步骤,这通常比直接尝试生成最终解决方案减少错误。

ReAct
(d)是我们提示“让我们逐步思考”的 Re-Act 方法的一个示例
我们最近看到了对推理策略的浓厚兴趣。这就是 Deepseek R1 或 OpenAI 的 o1 等模型背后的原理,这些模型经过微调以“先思考再回答”。

这些模型经过训练,始终包含特定的思考部分(用 <think></think> 特殊 token 括起来)。这不仅仅是一种像 ReAct 这样的提示技术,而是一种训练方法,模型在分析了数千个示例后学会生成这些部分,这些示例展示了我们期望它做什么。


现在我们更好地理解了思考过程,让我们更深入地了解过程的第二部分:行动。

< > 在 GitHub 上更新