第4篇:诚实的对比——流水线 vs. 智能体,用数字说话

系列:“我们构建了一条几万行代码的流水线。智能体为何做不到。”
Read the independently edited English edition.
同一个任务,流水线花2块钱,智能体花几百块——如果它能跑完的话。
上篇讲了六个看起来简单的问题:链接提取、查询参数、停止规则、PDF处理、PDF推迟、robots.txt合规。每一个从外面看起来都很简单,放到真实网站上立刻崩掉。流水线把解决办法写进代码,一劳永逸。
前三篇讲了故事。分类系统怎么长出七层(第2篇),LLM在哪10%不可替代(第3A篇),六个“简单问题”怎么在生产环境里变成噩梦(第3B篇)。
这一篇只做一件事:把两条路线摆在一起,逐项比数字。
前面几篇用了“大脑”和“身体”来比喻流水线的两部分——分类系统是大脑,编排工程是身体。LLM的token就是食物。大脑只占体重的2%,但消耗20%的能量——这跟流水线的10%分类环节消耗大部分LLM成本是一个道理。
问题是:智能体的方案里,不光大脑要喂,身体的每一块肌肉也要喂。而且两者吃法完全不同:流水线是自律型选手——严格控制饮食、精确计算每一卡路里;智能体是暴饮暴食——饿了就吃,不知道什么时候该停筷子。
大脑的饭钱
第2篇讲了七层分类架构——4级关键词打分、域名前缀树、分数继承、11级PDF评分、迭代缓存。这些工程在到达LLM之前,就过滤掉了80–90%的URL。
| 成本项 | 确定性流水线 | 智能体(最佳情况) |
|---|---|---|
| 送进LLM的量 | 30–50个含糊组(经6层预过滤) | 几百到几十万个原始URL |
| 第1轮token | 约5–15K(仅含糊项) | 几十万到几百万 |
| 第2轮token | 省70%(迭代缓存) | 从零开始,全额重付 |
| 第3轮token | 省90% | 继续全额 |
| 单次分类费用 | 每家公司约0.10–0.30美元 | 每家公司5美元起,上不封顶 |
为什么差这么多?流水线在LLM开口之前,已经用域名前缀树、分数继承、评分规则把绝大多数URL处理掉了——剩下的才是真正含糊、需要LLM判断的。智能体没有这些预过滤层,只能把所有URL连同页面上下文一起塞进去暴力分类。
说明:智能体一列假设一个聪明的实现——批量打包URL、用大上下文窗口、选用强模型。不是“每个URL一次调用”的朴素版本。即便如此,仅分类一项就贵数十倍起步。
而且一家小公司几百个URL,一家跨国集团可能几万甚至几十万个——智能体的成本随URL数量线性增长,流水线的LLM成本几乎不变。
请注意:上面这张表只比了“大脑”——流水线里最精妙的10%:判断什么是ESG、什么不是。
剩下90%的体力活——第3B篇讲的链接提取、参数规范化、停止规则、PDF处理、推迟策略、robots.txt合规——在流水线里是确定性代码,边际成本趋近于零。如果智能体也要覆盖这90%——假设它能做到的话——每一项都需要额外的LLM调用来“思考”。
下面这张全流程表会让差距变得更触目惊心。
身体的饭钱
大脑喂完了,身体还饿着。第3B篇讲的六个问题才是身体。流水线的身体靠确定性代码运转,不吃token。智能体的身体?每一块肌肉都得喂LLM。
| 环节 | 流水线 | 智能体 |
|---|---|---|
| 链接提取和去重 | 确定性代码,约0美元 | LLM判断去重逻辑,约1–3美元 |
| 查询参数规范化 | 规则引擎,约0美元 | 不做会死循环;做则产生LLM成本 |
| 停止规则 | 硬编码预算,约0美元 | 无上限,跑到预算见底 |
| PDF下载(含重试) | 确定性代码,约0美元 | 每次失败都需LLM判断下一步 |
| PDF推迟和排序 | 确定性调度,约0美元 | 无此概念 |
robots.txt合规 | 确定性前置过滤,约0美元 | 每次运行重新解析 |
| 分类 | 0.10–0.30美元 | 5美元起,上不封顶 |
| 浏览器调度和反爬 | 预检加级联,约0.20美元 | 每个页面独立判断 |
| 合计/公司 | 0.50–2.00美元 | 50–200美元以上 |
流水线的0.50–2.00美元里,九成以上是云计算和浏览器资源成本,LLM只占一小部分。智能体的50–200美元以上还是乐观估计——假设它不陷入参数死循环、不在PDF上静默失败、不把新闻页面无限采集下去。
第3B篇里讲的那个大型企业网站的查询参数死循环,单个任务就连续烧了好几天,LLM调用费用超过了其余任务的总和。
乘以5000家公司:
| 总体规模 | 流水线 | 智能体 |
|---|---|---|
| 5000家公司总成本 | 2,500–10,000美元 | 250,000–1,000,000美元以上 |
| 总耗时 | 1–2周(并行) | 数月(如果能跑完) |
这不是凭空拍脑袋。流水线的数量级来自实际云服务商账单。智能体的数字来自第3B篇描述的失败模式——查询参数死循环、PDF静默失败、新闻无限采集——的合理外推。
但真正的成本不是钱
确定性流水线不是“希望”LLM注意到/content/dam/2024/report-en.pdf是ESG内容——尽管它的路径是通用的内容管理路径。
它知道,因为链接到它的可持续发展页面传播了分类。分数继承。确定性。可靠。
智能体面对1000个扁平URL,必须从头搞清楚。而且大概率搞不清楚——第1篇里投资组合经理用聊天机器人的经验已经说了:它检索的是容易找到的,不是全面的。
这才是真正的成本。这个项目存在的唯一理由是:让机构投资者看到每一家公司完整的ESG信息,从而做出正确的投资决策。
智能体大概率能给你“一些东西”——但完整性永远无法保证。用不完整的信息去管理几十亿甚至上百亿的资产组合,漏掉一份关键的可持续发展报告、忽略一个重大的环境风险披露——这个隐性成本比任何LLM账单都触目惊心得多。
0.50美元和2美元的差距只是数字。一个错误的投资决策造成的损失,是量级。
非确定性在规模上的复利效应
对一家公司,智能体可能做得还不错。对五千家,差异不是加法——是乘法。
假设智能体的每个决策有95%的正确概率——这已经很高了。一家公司的采集流程涉及大约100个决策点:链接分类、参数处理、PDF判断、停止时机……
完美运行的概率:0.95^100 ≈ 0.6%
也就是说,5000家公司里只有大约30家能被无差错地处理。
第3B篇里的例子让这个数学更具体:
- 查询参数死循环——智能体每次运行都可能陷入。
- PDF静默失败——智能体以为采到了,其实没有。
- 新闻无限采集——没有刹车线,跑到预算见底。
这些不是“偶尔出错”。是结构性缺陷——每次运行都有概率触发,而且触发了你不一定知道。
确定性流水线呢?相同输入,相同行为。第1次跑对的逻辑,第5000次也对。
| 维度 | 流水线 | 智能体 |
|---|---|---|
| 一致性 | 相同输入 → 相同行为 | 每次运行都不同 |
| 可复现 | 100% | 无法保证 |
| 调试 | 读日志,追踪代码 | “智能体为什么跳过了这个链接?” |
| 完整性 | 超过98%的可发现页面 | 未知,不可复现 |
对于驱动机构投资决策的ESG数据,“大概收到了大部分”不是一个产品。第1篇里投资组合经理的结论:完整性、一致性、可审计性、可靠性——聊天机器人在每一项上都失败了。智能体继承了完全相同的问题。
拿最流行的智能体来比
OpenClaw——GitHub上最流行的AI智能体项目之一——带浏览器控制、代码执行、消息集成。智能体路线的标杆。
别误解。OpenClaw对软件工程师来说是很好的生产力工具——增强已经知道该要什么、该验证什么的人。
第3A篇里的比方:LLM是麦肯锡顾问,工程师是项目经理。OpenClaw让项目经理效率翻倍。但项目经理本人不能缺席。
问题出在有人声称它能取代流水线。看看数字:
| 维度 | 流水线 | OpenClaw |
|---|---|---|
| 每家公司页面数 | 300个以上(系统化遍历) | 20–30个后上下文就满了 |
| 并发 | 15–100个并行请求 | 一次一个页面 |
| 反爬处理 | 预检加Playwright/Chrome级联 | 一个浏览器,无回退 |
| 状态 | 跨迭代持久化 | 上下文溢出时丢失 |
| 停止策略 | 新闻200上限加自适应阈值 | 无——跑到预算见底 |
| PDF处理 | 推迟、排序、原子保存、重试 | 点击链接,祈祷落地 |
robots.txt | 每个URL预检 | 不检查,或每次重解析 |
| 每家公司成本 | 0.50–2.00美元 | 50–200美元以上 |
| 完整性 | 超过98%的可发现页面 | 未知,不可复现 |
这里的50–200美元以上不是耸人听闻。第3B篇详细解释了为什么:
- 没有参数规范化 → 死循环烧token。
- 没有停止规则 → 新闻无限采集。
- PDF静默失败 → 需要重试和验证循环。
- 没有推迟策略 → 大量PDF打爆预算。
每一项单独看都贡献5–30美元的额外成本。叠加起来就是这个量级。
一次性 vs. 系统性
“Shell的最新可持续发展报告是什么?”
OpenClaw 30秒搞定。智能体为此而生,做得很好。
“系统性地从5000个企业网站提取每一个ESG页面,完整性超过98%,可审计,可复现。”
那不是一个问题。那是一条生产线。
区别跟第1篇里投资组合经理的发现一模一样:对一家公司、一份文件——魔法。对几千家——完整性、一致性、成本全面崩塌。
正确的组合
不是“智能体 vs. 流水线”。第3B篇已经说过:智能体是界面,流水线是引擎。
你在WhatsApp:“为Saint-Gobain运行ESG采集器。”
OpenClaw → 调用:python run_one_company.py --name "SAINT-GOBAIN"
OpenClaw → “完成。312个页面,18个PDF。2个失败(IP被封)。”
智能体理解意图、格式化命令、报告结果。流水线执行那数万行确定性代码。没有人输。双方都赢。
“但智能体可以自己写代码啊”
这是最常见的反驳。值得认真回应。
事实上,这条流水线的大部分代码就是用Claude Opus写的。开发效率大概提升了5–10倍——如果纯靠开发者手写,周期会长得多。AI写代码这件事本身,已经不稀缺了。
但最大的教训恰恰在这里:AI不会自动看到所有细节。
第3B篇里讲的每一个问题——某些网站的JavaScript渲染、非标准链接标签、某个大型企业网站的参数死循环、PDF的静默失败——没有一个是Claude自己发现的。
都是流水线在某家公司上翻车之后,开发者把问题描述清楚,Claude才能写出修复代码。隐含的需求、未被说出口的边界条件、只有跑过真实数据才会浮现的问题——这些是AI看不到的,或者说看到的代价高到不现实。
这跟OpenAI提出的harness engineering(驾驭工程)和Karpathy的autoresearch是相似的结论:AI还需要人来驾驭。驾驭的质量决定产出的质量。
而这个项目的复杂度意味着,驾驭它需要的不是通用的编程能力——是领域经验、前沿知识,以及从上百次翻车里积累的直觉。
Claude写代码很快。但“写什么代码”这个决定,今天仍然是人做的。
适用边界
回顾整个系列的经验,分界线其实很清楚。
智能体适合:
- 一次性任务:“总结这个页面。”“找CEO的名字。”构建流水线成本超过几次LLM调用的场景。
- 探索:“这个网站有什么ESG信息?”在构建系统性方法之前的发现阶段。
- 代码生成:智能体编写确定性流水线代码,而不是在运行时替代它。Claude Code写了这条流水线的大部分代码——但运行时不需要它。
- 低风险、高多样性:客服、草稿、代码审查。95%准确率可以接受的场景。
智能体做不到的:
- 高吞吐量数据流水线:数十万页面需要确定性处理。第3B篇的六个问题,每一个都需要确定性解法。
- 超过99%的可靠性:非确定性复利。上面的数学已经说了。
- 有状态多步骤工作流:智能体丢上下文,状态机不会。PDF推迟策略需要跨越整个采集周期的状态追踪。
- 零容忍合规:
robots.txt不是“尽量遵守”。法务要的是100%可审计。 - 微秒级决策:批次大小、超时、重试。代码微秒内执行;LLM往返需要秒。
以上都是实战中写出来的代码和亲手踩过的坑。研究界——不是社交媒体,不是风险投资——怎么看这件事?
下一篇:第5A篇——研究怎么说:数据篇。