智能体Agent的经典构建方式:ReAct、Plan-and-Solve和Reflection

智能体Agent的经典构建方式:ReAct、Plan-and-Solve和Reflection

ReAct由Shunyu Yao在2022年提出,核心思想是模仿人类解决问题的过程,将推理和行动明确结合起来,形成”思考-行动-观察”的循环。

在ReAct出现之前,主要方法分两类:一类是”纯思考”型,比如思维链,能引导模型进行复杂推理,但无法与外部交互,容易产生错误信息;另一类是”纯行动”型,模型直接输出要执行的动作,但缺少规划和纠正错误的能力。

ReAct巧妙之处在于认识到思考和行动是互相促进的。思考指导行动,行动结果又反过来修正思考。为此,ReAct通过特定的提示方式来引导模型,让每一步输出都遵循固定模式:

思考 Agent 智能体 (Thought):
这是智能体的”内心想法”。它会分析当前情况、分解任务、制定下一步计划,或者反思上一步结果。

行动 (Action):
这是智能体决定采取的具体动作,通常是调用外部工具,比如Search[‘华为最新款手机’]。

观察 (Observation):
这是执行行动后从外部工具返回的结果,比如搜索结果的摘要或api的返回值。

  1. 需要外部知识的任务:查询实时信息(天气、新闻、股价)、搜索专业领域知识
  2. 需要精确计算的任务:把数学问题交给计算器工具,避免大语言模型的计算错误
  3. 需要与API交互的任务:操作数据库、调用服务API完成特定功能


Plan-and-Solve,顾名思义,这种模式将任务处理明确分为两个阶段:先规划,后执行。核心目的是解决思维链在处理多步骤、复杂问题时容易”跑偏”的问题。与ReAct将思考和行动融合在每一步不同,Plan-and-Solve将整个流程分成两个核心阶段:

规划阶段 (Planning Phase):
首先,智能体接收用户的完整问题。第一个任务不是直接去解决问题或调用工具,而是将问题分解,制定出清晰、分步骤的行动计划。

执行阶段 (Solving Phase):
获得完整计划后,智能体进入执行阶段。它会严格按照计划中的步骤,逐一执行。每一步的执行都可能是一次独立的大语言模型调用,或者是对上一步结果的加工处理,直到计划中所有步骤都完成,最终得出答案。

  1. 多步数学应用题:需要先列出计算步骤,再逐一求解
  2. 需要整合多个信息源的报告撰写:需要先规划好报告结构,再逐一填充内容
  3. 代码生成任务:需要先构思好函数、类和模块的结构,再逐一实现


Reflection机制的核心思想是为智能体引入事后自我校正的循环,让它能像人类一样,检查自己的工作,发现不足,并进行迭代优化。核心工作流程可以概括为三步循环:执行 → 反思 → 优化。

执行 (Execution):
首先,智能体用熟悉的方法(如ReAct或Plan-and-Solve)尝试完成任务,生成初步的解决方案或行动轨迹。可以看作是”初稿”。

反思 (Reflection):
接着,智能体进入反思阶段。它会调用一个独立的、或者有特殊提示的大语言模型实例,扮演”评审员”角色。这个”评审员”会检查第一步生成的”初稿”,从多个角度评估:

  • 事实错误:是否有与常识或已知事实不符的内容?
  • 逻辑漏洞:推理过程是否有不连贯或矛盾的地方?
  • 效率问题:是否有更直接、更简洁的方法来完成任务?
  • 遗漏信息:是否忽略了问题的某些关键约束或方面?

根据评估,生成结构化的反馈,指出具体问题和改进建议。

优化 (Refinement):
最后,智能体将”初稿”和”反馈”作为新的上下文,再次调用大语言模型,要求它根据反馈内容修正初稿,生成更完善的”修订稿”。

Reflection机制是典型的”用成本换质量”策略。非常适合对最终结果的质量、准确性和可靠性有极高要求,且对任务完成的实时性要求相对宽松的场景。

  1. 生成关键的业务代码或技术报告
  2. 科学研究中的复杂逻辑推演
  3. 需要深度分析和规划的决策支持系统



  1. 简单交互任务:用ReAct模式
    • 实时查询
    • 简单信息获取
    • 快速响应场景
  2. 结构化任务:用Plan-and-Solve模式
    • 项目规划
    • 代码生成
    • 报告撰写
  3. 高质量要求任务:用Reflection模式
    • 重要文档编写
    • 关键代码审查
    • 复杂问题求解
  4. 混合使用:根据任务类型灵活组合
    • 先用Plan-and-Solve制定计划
    • 用ReAct执行具体步骤
    • 用Reflection检查和优化结果

三种智能体构建方式各有特点,适用于不同场景:

  • ReAct:适合需要与外部交互的实时任务
  • Plan-and-Solve:适合结构化的复杂任务
  • Reflection:适合对质量要求极高的关键任务

理解这些模式的特点和适用场景,能帮助你设计出更智能、更可靠的AI应用系统。在实际开发中,可以根据具体需求选择合适的模式,或者组合使用多种模式,达到最佳效果。

本文内容仅供个人学习、研究或参考使用,不构成任何形式的决策建议、专业指导或法律依据。未经授权,禁止任何单位或个人以商业售卖、虚假宣传、侵权传播等非学习研究目的使用本文内容。如需分享或转载,请保留原文来源信息,不得篡改、删减内容或侵犯相关权益。感谢您的理解与支持!

链接: https://fly63.com/article/detial/13258

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:Ai探索者,转载请注明出处:https://javaforall.net/235797.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月16日 下午1:58
下一篇 2026年3月16日 下午1:58


相关推荐

关注全栈程序员社区公众号