离线回放集该如何分层取样

离线回放集的常见失误,不是样本太少,而是抽样结构照搬了线上的自然分布。高调用量应用的请求分布本就不均匀,按比例采样的结果往往是常规请求塞满回放集,而真正决定迁移风险的复杂长文本、模糊指令、多轮上下文和异常任务只剩零星几条。测试通过了,风险却没有被检验。

1787648802-aiimg6a8d5b22d77fa0.33993931.webp

分层的依据应当是业务后果,而不是请求的表面形态。同一个接口下,直接面向用户的答复、需要结构化字段供下游系统消费的结果、会触发工具或工作流的任务、进入人工审核队列的内容,一旦输出变化,代价完全不同,不应混进同一套笼统评分。

分层的基本切面

  • 高频低风险的常规请求:观察整体表现,作为质量与成本的基线;

  • 高价值请求:判断关键用户体验或核心业务结果是否退化;

  • 工具调用与结构化输出请求:检查字段、参数和执行链路是否仍然可用;

  • 历史失败、超时、重试与人工转交请求:确认候选模型不会放大原有问题;

  • 安全敏感与边界明确的请求:核对拒答、转人工和异常提示是否符合既有规则。

层内抽样量应按风险确定,而不是按流量。基线层只需足以稳定观察整体表现;失败重试层、工具调用层和边界层则需要有意过采样——这些请求在生产中贡献了大量重试与人工介入,样本太薄,等于放弃了对迁移风险的度量。

每层各有验收口径

分层的价值在于分开判定。基线层可以先用自动规则初筛,发现格式缺失、字段类型错误、空结果和异常长度;高价值层,以及两个模型差异显著、旧模型本来就不稳定的样本,适合集中人工复核;工具调用层必须按执行结果验收,只看是否生成了调用格式并不足够,还要确认工具选择、参数完整性和调用顺序在执行后仍能得到预期结果;异常层关注的是行为是否可预期,即要么按规则完成处理,要么明确失败并进入既定兜底,而不是产出看似完整却不可用的结果。

任何一层都不该被一个总分覆盖。总体接近的分数常常掩盖某类关键任务的明显退化,回放的产出应当是一份差异清单:哪些请求变好、哪些变差、变差是否落在业务不能接受的区域。

回放集本身也需要可重复和可审计。历史请求在完成脱敏、权限控制和必要清洗后固定下来,分层标签随样本一并保存,后续修改提示词或输出解析层时才能在同一套集合上复测,避免每次比较都换了尺子。分层做得准,回放结论还能直接支撑分层路由的选择:哪一层具备替代资格可以先迁移,哪一层暂时留在原模型上。

参与讨论

0 条评论

延伸阅读