news 2026/7/19 4:46:09

【思考】为什么我的场景需要Agent,而不是Workflow?

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【思考】为什么我的场景需要Agent,而不是Workflow?

随着学习的深入,我越发觉得技术的“不值钱”,在技术爆炸的时代,知道“为什么要用agent实现功能”远比“怎么实现一个agent功能”更有价值。所以我不得不停下来重新审视自己的设计和认知,在读了两篇agent领域的“圣经”(Anthropic的《Building effective agents》和OpenAI的《A practical guide to building agents》)后,简单记录下自己的心得。

在开始任何一个Agent项目之前,有一个问题值得先想清楚:我的场景真的需要Agent吗?

这不是一个哲学问题,而是一个工程决策。Anthropic在《Building effective agents》中开篇就给出了一个非常务实的建议:“找到尽可能最简单的解决方案,仅在必要时才增加复杂度”。OpenAI的《A practical guide to building agents》也表达了类似的立场:在决定构建Agent之前,先验证你的用例是否明确符合某些标准,否则确定性方案可能就足够了

那么,什么情况下“确定性方案不够”,什么情况下“Agent是更好的选择”?答案藏在两个概念的本质区别里。

Workflow vs Agent:本质区别在哪里?

Anthropic给出了一个非常清晰的定义:

Workflow是通过预定义的代码路径来编排LLM和工具的系统。而Agent是LLM动态地指导自己的流程和工具使用,保持对如何完成任务的控制权。

OpenAI的定义同样直白:

Workflow是为了达成用户目标而必须执行的一系列步骤。而Agent是能够以高度独立性代表用户执行同样工作流的系统。

用一句话概括:Workflow是“铺好轨道的火车”,Agent是“自己认路的司机”。

在Workflow中,每一步做什么、调用什么工具、如何处理结果,都是开发者事先写死的。LLM只是在每个节点上执行一个具体的子任务,比如“总结这段文本”或“判断这个分类”。而在Agent中,LLM拥有对流程的控制权——它自己决定下一步做什么、用什么工具、何时停止。

什么时候该用Workflow?

Anthropic明确指出,Workflow的适用场景是任务明确、步骤可预测的情况。

具体来说,以下几种模式非常适合用Workflow实现:

1.并行化:将同一个任务拆分成多个独立的子任务,让多个LLM同时处理。比如同时用多个prompt审查代码漏洞,或者评估内容是否违规。每个子任务之间没有依赖关系,可以并行执行。

2.路由:根据输入内容将任务路由到不同的后续流程。比如客户服务场景中,根据用户的问题类型(退货、咨询、投诉)走不同的处理路径。

3.Orchestrator-Workers:由一个中央LLM动态分解任务,分发给多个Worker LLM执行,最后汇总结果。适用场景包括需要对多个文件做复杂修改的编码任务,或需要从多个来源搜集信息的搜索任务。

4.Evaluator-Optimizer:一个LLM生成答案,另一个LLM进行评估和反馈,形成迭代优化循环。适用于文学翻译、复杂搜索等需要多轮打磨的任务。

这些场景的共同点是:虽然可能涉及多个LLM调用,但整体的流程结构是预先定义好的**。Orchestrator虽然会“动态”决定分配什么子任务,但它本身的职责和位置是固定的。

什么时候该用Agent?

Agent的用武之地,恰恰是Workflow力不从心的地方。

Anthropic给出的判断标准非常精炼:

Agent适用于开放式问题——那些难以或不可能预测所需步骤数量,且无法硬编码固定路径的场景。

OpenAI的表述异曲同工:

Agent特别适合那些传统确定性方法和基于规则的方法无法奏效的工作流。

1. 复杂决策

工作流涉及细微的判断、大量的例外情况或高度依赖上下文的决策。比如客服场景中的退款审批——要不要退、退多少、需不需要人工介入,这些决策没有固定的“如果-那么”规则可以覆盖。

2. 难以维护的规则系统

系统已经因为规则过于庞杂而变得臃肿不堪,任何修改都可能导致意料之外的连锁反应。比如供应商安全审查,涉及的判断维度可能多达数十项,且不断变化——用规则引擎维护会是一场噩梦。

3. 重度依赖非结构化数据

场景涉及自然语言理解、从文档中提取语义、或与用户进行对话式交互。比如处理房屋保险理赔,需要理解事故描述、评估损失、对照保单条款——这些都不是结构化数据能简单承载的。

Anthropic还给出了一个更实操的判断维度:

Agent可以处理复杂的任务,但它们的实现通常很直接——本质上就是LLM在循环中根据环境反馈使用工具。关键在于,你必须对LLM的决策有一定程度的信任,并且Agent的自主性意味着更高的成本和潜在的复合错误风险。

总结来说

| 维度 | 用 Workflow | 用 Agent |
| 步骤是否可预测 | 是,路径清晰 | 否,开放式 |
| 是否需要硬编码 | 可以,且应该 | 不能 |
| 决策复杂度 | 低到中,规则明确 | 高,需要推理和判断 |
| 对LLM信任度要求 | 低,LLM只做局部任务 | 高,LLM掌控全局 |
| 成本与延迟 | 可控、可预测 | 较高、不确定 |
| 适用场景示例 | 代码审查、内容审核、翻译优化 | 自主编码、复杂搜索、客服决策 |

OpenAI在指南中还给出了一个非常有价值的实践经验:

客户通常在“增量式方法”上取得更大的成功——先最大化单个Agent的能力,只有在单Agent无法满足需求时,才考虑拆分为多Agent系统。

这意味着,即使你判断自己的场景需要Agent,也不要一上来就构建复杂的多Agent架构。从一个简单的单Agent开始,给它逐步增加工具,保持复杂度可控。只有当单Agent的prompt变得过于臃肿、工具选择频繁出错时,再考虑拆分为多个专业Agent。

Anthropic也给出了类似的提醒:很多框架会诱使你增加不必要的复杂度,而一个更简单的方案往往就足够了。建议开发者从直接使用LLM API开始,很多模式用几行代码就能实现。

回到最初的问题

所以,“我的场景为什么需要Agent,而不是普通Workflow?”

1. 如果你的任务步骤可预测、路径可硬编码——用Workflow,更便宜、更可靠。
2. 如果你的任务是开放式的、步骤不确定、需要动态决策——用Agent,它能做到Workflow做不到的事。
3. 无论选哪个,从最简单的方案开始,只在必要时增加复杂度。

这是一个关于工程判断力的考验,正如Anthropic所说,最成功的实现往往不是用了最复杂的框架,而是用了简单、可组合的模式。

---

参考文献:
Anthropic, "Building effective agents" (2024)
OpenAI, "A practical guide to building agents" (2024)

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/19 4:45:47

Spring + Dubbo + Zookeeper项目依赖注入

1. 服务提供方&#xff08;Provider&#xff09;spring-service-bean.xml &#xff08;定义本地 Bean&#xff09;&#xff1a;<context:annotation-config/><!-- 定义本地 Bean --> <bean id"authService" class"com.plx.device.app.service.im…

作者头像 李华
网站建设 2026/7/19 4:44:17

打造你的专属 AI 编程空间

CodePro&#xff5c;可个性化主题的 AI 编程工作台 &#x1f680; 独特启动动画 &#x1f3a8; 自定义主题⚡ 开发积分小伙伴们&#xff0c;速度来体验吧&#xff01;&#xff01;&#xff01;

作者头像 李华
网站建设 2026/7/19 4:41:05

接口测试实战指南:从零构建系统化测试思维与项目经验

1. 项目概述&#xff1a;从“面试没项目经验”到“接口测试实战专家”的破局之路“面试官您好&#xff0c;我虽然没有实际项目经验&#xff0c;但我对接口测试的理论知识掌握得很扎实……” 这句话是不是听起来很耳熟&#xff1f;在软件测试的求职市场上&#xff0c;缺乏项目经…

作者头像 李华
网站建设 2026/7/19 4:40:37

农业生态:双碳目标下 DNDC 模型建模方法及在土壤碳储量、温室气体排放、农田减排、土地变化、气候变化中的实践技术应用

查看原文>>>https://mp.weixin.qq.com/s/j6er0yfoSQROuvdAF1mhhQ 系统介绍DNDC&#xff08;反硝化-分解模型&#xff09;这一国际主流生物地球化学循环模型的原理与多领域实践路径。内容从模型的基本操作与数据格式入手&#xff0c;逐步深入至气象、土壤、土地利用等…

作者头像 李华
网站建设 2026/7/19 4:39:30

基于Qt与FFmpeg构建跨平台音视频播放器:架构设计与工程实践

1. 项目概述&#xff1a;为什么选择QtFFmpeg来造轮子&#xff1f;做音视频播放器&#xff0c;听起来像是播放器软件公司或者流媒体大厂的核心业务&#xff0c;离我们普通开发者很远。但如果你深入接触过C客户端开发&#xff0c;尤其是需要处理多媒体内容的项目&#xff0c;比如…

作者头像 李华
网站建设 2026/7/19 4:37:57

Python实战:从零构建QQ火拼俄罗斯方块网络对战游戏

1. 项目概述&#xff1a;为什么是QQ火拼俄罗斯方块&#xff1f; 十几年前&#xff0c;当QQ游戏大厅还是我们休闲娱乐的主阵地时&#xff0c;有一款游戏以其独特的对抗性和社交性&#xff0c;在一众棋牌游戏中杀出重围&#xff0c;那就是“QQ火拼俄罗斯方块”。它和我们熟悉的单…

作者头像 李华