
ReAct和Plan & Solve谁更强?一文讲透AI Agent工作流设计模式 原创
随着大模型技术的飞速发展,越来越多的开发者开始构建自己的AI Agent系统。但很多人发现,光有一个强大的LLM还不够——如何让AI像人一样思考、计划、执行任务,并不断优化自己的行为,才是真正的挑战。
这就引出了今天我们要聊的话题:AI Agent的工作流设计模式(Workflow Design Patterns)。
这些模式不是凭空想象出来的,而是来自对人类思维过程的模拟与抽象,它们决定了Agent是“机械地完成指令”,还是“智能地解决问题”。
AI Agent到底是怎么工作的?
我们先来回顾一下什么是AI Agent。
简单来说,一个基于大语言模型(LLM)的AI Agent,通常包括以下几个核心组件:
- Prompt模板:指导模型如何思考和输出。
- 工具调用能力:比如搜索、计算、数据库查询等。
- 记忆机制:记住之前的交互历史或状态。
- 决策流程:如何一步步完成复杂任务。
而工作流设计模式,就是用来定义这个“决策流程”的框架。
不同的模式,对应着不同的思维方式和任务处理策略。
我们把主流模式分为两大类:反思型 和 规划型
一、反思型(Reflection-focused)
这类模式强调Agent在执行过程中不断“回头看”,通过评估过去的行为,优化未来的决策。
有点像学生写完作业后,老师给出反馈,学生再修改——是一个不断迭代、提升的过程。
1. 基础反思(Basic Reflection)
就像上面说的学生和老师的关系:
- 学生(Generator)生成答案;
- 老师(Reflector)检查并给出反馈;
- 学生根据反馈进行修正。
这种模式适用于需要反复优化结果的场景,比如写文章、解题、代码生成等。
2. Reflexion:带强化学习的反思机制
它在基础反思的基础上加入了“打分”机制。每次Agent完成一个步骤后,系统会评估其表现,并决定是否继续、重做或者调整策略。
这相当于给AI装上了“自我评价系统”,让它能像人一样意识到错误并改正。
3. 树搜索+反思(LATS)
LATS = Tree Search + ReAct + Plan & Solve + Reflection + Reinforcement Learning
听起来很复杂,其实它的本质是:一边探索多种可能路径,一边反思哪条路最靠谱。
比如你在迷宫中寻找出口,每走一步都要回头看看是不是死胡同,同时尝试其他分支。
LATS非常适合用于复杂的逻辑推理任务,如数学证明、编程调试等。
4. 自我发现(Self-Discovery)
这是目前最具“元认知”意味的一种模式。它要求Agent不仅知道怎么做,还要理解“为什么这么做”。
Self-Discovery鼓励模型深入分析任务结构,识别关键环节,并在执行过程中动态调整策略。
二、规划型(Planning-focused)
这类模式更注重事前准备和步骤拆解,适合处理那些需要多个阶段协同完成的任务。
1. ReAct 模式(Reason + Act)
ReAct 是最早期也是最经典的AI Agent设计模式之一。
它的核心思想是:边想边做,边做边学。
以找笔为例:
- 想法(Thought):我应该去笔筒里找;
- 行动(Action):打开笔筒;
- 观察(Observation):没找到,继续下一个地方。
ReAct 的优势在于灵活应变,缺点是对长期目标缺乏整体把控。
✅ 适用场景:需要即时反馈的任务,比如客服对话、实时问答、游戏控制等。
2. Plan & Solve 模式
顾名思义,先规划,再执行。
举个例子:你要泡一杯拿铁。
- 计划:买豆子 → 磨豆 → 烘焙 → 冲泡;
- 执行:每一步都检查材料是否齐全;
- 调整:如果发现牛奶没了,临时加一步“去买牛奶”。
这种模式更适合处理多步骤、依赖性强、容易变化的任务。
✅ 适用场景:自动化流程、项目管理、任务调度等。
3. REWOO:无需显式观察的推理
REWOO 是 ReAct 的简化版。它省略了“观察”这一独立步骤,改为在后续执行中隐含处理。
换句话说,每个动作都会自动“看到”上一步的结果,不需要单独记录。
✅ 优点:流程更简洁,效率更高。
4. LLM Compiler:并行调用函数的编译器式流程
这个名字来源于计算机中的“编译器”概念。
它允许Agent一次性调用多个工具,而不是按顺序一个个执行。
例如:用户问:“AWS Glue 和 MWAA 有什么区别?”LLM Compiler 会同时搜索两个服务的信息,然后整合成对比结果。
✅ 优点:大幅提高执行效率,特别适合信息检索类任务。
5. Storm:写长文也能自动化!
Storm 是一种专门用于生成高质量长文本的模式。
它的工作流程如下:
- 使用外部工具搜集资料;
- 生成文章大纲;
- 分段撰写每一部分内容;
- 最后整合成一篇完整的文章。
这就像你写论文时的思路:先查文献 → 列提纲 → 分章节写 → 最后润色。
✅ 适用场景:新闻稿撰写、百科词条、市场报告等。
如何选择适合你的Agent模式?
不同任务类型,适合不同的工作流模式。我们可以从以下几个维度来判断:
维度 | 推荐模式 |
是否需要即时反馈? | ReAct |
是否涉及多步骤依赖? | Plan & Solve |
是否需要持续优化输出? | Basic Reflection / Reflexion |
是否追求执行效率? | LLM Compiler |
是否要写长篇内容? | Storm |
是否需探索多种路径? | LATS |
当然,实际开发中往往是混合使用几种模式,打造一个更强大、更灵活的AI Agent。
实战案例:用Plan & Solve写一篇产品评测
假设我们要做一个“手机对比评测”的AI Agent,可以这样设计:
- Planner:列出评测维度(性能、续航、拍照、价格);
- Executor:调用API获取各型号参数;
- Replanner:发现某个型号数据缺失,重新补充;
- Summarizer:汇总数据,生成结论。
整个流程既保证了结构化,又能应对突发情况,还能输出高质量内容。
总结
AI Agent 工作流设计模式,本质上是在模仿人类的认知过程。
从最初的 ReAct 到现在的 LATS、Storm,这些模式让我们看到了AI在自主性、适应性和创造性方面的巨大潜力。
如果你正在构建自己的Agent系统,不妨从以下几点入手:
- 明确任务目标和流程结构;
- 选择合适的模式组合;
- 不断迭代优化提示词和工具接口;
- 加入反思机制,让AI越用越聪明。
未来属于那些懂得如何“教AI思考”的人。
本文转载自Halo咯咯 作者:基咯咯
