AI 工作流还是 AI 智能体:各自到底花多少钱

一个包揽全部的 AI 智能体,几乎总是比把同一件事拆成几个窄步骤更贵。贵多少只取决于一件事:它在完成之前循环了多少轮。任务短,差别很小;任务又长又绕,智能体可能贵上二三十倍。
这是诚实的版本。不过先说我们必须收回的那个数字。
一句话要点
- 成本差距真实存在,但几乎完全取决于智能体走了多少步。
- 在一个典型客服工单上,单个智能体约 19 美分,拆分后的工作流约 2 美分。
- 打开缓存后智能体降到约 9 美分,差距缩小一半。
- 任务短或任务开放:做智能体。任务重复且形状已知:做工作流。
- 可靠性和搭建成本,通常比 token 账单更重要。
我们删掉的那句话
这篇文章早先的草稿写着:拆分后的工作流比包揽全部的智能体「便宜大约十倍」。我们把它删了。背后没有任何推算,也没有出处,只是一个听起来对的数字。
也没有干净的研究可以替代它。没人发表过同一件真实任务、用两种方式各做一遍、并把成本并排测量的结果。就连 Anthropic 自己的指南 Building Effective Agents 也只用两句话带过,且没有任何金额:智能体「以延迟和成本换取更好的任务表现」,其自主性「意味着更高的成本」。说得对,但这不是能用来做预算的数字。
所以下面的一切都从可核对的假设算出来,而不是搬用别人的标题。
智能体为什么更贵
一个概念就能解释全部。AI 模型在两次调用之间没有记忆。智能体每多走一步,就必须把整段对话重新交给它:最初的指令、所有它可能用到的工具,以及到目前为止发生的一切。
所以第一轮很便宜。第二轮重读第一轮。第三轮重读前两轮。到第八轮时,智能体是在反复付钱重读自己越堆越高的工作记录。成本不是直线相加,而是滚雪球。
拆分后的工作流没有这个雪球。每一步只拿到它需要的东西,做完,把一小份干净结果交给下一步。第四步永远不会重读第一到第三步,没有越堆越高的东西。
这就是全部机制。剩下的只是给它标上金额。
一个真实例子:客服分流
看一个常见任务。一个客服工单进来,你想给它分类、查客户账户、搜索帮助文章、起草回复,并在发出前复核。
| 方式 | 每个工单成本 |
|---|---|
| 一个包揽全部的智能体 | 约 0.19 美元 |
| 拆分后的工作流 | 约 0.023 美元 |
做成单个智能体,这个工单约 19 美分。做成工作流(四个小的 AI 步骤,加两次完全不需要 AI 的普通查询),同一个工单略高于 2 美分,大约少八倍。
差距从哪来?智能体大约要循环八轮才能走完,而每一轮重读的记录都比上一轮更厚。工作流用四个专注的步骤完成同样的实际工作,每一步都不背别人的包袱。最终回复相同,账单差别巨大。(这里的价格取自模型公开价目,你的会不一样。)
在把这八倍算进预算之前有一点要说清楚:两种方式都得写出那封真正的回复,而写作的开销两边一样。这份最终草稿占了工作流那 2 美分的很大一块,也正因如此,差距是大约八倍,而不是大约八十倍。

一次跑完的运行,逐步展开,每一步都带耗时和成本。正是这种按步骤的视图,让账单变得可解释,而不是一个总数。
主要取决于步数
八倍不是定律,它是智能体走八轮时的结果。改变轮数,整幅图景就变了。
| 智能体走的步数 | 智能体大约贵多少 |
|---|---|
| 2 | 基本持平(1.3 倍) |
| 8 | 约贵 8 倍 |
| 20 | 约贵 37 倍 |
请把这张表当作真正的标题。不附带步数的成本倍数没有意义。有人告诉你「智能体贵 10 倍」时,你的第一个问题应该是:在一个几步的任务上?
这里同样有一处要讲公平。最后一行只有在任务真的需要二十步时才算数。一个用二十轮去做干净工作流四步就能完成的事的智能体,不是贵,而是迷路了,这首先是质量问题,其次才是成本问题。
什么时候单个智能体才是对的
拆分并不总是赢,假装它总赢只是另一种推销。
| 情形 | 该做什么 | 原因 |
|---|---|---|
| 任务短,两三步 | 单个智能体 | 差距极小,而工作流要花真实的搭建时间 |
| 开放式工作,无法预先脚本化 | 单个智能体 | 不进去就不知道有哪些步骤 |
| 每一步都需要同一份大文档 | 单个智能体 | 工作流反而每步都要重发一遍 |
| 重复且形状已知的任务 | 工作流 | 规模很快就能收回结构成本 |
| 绝不能临场改路线的任务 | 工作流 | 分支是固定的,不是运行时决定的 |
在开放式场景里,自主性确实买到了结果:Anthropic 发现并行工作的一组智能体在困难研究问题上比单个智能体高出约 90%,代价是消耗多得多的 token。当答案比账单更重要时,就有意识地为它付费。
给智能体开缓存,差距会缩小
这是多数「工作流便宜十倍」的说法悄悄跳过的让步。重读造成的雪球有一个标准解法,叫缓存:服务方允许模型以很低的折扣价重读它已经见过的文本。
把智能体的缓存做好,我们例子里的成本会从约 19 美分降到每个工单约 9 美分。与工作流的差距从约八倍降到不足四倍。差距仍在,但小得多,而诚实的比较必须按这样计价,而不是拿它没有缓存的最糟状态来比。
缓存做不到两件事。对很短的步骤帮助有限,因为存在一个最小规模,低于它折扣就不生效。它也不会缩短对话,只降低重读的价格,所以失控的智能体照样会塞满上下文窗口并开始跑题。
真正决定选择的东西
退一步看,成本差距虽然真实,却很少应该成为决定因素。
通常有两个数字更重。第一是可靠性:如果一种方式成功率更高,而每次失败都得有人手动收拾,那么哪怕成功率只高一点,也远比每单几美分值钱。第二是搭建成本:一个整洁的多步工作流需要真实的开发与维护,而接几个工具的单个智能体搭起来快得多。每天几千个工单时,工作流很快就能回本;每天几十个时,永远回不了本。
所以提问顺序是:任务形状是否已知?会不会大规模跑?哪种方式失败更少?成本倍数只在这之后才重要,而那时它通常只是印证前两个问题已经给出的答案。
常见问题
工作流总是比智能体便宜吗?
不是。两步的任务差别接近于零;如果每一步都需要同一份大文档,工作流反而可能更贵,因为它每次都要重发。
智能体为什么越跑越贵?
因为它把整段对话带进每个新步骤。第八步要为重读第一到第七步付费,所以后面的步骤才是贵的。
缓存能让智能体和工作流一样便宜吗?
在我们的例子里它把差距缩小一半,但没有抹平。缓存降低的是重读的价格,而智能体重读的文本量仍远大于工作流的任何单步。
我怎么给自己的任务算这笔账?
在给自己引用任何数字之前,先测三件事:你的提示词和数据的真实体量、智能体在真实工作中实际走了多少步(日志知道),以及每种方式的成功率。成本差距由它们推导出来。
两者能混用吗?
能,而且多数好系统都这么做。把结构固定成工作流,让一个小智能体负责唯一真正需要判断的那一步。
写给好奇的人
雪球背后的那一行数学:智能体的总阅读量大约随步数乘以步数增长,而工作流随步数线性增长。这就是任务越长、两者拉开越大的原因。
下一步
从日志里取出某个真实任务的实际步数,再对照上面的表格重新读一遍。不管你选哪种形态,先给它加上一个上限:如何给智能体的花费设上限。