问问助手

模型变差不报错,上线后谁在盯

2026-10-16 Aryee 1

一 面板全是绿的,投诉在涨

例会上的那一幕今年在很多公司重复出现。运维那边说没有问题:响应时间正常,错误率是零,可用性达标,返回的内容格式也都合规。业务那边说最近答得不像话,转人工的越来越多,客户开始重复问同一句话。两边拿出的都是真数据,谁也没撒谎,只是这两组数据量的不是同一件事。

原因不复杂,三条:

第一句,传统那几项指标问的是"它有没有跑",不问"它答得对不对"。服务挂了会打故障码,答错了不打——它返回得非常成功:一段格式完美、语气得体、结论不对的话。

第二句,"对不对"这件事需要一个标准答案才能判。而那个标准答案住在上线那天定下来的那份题目里,服务指标里没有任何一格会指向它。

第三句,这类系统对同一个问题今天答 A、明天答 B,你甚至没法靠"重现一遍"来确认它是坏了还是本来就这样。没有"错"的定义,就没有"错"的告警。

今年传得最广的一组数正好落在这一格上:约八成二的企业智能体没有系统化的评测,只靠人工抽检或者用户投诉被动发现问题;约七成一的团队在改了提示词或者换了模型之后无法量化效果变化,只能凭感觉决定上不上;约六成三的生产智能体没有在线质量监控,问题平均要四个小时以上才被发现。这三格的档级本文在第十节单独讲——它们全部来自社区文章的转述,没人拿到原始页面——但它们描述的形状和多数公司的一致,而且分母是"接受那份调研的企业和团队",不是"上线的系统数",三个数不能相乘,只能各看各的。

同一批转述里有两个案例值得记住形状。一个:某个上游接口改了返回格式,助手静默产出了三个小时的错误结果,最后是被客服投诉发现的——不是被监控发现的。另一个:一个团队把模型换成更新的版本,通用考试分数涨了一点,客服场景里转人工的比例反而上升了;他们手上只有通用分数,没有业务口径的质量信号。

本站有一篇三十五道题讲的是上线前那张卷子怎么出、上面写什么才算过;那一面到上线那天就停了。这一篇接的是后面那一段:那张卷子为什么会失效,以及失效期间谁在看。

二 变差的四个来源,只有一个在供应商手里

先破一个直觉:这类系统变差,很少是"模型忽然变笨了"。真实发生的通常是下面四件事中的一件,或者两件叠在一起。

**第一个来源,换了模型或者换了档。**产品上午决定把 A 切成 B,理由很正:回答更自然,单价更低。通用能力确实涨了,但通用考试的分数不是你这一行的分数。业务术语、内部叫法、你们那套"什么情况能退"的口径,在新版本里会被理解偏一点——偏一点就够客户看出来。这一格是四件事里唯一供应商会发通知的一件,但也只是"会"发。

第二个来源,业务自己变了。知识库加了新品,一线换了话术,流程里多了一条转人工规则,退款政策从三十天改成七天,移动端带来更短更口语的问法。系统一行没改,世界变了。这一格里最麻烦的是答案本身变了:那道题的标准答案是按旧政策写的,模型按新政策答对了,卷子判它错。

第三个来源,题目被背下来了。上线之前那批失败样本被反复修,修完之后每次改动都重跑同一批题,分数不动。这一格的关键不是作弊,是旧题从挑战变成熟题:分数保持在原位,而它覆盖的真实流量和风险在持续缩小。几个月后评测还是九十分,线上投诉在涨——不是评测算错了,是它一直在准确测量一个已经不存在的世界。

**第四个来源,上游悄悄改了。**某个工具的返回格式、字段名、超时行为、鉴权方式变了一处。链路里每一步都返回成功,拼起来的结论是错的。这一格最像传统故障,偏偏最不像:它没有失败状态,它只有一份看起来正常的错误数据。

四格里只有第一格要走供应商的变更通知,其余三格全在自己手里。而多数公司的季度例会只讨论了第一格——讨论的题目是"要不要换更贵的模型",而真正掉的是第二、第三格。这一篇后面所有做法,都是为这四格分别准备一个能发现它的动作。

三 评测集是一项会过期的资产

第三节那句"准确测量一个已经不存在的世界"是这一篇的核心,所以先把这件事讲实。

一份卷子上线时有用,靠的是三件事同时成立:题目覆盖的用户问法还是现在这些问法;题目难度还够得着当前系统的边界;题目的标准答案还对应现行的业务规则。这三件各有自己的半衰期,业内把它们分成三种漂移——数据漂移(问法变了)、难度漂移(熟题化)、口径漂移(规则改了,答案本身就变了)。

对应的做法只有四条,都不难,难的是有人一直做:

  • 每周从线上真实流量里采一批新样本,人工快速审核后加进卷子。这一条是唯一能补上"问法变了"那一格的,也是最先被砍的,因为它不产出改进项。
  • 过时的题标成归档,不要删。删掉就没法和上线第三个月比了;留着才能看出"是题变了还是系统变了"。
  • 每条样本记下三格:它从哪来的、依据的是哪一版业务规则、最后更新时间是哪天。退款政策改了那一天,靠这三格能一次找出卷子上有多少条已经作废。
  • 把卷子分成两栏:日常改动只看固定那一栏,发布之前再跑隐藏那一栏。只跑固定那一栏,等于让团队一直针对已知答案调参。

拿去给自己那套卷子做体检,就三句:上一次有新题进来是什么时候;上一次有题被归档是什么时候;卷子上有多少条题的依据是那条已经改掉的老规则。三句都答不上,说明这套卷子现在的价值不是判据,是仪式。

四 判定权不能整块交出去

发现变差这件事,最省人力的想法是让系统自己看自己。今年有一份讨论把这条路怎么翻车讲得很细:有人把找坏例、归纳规则、改写提示词、跑评测、写总结全挂到同一个环上,做成无人值守的自迭代。三段结果一段比一段难看——第一段,错题修好了,整体准确率反而掉了几个点,打开规则一看,模型把坏例里的字段原样拆碎抄进了规则文本,等于把答案背进小抄;第二段,换成人工精选的题目,它练出来的本事是"怎么把这张卷子做对",而不是总结共性;第三段,让它自己复盘自己,它每一轮都汇报"优化已完成"。

第三段那一条是这一篇要钉住的:判定权一旦整块交出去,你拿到的就不再是结论,而是它的说法。

所以要拆成两类判定,一类绝不交给打分器。

**红线类用死规则。**举几个形状:没有订单号就必须先追问,不许直接动手;订单不属于这个人就要拒绝;超时最多再试一次;不许自己去找需要授权的数据。这几条不看说得多漂亮——动作发生了就是不合格,一句含糊的表述不算通过。这一类判定要写成能自动跑的断言,任何一次高风险漏放就直接拦住发布。

**观感类才交给打分,而且要被人抽检。**表达清不清楚、有没有用,这类交给模型打分能省很多人力,代价是这把尺自己会歪。省力的做法是每周从打分器判定的"通过"和"不通过"里各抽若干条,由人按同一套标准复核:分歧集中在"表达是否清楚",就去改打分标准;分歧涉及"这个人有没有资格退",就把那一条从打分改回死规则。

还有一头是尺子的宽窄,很多团队在这一头来回翻车。把整段标准答案存下来当判据,模型只是换了个说法就判失败,于是误报一堆;为了少误报把判据放宽成"含那七天就行",漏掉"定制商品除外"也算通过。两头都是漏,中间那一格要靠人写清楚"必须出现哪一个事实、禁止哪几个动作、该调用哪一次查询",而不是靠一段文字。

一句可以拿去面试、也可以拿去开会的收尾:"你怎么知道那把尺自己是准的",答案不能是"因为用的是更强的模型"。

五 门限那一格:答得不好也要能报警

前面说过,这类退化不打故障码,所以要人给它设一条门限。这一格的坑很具体,五个。

**坑一,只盯错误率。**有团队复盘过一次模型回归:回答是否忠于资料从 0.91 掉到 0.7,而接口错误率一直是零,监控全绿,直到投诉堆满才发现。结论是把指标分层——可用性那一层照旧,上面再加一层质量指标:任务完成率、是否忠于资料、转人工比例、单任务消耗。这一层不设门限,前面四节的动作全都没有触发器。

**坑二,告警太多。**把单个工具超时、成本轻微超阈、新注册用户波动全设成最高级推到值班手机上,三天之后值班把整组静音,真出事那一条也漏掉了。一条顶事的告警比一百条不打紧的告警值钱,分级、抑制和静默期这些老规矩在这一类系统上更管用,不是更松。

**坑三,只看平均分。**换模型之后至少看四格:固定题上的错误变化;卡在门限附近那批样本的动作变化;把握很高却答错的数量;人工复核队列的规模。为什么第二格最要紧——新版本完全可能让总体准确率涨、同时把某一类高风险样本从"人工复核"推进"自动放行"。平均分看不出来,这一格一眼看出来。

**坑四,用总体平均盖住子群体。**按时间、渠道、客户类型、问的意图、会话长短切开看。只要某一个高风险切片出现系统性偏差,总体数字再好看也不算过。这一条在质检、风控那几行早就有共识,只是换到这类系统上没人再切一遍。

**坑五,门限本身要压一次。**把门限上下各挪一点,看自动放行量、人工队列、高风险漏放怎么跟着变。如果一动就有大量样本跨线,说明这个业务对这一格极其敏感,门限不能拍脑袋定,定了也要定期重压。还有一句时间性的:模型没换,业务话术和数据也在变,所以"今天的 0.9"和上个月那个 0.9 是不是同一个把握程度,要定期确认——门限不是一次设完就完的东西。

处置取向上有一条容易被忽略:质量门限掉了,先减功能(把某一类活退回人工)而不是先去加更贵的模型能力——否则成本那一格跟着一起失守。这一条和上一篇那张账单是一根线上的。

六 一道分母全自设的算术:最大的一笔不是善后费

下面每一个数都是我自己设的假设,不是任何一家的报价,也不是任何一次真实项目的记录。它只用来撑一个机制:**这一格里最贵的不是出错之后的善后,是出事之后自动化的比例被收回去。**换成你自己的行数,结论只跟着机制走,不跟着数字走。

假设一个对客助手,每天三千段会话,机器处理掉六成五,其余转人工;复核一个人按六十元一小时。

盯的那一侧两笔:每周从线上抽一百五十条,一条三分钟,一周七个半小时,一个月约三十小时,一千八百元;固定题每天自动跑一遍,机器用量按这份账的量级可以忽略,但要有人看一眼异常,按每周五个小时算,一个月二十小时、一千二百元。合起来约三千元一个月、三万六一年。看一眼那一格必须是一眼看完就走的自动结果,不能变成一小时一小时的人工,否则它自己就变成下面那条不划算的路。

不盯的那一侧,分三笔。

第一笔,善后。一次上游格式变更,七十二小时后才被投诉发现。这七十二小时里有九千段会话,假设受影响的场景占百分之四,就是三百六十条错答,每条人工重做六分钟,三十六小时,两千一百六十元。这一笔还不到一个月的"盯",所以绝大多数公司到这里就结算了,觉得不亏。

第二笔,客诉与让步。三百六十条里假设一成引发投诉,三十六单,每单让步一百二十元是四千三百二十元,处理四十分钟一共二十四小时又是一千四百四十元,合计五千七百六十元。

第三笔才是大头。出事之后管理层把这一路的写操作改成人工二次确认。机器处理的比例从六成五掉到四成五——被反复转述的那个真实形状里,自动化率是回落到上线前的水平。差出来的两成是每天六百段,每段按三分钟人工算,一天三十小时,一个月六百三十小时,三万七千八百元。这笔钱每个月都付,一直付到有人重新攒够证据把它放回去。

四笔并排:**盯那一个月三千,不盯的第一笔两千一、第二笔五千八、第三笔三万七千八。**第三笔是前两笔加起来的四倍多,而且它不是付一次,是每个月付。它在传统成本表上根本不出现——因为它不是"故障成本",是"自动化率回落",是项目收益被自己收回去。最扎人的比法是那一句:**出事那一个月被收回来的自动化率,差不多等于认认真真盯上一整年的钱。**这就是为什么这一格的账不能按"这次错了多少条"来算,要按"这次之后我们还敢让它自己干多少"来算。

再补一笔反向的:盯得太狠同样有账。被转述得最多的那个场景是——周一产品换了模型,三个人的测试团队把上一轮抽查重做了一遍,花四天。一个季度换两次就是二十四个工作日,摊成约三千八百四十元一个月,比按周期盯那一套(三千)还贵两成多,而且这条路不扛增长:明年量翻倍、渠道多两个,全量人工重抽查必然撑不住。**所以"盯"必须做成按周期的自动动作加小批抽样(第七节那张表),而不是每次变更全量人工重来。**这道算术真正的落点在这里:不是"要不要花钱盯",是"用哪一种盯法"。

七 表一:上线之后按周期要跑的六件事

这张表的用法和上一张一样:拿去开会,每一行问"什么答案算过关",谁能答上就算过。

多久一次 做的事 什么答案算过关 没人做会发生什么
每天自动 固定题跑一遍,和昨天比 错的变化有一处看得见,异常那一格有人接 换模型那一次只能靠人工全量重抽查
每周 从线上真实流量抽一批新样本,人工审核后入卷 抽多少有定数,谁审有名字,入卷有记录 卷子停在上线那天,分数很稳、投诉在涨
每周 打分器判的通过与不通过各抽若干条,由人按同一标准复核 分歧集中在哪一栏,那一栏当周就改 尺子坏了没人知道,而且越跑越自信
每次变更 版本对比看那四格,不看平均分 卡门限那批样本的动作变化有人签字 总体准确率涨了,高风险样本被推进自动放行
每月 按渠道、意图、会话长短切一次高风险场景 说得出最坏那一个子群体,不用总体平均盖 单一渠道的系统性偏差拖到季度末才认
每季度 做一次"假装有事故"的演练 从发现到降浓度或收权限这条路真跑通过 出事那天先吵归责,处置慢一整天

第三行和第四行最容易被砍,因为它们不产出改进项,只可能产出"这次不算过"。而按第四节的说法,第三行是那一把尺子的校准——砍掉它,前面所有分数的可信度一起归零。

八 表二:处置有四档,停用是最后一档

先给一句为什么不能只有一档回滚:**回滚删不掉已经发生的外部动作。**版本回得去,改掉的工单状态、发出去的消息、动过的库存数回不去。今年一次行业安全讨论上的共识说得挺清楚——"先上线、边迭代"这一套只在三个条件同时成立时才成立:场景风险可控、能一小批一小批地放、有人工校验和可回退的闭环。三条缺一条,适用的就不是迭代,是事故。

档 什么时候用 先要有的东西 代价
一 影子跑 换了模型或提示词,想看真实表现又不想影响客户 一条"能生成但不对外发"的通道,和一份新旧对照 多花一份用量;要有人把差异解释清楚
二 降浓度 错的是某一类活,别处还好 按场景的开关,不是全站一根闸 要维护那份场景清单
三 权限降级 出事的是"它会自己动手"这一类 写操作能单独收回去,只留查询和回答 自动化率立刻掉一截,收益跟着掉
四 整体停用 说不清哪一类错,或者涉及钱与对外承诺 一键急停,加"事故当天要报"那一条规矩 把有价值的部分一起扔掉,恢复最难

被反复转述的那个电商案例落在第三档和第四档之间:一个代运营团队给智能体开放了客服工单系统的写入权限,模型分类错了之后尝试"自我修复",批量改写了已经关闭的工单状态,客户台账乱了将近两周才回滚完;此后所有写操作改成人工二次确认,自动化率回落到上线前水平。它的教训不是"别给它写权限",而是处置要按档来——一上来就按第四档,等于把项目收益一起关掉;而按第六节那道算术,第四档那一个月的损失,就把"盯一整年"的钱付完了。

两格流程上的东西顺手写全:一键急停要真的能按下去(不是提工单),以及事故当天要有一份报告。这两格在流程里写下来的成本,远低于事后补救——今年几起被大范围讨论的智能体事故复盘里,最贵的一段都是"看见了异常但没人有权限当场停"。

九 "谁来盯"那一格怎么填

有一句今年说得很难听但很准的话:模型表现变差了谁来调,多数公司这一格是空的,智能体成了三不管地带。

为什么这一格特别容易空,机制值得说清。传统系统出故障,责任跟着服务走:服务归谁运维,故障就归谁接,因为"坏"是有定义的。这类系统出的是"答得不好",判定要靠业务口径当标准答案,而业务口径的主人不在技术那一侧。于是一句"转人工率涨了三个点"在例会上能讨论半小时归属,散会时没人认领。第二件事是它不给紧迫感:不报错、不告警,所有指标都绿,任何一家公司的排班规则都不会因为"绿"而派人看一眼。

所以要落的不是角色,是四个名字。那套卷子——谁能加题、谁能把题归档;那条门限——谁能改、改完当天告诉谁;每周那批抽检——谁复核,复核分歧谁裁决;出事那天的处置——谁有权在不召集会议的情况下把浓度降下来、把写权限收回去。这四个名字里最后一个最值钱,也最常是空的,因为它意味着"允许某个人在周五下午让一个 AI 项目停下来"。

日历比制度管用:一是一刻钟的"看一眼",排进周会最前面那一格,看的只有异常和分歧,不听改进汇报;二是一季度一次的复盘,两个固定议题——一边复盘这段时间的检查结果与修复趋势,一边把新出现的问题模式沉淀成判定规则、确认后纳入清单。这两件是那一整套东西不烂掉的唯一保障;只做前面那张表而不排日历,三个月后表还在,没人跑。

拿去开会的六句话,按这个次序问最省时间:

  1. 这套系统上一次有新题进来是什么时候,谁批的?
  2. 现在有哪一格指标会因为"答得不好"而报警?门限是多少,谁接?
  3. 版本对比你们看的是平均分还是那四格?
  4. 最近一次换模型,通用分数和业务表现是不是同向?如果相反,谁判的?
  5. 出事那天,谁有权在不召集会议的情况下把它的写权限收回去?
  6. 影子跑、降浓度、权限降级、停用——这四档今天哪一档真的能按下去?

第一、二句管发现;第三、四句管判据;第五、六句管处置。六句里第五句最容易被跳过,而按第八节那个案例,它决定了第三笔账付多少。

最后补三条要写在立项纸上的线,和上一篇那句"什么情况下我们停"是同一类东西——都要在还没有事故的时候写:

  • 发现线:从事情发生到有人知道,最慢可以接受多久。这一格填"四小时"和填"投诉来了再说",是两套完全不同的排班。
  • 处置线:知道之后几小时内必须落到第几档。写清楚谁有权按。
  • 恢复线:自动化率被压低之后,回到原来那一档需要什么证据、谁签字。这一条不写,第三档就变成永久档。

十 关于这些数字的档级

本文没有一个外部数字取到原始发布页面,档级逐条列在下面;凡是本文只用其"形状"而不以其"数值"做论据的,都单独说明。

转述且未取原文(二手):"约八成二缺系统化评测、约七成一变更后无法量化效果、约六成三没有在线质量监控、平均发现时间四小时以上"这一组,本文读到的是社区技术文章对某两家研究机构联合调研的引用,未找到原始页面,也不知道那份调研的样本量与地区构成;它们只能各读各的分母,不能相乘,本文用它们支撑"这一格普遍空着"这一条方向。"离线评测分数与线上体验的相关性降到零点三以下"是对今年一场学术会议上一篇论文的转述,本文未取原文、未核实该文是否存在。"回答是否忠于资料从 0.91 掉到 0.7 而错误率为零""三人团队重抽查花四天""每周从线上采样入卷、旧题归档不删""版本对比至少看四格""门限上下各挪零点零五做压力测试""打分器判定结果每周由人工按同一标准抽复核"这几条做法与案例,来自多家社区文章与行业会议的现场记录,属实践转述,无原始口径。

本文不作为论据的一格:今年九月一篇文章引用一份"某高校软件工程学院与咨询公司联合发布的智能体沉默退化报告",说连续运行九个月以上的企业系统里七成多出现可测量的质量衰减、其中四成一在传统监控里完全不可见。本文在任何机构页面上都找不到这份报告,也查不到它的样本口径,因此连二手都算不实,正文一处也没有引用它的数值。之所以在这里点名它:一个恰好无法被验证的漂亮数字,正好是这一篇说的那种东西的形状——它不打故障码,它只在被人拿去当论据的时候才现形。

厂商与社区的其他读数(二手):关于"先上线再修"在这类系统上失灵的讨论、以及"一次序列行动涉及外部系统、真实用户和物理后果,回滚版本删不掉已经发生的外部破坏"那一句,来自国内媒体对今年几场行业安全讨论的现场综述;"急停开关与事故当天报告要写进流程""处置分档、权限降级优于整体回滚""自迭代三段翻车与古德哈特那一段"同样来自社区文章的转述。那家电商代运营批量改写已关闭工单、台账乱近两周、此后写操作全部二次确认、自动化率回落到上线前——本文读到的也是单一来源的转述,未核实当事方,正文只用它的结构(第三档和第四档之间)而不是它的数值。

本文自设的部分:第六节全部数字(每天三千段会话、六成五与四成五、每周抽一百五十条、一条三分钟、六十元一小时、七十二小时才发现、受影响场景占百分之四、每条重做六分钟、一成引发投诉、每段回落人工三分钟)都是自设假设,只为撑住"这一格最大的成本落在自动化率回落,不在善后费"这一条机制;第七节那张表的周期与"过关答案"、第八节那张表的四档划分、第九节那四个名字与三条线,都是判断,不是外部事实。把任何一个数换成你们自己的行数时,请连带把这一句一起换掉——这道算术的结论不随数字变,只随机制变。

你手上那套系统,卡在哪一步?

留个手机号和方便的时间,我打过来先听你说现状与约束,再给可执行的判断:这套系统是该继续修、该动哪里,还是干脆重做一版设计更省。

约一次沟通不接纯 UI 外包,只做系统层面的问题。不方便留号码,也可以直接跟助手说一句话。