今年春天,闽南一家做食品包装的企业上了一个AI Agent:自动抓取订单、核对库存、生成备料计划。演示那天很惊艳——三分钟跑完全流程,总经理当场拍手。两周后我去回访,发现车间已经不用了,备料计划回到了老师傅用Excel排。
问原因,老师傅说了实话:"它十次里对七八次。对的时候真省事,错的时候要擦屁股。还不如我自己来。"
十次对七八次——这个数字值得所有准备上Agent的企业停下来想一想。demo的成功率是100%,为什么一到生产就掉到七八成?答案不是玄学,是一道算术题。
一、先算这道题:错误是怎么累积的
一个Agent流程很少只有一步。抓数据、查规则、调接口、填表单、发通知——一个像样的业务流程,十几二十步很正常。
假设单步成功率99%(相当优秀),跑20步:
0.99²⁰ ≈ 82%
假设单步成功率95%(演示时的真实水平),跑20步:
0.95²⁰ ≈ 36%
看到问题了吗?demo是单步表演,生产是全流程连乘。演示时你看到的是模型最擅长的那一步;上线后你要的是二十步全部正确。95%的单步质量,在20步的流程里,三次里要翻车两次。老师傅说"十次对七八次",已经算是走运的。
二、demo和生产,到底差在哪
除了错误累积,demo环境和生产环境还有四个结构性差异,每一个都单独致命:
| 维度 | demo环境 | 生产环境 |
|---|---|---|
| 数据 | 干净样本,字段齐全 | 缺字段、错编码、历史遗留脏数据 |
| 频率 | 跑一次给你看 | 每天连续跑几十上百次 |
| 值守 | 工程师盯着,错了重来 | 无人值守,错了就错到业务里 |
| 后果 | 错了笑一笑 | 错一张备料单,产线等料半天 |
所以"演示能跑"和"生产能用"之间的距离,不是把prompt再调一调,而是四个工程问题。
三、生产环境的四类失败
把我们这两年在客户现场见过的Agent故障归类,跑不掉这四种:
- 工具调用失败。Agent要查的接口超时了、要填的系统升级了、要读的文件被挪了。demo里这些永远正常,生产里它们一定会发生——只是时间问题。
- 脏数据触发幻觉。物料编码缺了一位、日期格式不统一、供应商名字有三种写法。模型遇到对不上的数据,不会报错,它会自信地"补全"——用编的方式。
- 上下文漂移。长流程跑到第十步,前面某步的小偏差被放大成方向性错误。像导航一开始偏了5度,开一百公里后偏出几十公里。
- 无补偿机制。失败发生后没有兜底:不重试、不降级、不报警,错误直接流入业务。老师傅"擦屁股"擦的就是这个。
注意:这四类失败,没有一类是模型能力问题。换更贵的模型,一个都解决不了。它们全是工程问题——而工程问题有工程的解法。
四、工程解法四件套
这四件事没有黑科技,但每件都得做扎实。这也是"demo"和"能交付"之间真正的差距所在:
- 重试与幂等。接口失败自动重试;重试不会造成重复下单——每次操作带唯一凭证,做过的直接跳过。目标是:临时故障自愈,无需人管。
- 降级路径。主路径走不通时自动切换预案:接口查不到就查备份表,备份表也没有就标记"待人工",而不是编一个答案。降级的设计原则:宁可承认不会,不可假装全知。
- 人工兜底点。在流程里预留人工卡点:低于置信度的判断转人工,高风险动作(下单、放行、对外发送)必须人点确认。兜底点不是缺陷,是责任边界——它决定了出错时的最大损失上限。
- 观测与验收。每一步的输入输出留痕,成功率按天统计。上线不是终点,是观测的起点:头两周盯全流程成功率,低于阈值就修,修不动就缩流程。验收标准要写进合同:不是"功能演示通过",是"连续N天全流程成功率≥X%"。
那家食品包装企业后来重做了这套东西:接口加了重试、数据加了校验、备料计划生成后加了一道人工确认,上线头一个月全流程成功率从78%爬到96%以上。老师傅现在的用法是:让Agent先排,他只看被标红的异常项。Excel退休了,他没有。
五、买方视角:三个必问
如果你是准备引入Agent的企业,选型时把这三个问题甩给供应商,能过滤掉九成不靠谱的:
- "全流程成功率是多少?连续跑多少天测出来的?"——答不出实测数字、只会演示的,直接出局。
- "失败的时候会发生什么?"——听他说重试、降级、转人工的机制。如果他说"基本不会失败",要么在骗你,要么没上过生产。
- "验收标准怎么写?"——愿意把"连续N天成功率≥X%"写进合同的,才是把自己命运和你的效果绑在一起的伙伴。
结语
Agent从demo到产线的距离,不是算法的距离,是工程的距离。演示看的是聪明,生产活的是皮实。下次再看Agent演示,欣赏完它的三分钟,记得问一句:"它失败的时候,长什么样?"
答得出这个问题的团队,才真的把东西送上过产线。