以下是主流AI Agent认知框架的详细说明、对比及表格总结:

1. 各认知框架详解
(1) ReAct (Reasoning + Action)
- 定义:结合推理(Reasoning)和行动(Action)的循环过程。
- 核心机制:
- 模型先推理(Reason)生成可能的解决方案或步骤。
- 执行(Act)具体操作(如查询工具、调用API)。
- 根据反馈结果迭代优化。
- 适用场景:需要逐步解决问题的复杂任务(如多步骤推理、工具调用)。
- 示例:用户问“纽约到巴黎的航班价格”,模型先推理需要查询航班数据,再调用API获取实时价格。
(2) 函数调用(Function Calling)
- 定义:模型通过预定义的函数接口直接调用外部工具或API。
- 核心机制:
- 模型生成符合函数参数的自然语言指令。
- 系统解析指令并调用对应函数执行。
- 适用场景:需要调用结构化工具(如数据库查询、API接口)的任务。
- 示例:调用天气API获取实时天气数据。
(3) 计划与执行(Plan-And-Execute)
- 定义:分阶段处理任务,先制定计划再执行。
- 核心机制:
- 计划阶段:模型生成详细步骤或子任务。
- 执行阶段:逐步完成每个子任务并整合结果。
- 适用场景:复杂多步骤任务(如编写代码、解决问题)。
- 示例:解决数学题时先规划解题步骤,再逐步计算。
(4) 自问自答(Self-Ask)
- 定义:模型通过生成问题并自行回答来逐步推导答案。
- 核心机制:
- 模型生成中间问题,模拟人类的思考过程。
- 逐步回答问题,最终整合答案。
- 适用场景:需要分步推理或知识补全的任务(如阅读理解、逻辑推理)。
- 示例:阅读一段文字后,自问关键细节并回答以提炼答案。
(5) 批判修正(Critique & Revise / Self-Reflection)
- 定义:模型自我检查输出并迭代优化。
- 核心机制:
- 生成初步答案:模型输出初始结果。
- 批判阶段:模型评估答案的合理性。
- 修正阶段:根据批判结果调整并重新生成。
- 适用场景:需要高准确性的任务(如写作、代码调试)。
- 示例:模型生成代码后,自我检查语法错误并修正。
(6) 思维链(Chain-of-Thought, COT)
- 定义:通过逐步展开中间推理步骤生成最终答案。
- 核心机制:
- 模型以自然语言详细描述推理过程。
- 分步骤推导,最终整合为答案。
- 适用场景:需要展示思考过程的任务(如数学题、逻辑推理)。
- 示例:解决数学题时分步写出计算过程。
(7) 思维树(Tree-of-Thought, TOT)
- 定义:通过分支探索多种可能的推理路径。
- 核心机制:
- 模型生成多个可能的中间思路(分支)。
- 评估并选择最优路径继续推理。
- 适用场景:需要探索多种可能性的任务(如创意生成、策略规划)。
- 示例:设计解决方案时生成多个分支思路并筛选最佳方案。
2. 核心差异对比
关键维度对比
框架 | 核心机制 | 是否依赖外部工具 | 是否分阶段 | 是否自我修正 | 典型输出形式 |
---|
ReAct | 推理+行动循环 | 是 | 是 | 部分(迭代) | 动态步骤结果 |
函数调用 | 直接调用函数 | 是 | 否 | 否 | 工具返回的数据 |
计划与执行 | 分阶段计划+执行 | 可选 | 是 | 否 | 结构化步骤输出 |
自问自答 | 生成问题并回答 | 否 | 是 | 否 | 分步推理过程 |
批判修正 | 自我检查+迭代优化 | 否 | 是 | 是 | 修正后的最终答案 |
思维链(COT) | 逐步展开推理过程 | 否 | 是 | 否 | 详细推理步骤 |
思维树(TOT) | 分支探索多种路径 | 否 | 是 | 否 | 多分支结果+最优选择 |
技术特点差异
- 是否需要外部工具:
- ReAct、函数调用依赖外部工具,其他框架主要依赖模型自身推理。
- 推理路径:
- 迭代能力:
- 批判修正框架具备自我迭代能力,其他框架多为单次推理。
3. 选择建议
需求场景 | 推荐框架 | 理由 |
---|
需要逐步推理并调用工具 | ReAct | 动态推理与行动结合 |
直接调用外部API或函数 | 函数调用 | 简洁高效,适合结构化任务 |
复杂多步骤任务规划 | 计划与执行 | 明确分阶段处理 |
需要展示中间思考过程 | 思维链(COT) | 详细推理过程透明 |
需要探索多种可能性 | 思维树(TOT) | 分支式探索最优解 |
需要高准确性输出 | 批判修正 | 自我检查与迭代优化 |
总结表格
框架名称 | 核心特点 | 适用场景 | 优缺点 |
---|
ReAct | 推理+行动循环 | 多步骤工具调用 | 灵活但需要工具支持;适合复杂任务 |
函数调用 | 直接调用函数 | 结构化API调用 | 简单高效;依赖工具接口 |
计划与执行 | 分阶段计划+执行 | 复杂任务规划 | 结构清晰;需明确步骤划分 |
自问自答 | 生成问题并回答 | 分步推理任务 | 思维过程透明;计算开销较大 |
批判修正 | 自我检查+迭代优化 | 高精度输出需求 | 输出质量高;需多次迭代 |
思维链(COT) | 逐步展开推理过程 | 需要展示推理过程 | 可解释性强;线性路径可能遗漏最优解 |
思维树(TOT) | 分支探索多种路径 | 需要探索多种可能性 | 创新性强;计算资源需求高 |
总结
- 工具依赖型:ReAct、函数调用 → 需结合外部工具。
- 推理过程透明:COT、Self-Ask → 适合需要解释的场景。
- 探索与优化:TOT、Critique & Revise → 多分支或高精度需求。
根据具体任务需求(如是否需要工具、推理路径、输出形式)选择合适的框架。