Eval 测试集是滞后指标:你的绿色仪表盘只反映上季度的失败
仅基于故障复盘(Postmortems)建立的评估套件只能验证你的 AI 系统在过去是安全的。本文将探讨为什么全绿的通过率会在模型迁移当天“撒谎”,以及如何构建探索性评估的覆盖范围。
你的评测集是一张用户早已离开的流量快照
基准测试的提升衡量的是用户早已离开的分布上的进展。本文探讨评测集陈旧、幸存者陷阱以及单一聚合指标如何掩盖无声的衰退 —— 以及你如何让评测始终紧跟流动的动态。
那个没人同意却成了规范的评估套件
大多数 Agent 团队没有需求文档 —— 评估套件默认成为了规范。为什么全绿的评估运行结果只证明了一个工程师的假设,以及如何以 API Schema 的评审严谨度来对待评估集。
那个你从未进行过负载测试的备用模型
配置好的备用模型只能证明你的路由机制有效 —— 却无法证明你的应用是否能在次要模型的输出下生存。本文探讨了为什么名义上的备用方案在真实流量下会失败,以及如何在供应商出故障前先行测试你的故障转移机制。
你的备用路径是生产环境中唯一未经测试的代码
你为应对故障而构建的降级路径几乎从不运行,因此它在寂静中腐烂,并在其本应应对的事故发生时才首次亮相。
LLM 裁判是一个带版本的依赖,而非中立的基础设施
使用 LLM 裁判为模型输出评分,而裁判本身也是一个具有特定行为的模型。当它发生变化的那天,所有的历史分数都会变成“外币”——而大多数团队从未察觉到这一点。
自信地返回错误答案的语义缓存
语义缓存用精确匹配的保证换取了低延迟,而代价则是将误命中作为流畅的事实返回。本文将探讨如何衡量误命中率、选择 Embedding 模型、缓存检索而非生成,并将阈值调优作为一项安全决策。
用户过早行动的流式 Token
逐个 Token 的流式传输让助手感觉响应迅速,但它也会将模型未完成的思考作为最终答案展示出来。本文将探讨导致这一问题的竞态条件以及解决该问题的设计模式。
结构化输出并非经过验证的输出
JSON 模式和受限解码只能保证 LLM 响应的形状,而非其含义。本文探讨了为什么通过 Schema 检查只是正确性工作的开始,以及语义验证真正的归宿。
那个由智能体编写的、实际上什么也没测的测试
编程智能体生成的测试套件能够通过测试、提高覆盖率,却抓不住任何 Bug。本文探讨了为什么智能体编写的测试会演变为同义反复,以及变异测试和红绿 TDD 准则如何让它们重新起到约束行为的作用。
悄然失效的评估:当你的测试套件在衡量一个已不存在的世界
全绿的评估运行可能是在认证过去而非现在。本文探讨评估套件如何衰减,如何区分真正的性能退化与过时的测试,以及如何在套件中构建新鲜度保障机制。
你的工具描述是模型遵循的指令通道
工具描述是模型视为权威指令的散文,但代码审查和输入清理从未检查过它们。本文将探讨被投毒的元数据和地毯式攻击是如何渗透进来的,以及弥合这一差距的规范。