大模型应用的灰度发布和 AB 测试怎么做?

第 1190 题 约 2 分钟读完

本文目录
  1. 面试怎么回答
  2. 发布前:离线评测是门槛
  3. 影子测试
  4. 灰度发布
  5. A/B 测试看什么指标
  6. 版本管理

面试怎么回答

发布前先在回归集上和线上版本对比,完成率、准确率、工具调用成功率不能下降,同时看成本和延迟。然后做影子测试,复制真实流量给新版本,只记录不返回,对比新旧回答、检查报错和格式问题。再按用户维度灰度,从 1% 逐步放量,每档覆盖不同时段,设置错误率、超时率、负反馈率的自动回滚条件。A/B 指标看点赞点踩、追问率、重新生成率、任务完成,加上抽样质量评估、延迟和每次成功任务的成本;反馈数据稀疏,要保证样本量。每个请求记录模型、提示词和检索配置版本,切换和回滚都通过配置完成。

先把这段讲顺;面试官追问时,再展开下面的原理和细节。

详细讲解

换了一个更便宜的模型,离线评测分数差不多,直接全量上线,结果用户投诉增加了。大模型应用的发布和普通功能不一样:效果有随机性、离线评测覆盖不全、问题往往在长尾。面试官问这题,想看你有没有一套稳妥的上线方法。

发布前:离线评测是门槛

  • 新版本(模型、提示词、检索策略)先在回归集上和线上版本对比;
  • 核心指标不能下降:任务完成率、准确率、工具调用成功率、拒答率;
  • 同时看成本和延迟的变化。

影子测试

把线上真实流量复制一份给新版本,新版本的结果不返回给用户,只记录下来:

  • 用自动评判对比新旧版本的回答;
  • 检查新版本在真实问题上有没有报错、超时、格式错误;
  • 优点是零用户风险,缺点是看不到用户真实反馈,有副作用的工具调用不能在影子里执行。

灰度发布

  1. 按用户或租户分流,比如 1% → 5% → 20% → 50% → 100%;
  2. 按用户而不是按请求分流,同一个用户的体验保持一致,也方便分析;
  3. 每一档观察足够长时间,覆盖不同时段和问题类型;
  4. 设置自动回滚条件:错误率、超时率、负反馈率超过阈值就回滚。

A/B 测试看什么指标

  • 用户行为:点赞点踩、追问率(追问多可能说明没答好)、重新生成率、会话放弃率、任务完成(比如报表是否被导出、建议是否被采纳);
  • 质量:抽样自动评判和人工评估;
  • 系统:延迟、错误率;
  • 成本:每次成功任务的成本。

注意:大模型应用的用户反馈数据稀疏,点赞点踩的比例很低,需要足够的样本量和时间,不要看了一天的数据就下结论。

版本管理

  • 每个请求记录使用的模型版本、提示词版本、检索配置版本,方便事后分析;
  • 配置化切换,回滚只需改配置,不需要重新发布代码。