当前位置: 首页 > news >正文

别急着做 Agent:先判断任务有没有不确定性

很多团队第一次接触 Agent,都会产生一种冲动:既然模型已经会思考、会调用工具、会执行多步任务,那是不是可以把原来的自动化流程全部“Agent 化”?

比如用户提交一个报销单,让 Agent 判断类型、读取制度、计算金额、填写系统、提交审批、发送通知。听起来很先进。

但仔细看会发现,其中相当一部分步骤根本不需要“思考”。金额计算有公式,审批权限有规则,提交接口也固定。让 LLM 每次重新决定怎么做,只会增加成本、延迟和不可预测性。

判断一个任务该不该用 Agent,关键不是看它有多少步骤,而是看:执行过程中,到底存在多少无法提前写死的判断。

Agent 的价值,来自“下一步无法提前确定”

Anthropic 对 Workflow 和 Agent 做过一个很实用的区分:Workflow 是由预先定义的代码路径编排模型和工具;Agent 则让模型动态决定自己的执行过程和工具使用。

这个区别比“自动化程度高不高”重要得多。

假设我们要处理一份发票:

读取 PDF → 提取金额 → 校验税号 → 查询订单 → 写入财务系统。

如果每一步都确定,这就是 Workflow。即使其中“从 PDF 提取字段”使用了 LLM,整个系统仍然不需要成为 Agent。

换一个任务:

“帮我调查为什么这个客户突然停止续费,并给出下一步行动建议。”

这时路径很难提前写死。模型可能先查 CRM,再看客服记录;发现客户最近投诉后,又去查产品故障;发现真正的问题是价格,则需要进一步分析合同和历史折扣。

它必须根据中间结果不断决定下一步。

这才是 Agent 真正擅长的地方。

OpenAI 在 Agent 构建指南中也把复杂决策、大量非结构化数据,以及难以维护的复杂规则,列为更适合 Agent 的场景。

所以,一个很简单的判断方法是:

如果你能在开始执行之前,把流程图完整画出来,通常先做 Workflow。

如果很多箭头只能写成“视情况而定”,Agent 才开始有价值。

流程确定时,让 LLM 决策反而是一种浪费

假设公司规定:

订单金额低于 500 元自动退款;
500~2000 元需要主管审批;
超过 2000 元转人工。

这里需要 Agent 吗?

不需要。

因为决策规则已经完全确定。写三个if,比让模型阅读退款政策、理解订单金额、再判断应该走哪条路径更便宜,也更稳定。

很多所谓“AI Agent 项目”的问题,就出在这里:把原本确定性的程序问题,重新包装成概率性的语言模型问题。

模型可能连续一百次都判断正确,但代码可以直接保证这条规则每次一致。

而且 Agent 的自主性不是免费的。它意味着更多模型调用、工具调用、更长执行链路,以及更多可能出错的中间状态。Anthropic 也明确建议从能够解决问题的最简单方案开始,因为 Agent 往往是在用更高的成本和延迟换取灵活性。

因此,流程越稳定、规则越明确、异常越少,固定 Workflow 的优势越明显。

这并不“落后”。

恰恰说明你已经知道问题应该怎么解决。

真正好用的系统,往往是 Workflow 里嵌几个 LLM

现实中的选择通常不是:

“传统代码还是 Agent?”

更常见的是第三种方案:

大部分流程固定,只把真正模糊的步骤交给 LLM。

例如客服工单处理:

接收工单 → 判断用户意图 → 查询订单 → 检查退款条件 → 执行退款 → 通知用户。

这里“判断用户意图”很适合 LLM,因为用户可能写:

“东西我已经寄回去了,怎么钱还没到?”

也可能写:

“算了,不想要了。”

它们都可能对应退款问题,却很难靠关键词规则穷举。

但查询订单、判断是否超过退款期限、计算退款金额、修改数据库,这些事情最好继续交给代码。

于是系统变成:

LLM 负责理解,代码负责执行确定规则。

这种架构往往比“让一个 Agent 从头做到尾”更容易测试,也更容易发现问题出在哪里。

你甚至可以把它理解成公司里的分工:人负责判断那些制度没有覆盖的情况,系统负责执行已经写进制度的事情。

没有必要让经理亲自计算每张发票的税额。

判断“代码还是 LLM”,可以问五个问题

设计一个步骤时,不妨依次检查几个维度。

结果是否存在唯一正确答案?

加减乘除、日期计算、格式转换、权限检查、数据库查询,都应该优先使用代码。

如果答案允许合理差异,比如判断一封邮件的意图、总结投诉原因、评估文本风险,则更适合 LLM。

规则能否清楚写出来?

“金额超过 1000 元需要审批”,用代码。

“判断这个客户的投诉是否已经严重影响合作关系”,很难写成几十条稳定规则,更适合模型参与。

输入是不是非结构化的?

表格中的金额很好处理。

几十封邮件、会议记录、合同、聊天记录,要从中理解含义,LLM 的优势就会出现。

错误结果能不能立即验证?

写代码是一个典型例子。Agent 修改程序后,可以运行测试;失败了,再继续修改。这种“行动—观察—修正”的循环非常适合 Agent。Anthropic 对 Agent 的实践描述也反复强调这种根据环境反馈持续调整的机制。

反过来,如果系统执行错了以后很难恢复,例如直接转账、删除生产数据、签署合同,就不应该轻易把最终权限完全交给 Agent。

下一步是否依赖刚刚得到的新信息?

如果答案是“是,而且分支很多”,Agent 的价值会上升。

如果答案是“否,后面步骤早就知道”,Workflow 通常足够。

最容易犯的错,是从“我要做 Agent”开始设计

比较健康的设计顺序其实应该反过来。

先问:我要解决什么问题?

然后尝试用最简单的代码解决。

规则开始出现语义模糊时,在那个节点加入一次 LLM。

流程出现几个明确分支,就建立 Workflow。

只有当任务需要模型持续观察环境、选择工具、根据结果改变计划,而且你很难提前枚举执行路径时,再把自主权扩大成 Agent。

可以把它想成一条复杂度阶梯:

代码 → LLM 调用 → Workflow → Agent。

不是越往右越先进,而是越往右,系统获得更多灵活性,同时也承担更多成本、延迟、评估难度和风险。

尤其是 Agent。它能够调用工具、修改状态并连续执行多步任务,错误也可能沿着执行链不断累积,因此评估不能只看最后一句回答,还要关注整个执行轨迹和最终环境状态。

这也是为什么“能不能做 Agent”不是最重要的问题。

更重要的问题是:这里是否真的需要一个拥有自主决策权的系统?

下次设计 AI 自动化时,可以先做一个小练习:把整个任务画成流程图。

确定的部分,用代码锁死;需要理解语言的部分,放入 LLM;少量已知分支,用 Workflow 编排;只有那些真正无法提前确定、必须根据环境持续探索的部分,才交给 Agent。

好的 AI 系统并不是让 LLM 决定得越多越好。

真正成熟的设计,是清楚知道:哪些地方需要智能,哪些地方根本不应该让智能插手。

http://www.jsqmd.com/news/1370653/

相关文章:

  • 洛谷入门赛LGR-(-4)全解析:从零攻克算法竞赛第一关
  • strm文件打不开怎么播放?2026一键解决教程
  • 校园外卖风控接单系统开发核心技术讲解
  • Unity URP中零成本启动VR开发:使用XR Interaction Toolkit与设备模拟器
  • VSCode护眼主题配置指南:从颜色自定义到字体优化,打造类IDEA舒适编码环境
  • 网盘直链解析助手:9大平台文件直链获取完整指南
  • 成都怎么选靠谱的六边形护坡模具批发厂?认准成都万兴智造科技有限公司(成都办事处) - 品牌优推
  • WSL2与Ubuntu 22.04 LTS安装配置全攻略:从原理到实践
  • 学习稿定AI:基础操作与实战应用教程
  • 从502错误到Web安全实战:SQL注入、XSS与SSRF防御指南
  • Linux环境变量配置全解析:从PATH到.bashrc的实战指南
  • 大模型API降价10倍:技术原理、成本监控与工程实践指南
  • Unity UV动画实战:C#脚本实现水面流动与无限地面滚动
  • 通达信指标DLL加密与一机一码授权实战指南
  • Unity多层动画状态机:构建可扩展角色移动系统的工程实践
  • 知行之桥 EDI 系统 V2026 Q3 版本更新
  • React 组件性能开发短记:延迟与成本怎么记
  • SARscape D-InSAR哨兵1数据处理全流程与形变监测实战指南
  • 独立站建站技术栈全景拆解:从小白到能自己建站需要学什么?
  • Flutter高级进阶:工程化架构与性能优化实战
  • 感知模块:Agent的眼睛和耳朵 — 三层降级策略让Agent永不“失明“
  • 人均存款统计逻辑与个人财务健康评估
  • 深入Linux NVMe驱动:从模块初始化到高性能存储的基石
  • Shellcode加载器免杀技术:从原理到实战的攻防博弈
  • 最小表示法:O(n)时间解决循环字符串字典序比较的算法精讲
  • Codex+Skills+自动报告
  • Windows系统学习路线与核心技术解析
  • 超级电容与空气悬挂技术如何打造顶级舒适新能源公交车
  • 低代码与生成式 UI 工程化方案:延迟和成本怎么一起看
  • 蓝桥杯真题解析:优先队列与惰性删除在动态序列最值维护中的应用