#
思维机制：内部推理与 ReAct 方法

> 本节将深入探讨 AI 智能体的内部运作机制——其推理与规划能力。我们将解析智能体如何通过内部对话分析信息，将复杂问题分解为可管理的步骤，并决策下一步行动。同时介绍 ReAct 方法，是一种鼓励模型在行动前”逐步思考”的提示技术。

思维（Thought）代表着智能体解决任务的内部推理与规划过程。

这利用了智能体的大型语言模型 (LLM) 能力来分析其 prompt 中的信息。

可将其视为智能体的内部对话，在此过程中它会考量当前任务并制定应对策略。

智能体的思维负责获取当前观察结果，并决定下一步应采取的行动。

通过这一过程，智能体能够将复杂问题分解为更小、更易管理的步骤，反思过往经验，并根据新信息持续调整计划。

以下是常见思维模式的示例：

思维类型 | 示例
--- | ---
Planning（规划） | “I need to break this task into three steps: 1) gather data, 2) analyze trends, 3) generate report”（“我需要将任务分解为三步：1）收集数据 2）分析趋势 3）生成报告”）
Analysis（分析） | “Based on the error message, the issue appears to be with the database connection parameters”（“根据错误信息，问题似乎出在数据库连接参数”）
Decision Making（决策） | “Given the user’s budget constraints, I should recommend the mid-tier option”（“考虑到用户的预算限制，应推荐中端选项”）
Problem Solving（问题解决） | “To optimize this code, I should first profile it to identify bottlenecks”（“优化此代码需先进行性能分析定位瓶颈”）
Memory Integration（记忆整合） | “The user mentioned their preference for Python earlier, so I’ll provide examples in Python”（“用户先前提到偏好 Python，因此我将提供 Python 示例”）
Self-Reflection（自我反思） | “My last approach didn’t work well, I should try a different strategy”（“上次方法效果不佳，应尝试不同策略”）
Goal Setting（目标设定） | “To complete this task, I need to first establish the acceptance criteria”（“完成此任务需先确定验收标准”）
Prioritization（优先级排序） | “The security vulnerability should be addressed before adding new features”（“在添加新功能前应先修复安全漏洞”）

> 注意： 对于专为 function-calling 微调的 LLMs，思维过程是可选的。 若您不熟悉 function-calling 概念，后续”行动”章节将提供详细说明。

##
ReAct 方法

核心方法是 ReAct 方法，即”推理”（Reasoning/Think）与”行动”（Acting/Act）的结合。

ReAct 是一种简单的提示技术，在让 LLM 解码后续 token 前添加”Let’s think step by step”（让我们逐步思考）的提示。

通过提示模型”逐步思考”，可以引导解码过程生成计划而非直接输出最终解决方案，因为模型被鼓励将问题分解为子任务。

这种方法使模型能够更详细地考虑各个子步骤，通常比直接生成最终方案产生更少错误。

图 (d) 展示了 ReAct 方法示例，我们通过"Let's think step by step"提示模型

> 近期推理策略受到广泛关注，这体现在 Deepseek R1 或 OpenAI 的 o1 等模型的开发中。这些模型经过微调，被训练为”先思考再回答”。

> 它们通过特殊标记（`<thought>` 和 `</thought>`）来界定 思考 部分。这不仅是类似 ReAct 的提示技巧，更是通过分析数千个示范案例，让模型学习生成这些思考段的训练方法。

现在我们已经深入理解了思维过程，接下来将更深入探讨流程的第二部分：行动。

Update on GitHub