你的采购团队在上个季度续约了推理合同,并带着一丝自得地注意到,引用“HumanEval pass@1 达到 84%”的质量条款已被供应商最新的模型卡(model card)轻松超越,现在报告的数值是 87%。提高了三个百分点。条款已达成。合作关系很稳健。与此同时,你推理团队自己的回归测试集——那个真正运行你产品所依赖的任务的测试集——显示自模型更新发布以来,在留出法评估案例上出现了 2% 的下降。这两个数字都是真实的,但合同里只写了其中一个。
这就是当营销产物在法律文件中承重时的情况。模型卡上的基准测试数字只是测量结果的标题;而产生该数字的方法论则是附录中的一个注脚,合同审查链上的任何人都不会去读它。当供应商更改方法论时——从贪婪解码(greedy decode)切换到三选一采样(best-of-three sampling),添加结构化输出系统消息,或者更换提示词模板以匹配模型新的聊天微调——数字的变动与你的实际流量毫无关系,而与数字的计算方式息息相关。你的合同条款引用了该数字,而对方则掌控着产生该数字的协议。你签署了一个对方可以在不违约的情况下修改其含义的条款。
基准测试是测量结果,而非属性
大多数采购语言反映出的直觉是,基准测试分数是模型的一个属性——就像它的参数量或上下文窗口大小一样。引用这个数字,锁定质量,然后继续。但基准测试分数是测量的结果,而测量是有协议(protocol)的。HumanEval pass@1 达到 84% 是“该模型在这些 164 个问题上进行评估,以这种方式提示,用这种策略解码,按这种标准评分,在 84% 的尝试中生成了正确代码”的缩写。该句子中“该模型”之后的所有条款都是这个数字的一部分。更改其中任何一项,相同的模型权重就会产生不同的分数。
这种差异并非学术层面的。在没有任何方法论变更介入之前,即使在 temperature 为 0 的情况下,同一模型在同一基准测试上的单次运行 pass@1 估计值在不同运行之间也会有 2 到 6 个百分点的波动,标准差超过 1.5 个点。从贪婪解码切换到三选一采样,你可以在不触碰权重的情况下将 pass@1 提高 5 到 10 个点。在提示词中加入 few-shot 示例,你会进一步提高它。使用匹配模型首选格式的聊天微调模板,你会提高得更多。HumanEval+ 使用相同的问题但更严格的测试用例,将 GPT-4 的分数从 88.4% 降至 76.2%——这仅仅是因为在“什么算作通过的解决方案”这一方法论选择上有所不同,就产生了 12 个点的差距。
供应商知道这一点。模型卡知道这一点。技术报告第 17 页的注脚也知道这一点。而在大多数情况下,采购合同并不知道。
方法论漂移不是漏洞——它是数字被允许变动的方式
一个令人不安的观察是,供应商在结构上有一种动力,即朝着新模型训练所优化的方向去演进评估方法论。一个针对结构化输出进行过微调的模型,在要求结构化输出的提示词下进行评估,其得分将高于在原始非结构化提示词下评估的相同模型。一个在聊天模板上训练过的模型,在使用该聊天模板进行评估时,其得分将高于不使用该模板的情况。这些都不是欺诈。模型卡通常在注脚中、有时在附录中、偶尔在主页链接的独立方法论文档中公开这些变更。公开行为履行了义务。标题数字发生了变动。这两个事实是各自成立的。
在实践中,这意味着模型卡上的基准测试数字最好被理解为:供应商在测量他们想要发布的模型时,选择使用的协议下的测量值。协议是产品的一部分。当协议改变时,数字也会随之改变,且这种改变是有意为之的。模型卡正在完美履行它的设计初衷:在经过追溯调整以适应模型优势的方法论下,有利地展示模型。这不是模型卡系统的缺陷。这是模型卡系统按预期运作,服务于发布营销功能,而这一功能所在的层级恰好比你的合同高出一层。
失败模式在于假设方法论是稳定的。它并不稳定。一个数字在发布新版本时上升了三个点,可能是因为模型变好了。它也可能是因为评估框架(evaluation harness)被调优了。它甚至可能同时因为这两个原因而上升,而每个部分的贡献度并未公开。你的合同条款无法区分这一点,你的采购团队无法区分这一点,而你的模型卡变更追踪器(如果你有的话,大多数团队都没有)必须阅读方法论注脚才能区分,而方法论注脚通常只是埋在 PDF 附录里的一句话。
那些名副其实的合同条款
修复引用基准测试(benchmark)数值的采购条款的方法是,在引用基准时同时注明其版本和评估协议。“HumanEval pass@1 达到 84%” 是一个可以被对方通过更改协议而修改的句子。而 “在 v1.0 评估协议下,采用贪婪解码(greedy decode)、零样本提示(zero-shot prompting)及原始测试用例,HumanEval pass@1 达到 84%” 则是一个无法被随意修改的句子。方法论的锁定(methodology pin)才是承重的条款,数值只是结果。
这种修复方式的进阶版在于意识到:你真正关心的并不是公开的基准测试,而是模型在你的任务中表现是否出色。指名公开基准测试的合同条款只是你预留评估集(held-out evaluation set)条款的代理,而代理的失效程度取决于你的流量与基准测试分布的相似度。对于大多数团队来说,答案是 “并不高” —— 你的流量处于基准测试未覆盖的领域,格式也是基准测试未测试过的,且成功标准也与基准测试的评分标准不同。公开的数值仅供参考。合同中的质量参照物应该是你自己的任务套件,在你自己控制的协议下运行,并针对你维护的回归基线进行评估。
这就是 “回归测试套件即合同” 在实践中的样子。合同规定,当通过生产端点调用供应商的模型时,模型在客户持有的固化评估集上必须至少达到指定的评分。协议是固定的,因为是由客户固定的;方法论是稳定的,因为是由客户编写的。该条款不会因供应商方面的方法论变更而修改,因为方法论不属于供应商。违反服务等级协议(SLA)的服务抵扣条款可以像关联可用率(uptime)一样,关联到回归测试评分。供应商发布的基准测试则变成了信息补充,而非合同义务。
模型卡脚注的变更追踪器 大多数团队在使用的第一年里,都无法与领先的供应商谈妥预留评估集的合同条款。退而求其次的准则就像追踪 API 弃用一样,追踪公开基准测试的方法论变更:将其视为值得专门通知的一等发布事件。每一次模型发布都会附带一份模型卡(model card)。每一份模型卡都有一个方法论章节。大多数方法论的变更都会被披露。这种披露通常比标题数值更重要,而大多数团队只关注标题数值而忽视了披露内容。
一个切实可行的变更追踪器会拉取每次发布的模型卡,提取方法论段落及基准测试数值,并与之前的版本进行差异对比(diff)。它将两类更新分为不同的通知。纯数值变更 —— 协议相同,分数不同 —— 是你可以据此采取行动的质量信号。而协议变更 —— 数值相同但方法论不同,或数值不同且方法论也不同 —— 则是一个合同事件。这两者在供应商的发布公告中往往拥有相同的标题,但你的团队需要做出不同的反应。将两者混为一谈,会导致方法论的修订在你采购审查链条中被误认为是质量提升。
这种差异对比是机械化的。拉取昨天的 PDF,拉取今天的 PDF,对比方法论章节。当差异不为空时,呼叫采购审查人员。实现这个工具只需要一百行代码。其难点在于意识到这种差异至关重要,以及意识到单纯的标题数值不足以判断质量是否发生了变化。
架构层面的认知 基准测试数值是模型在某种协议下的测量结果。单纯的数值是不完整的;没有协议,它就无法复现,也无法辩护。仅针对数值签约的团队签署了一个对方可以随意解释且不违约的条款,因为协议是对方控制的部分,且协议并未写进合同。
这个问题最显而易见的形式是显式的方法论变更 —— 供应商在两次发布之间将解码方式从贪婪(greedy)切换到三选一(best-of-three),数值随之提升了 5 个点。更难察觉且更常见的情况是多个版本之间的缓慢漂移:每一次独立的方法论变更都很微小,每一个单独的脚注似乎都说得通,但在一个合同周期内的累积效应是,“数值上升了” 与 “模型在你的任务上表现更好了” 已经完全脱钩。两年后,你的采购团队正在续签一个在每次审查中都达标的条款,但该条款所依据的基准协议,早已不再是签署合同时的样子。
这要求我们将合同中涉及的每一个指标的方法论都视为指标本身的一部分。如果你引用第三方基准测试,请锁定其版本和协议。如果无法锁定,就不要将其写入合同;将公开数值视为营销宣传,转而针对你自己的评估套件签约。这两种路径都是合理的。而如果你只引用标题数值却不注明产生该数值的协议,从长远来看,合同条款衡量的内容将偏离你的初衷,而合同规定与用户体验之间的差距,将按照供应商而非你的发布节奏不断扩大。
对工程和采购部门的启示 这个教训虽小,但很容易被忽视。模型卡 (model cards) 中的核心指标设计初衷就是为了被引用。它们也被设计成可以修改的,通过在脚注中披露的方法论变更来实现,而这些变更很少会引起根据这些指标起草合同的人员的注意。如果质量条款只引用了数字而没有引用方法论,那么供应商就可以在满足该条款的同时,让你流量中的实际质量向相反的方向发展。结构性的解决方案是:根据你控制的协议 (protocol)、针对你维护的评估套件来签订合同,并规定方法论的变更将触发重新谈判,而非被动更新。
更深刻的教训是,这适用于业务所依赖的、由对手方测量工具生成的每一项指标。基准测试分数是最显而易见的例子,因为它们存在于模型卡和合同中。同样的模式也适用于供应商边缘侧测量的延迟百分位、供应商评估框架报告的准确率,以及供应商透明度报告中发布的安全性过滤通过率。每一个指标都是在特定协议下的测量结果。每一个指标都可以由协议所有者进行修订。如果你的合同中包含了这些指标,却没有包含产生这些指标的协议,那么该条款的解释权就掌握在对手方手中。
能够察觉到这一点的团队会养成一种习惯:对于引用的每一项指标,都会询问该指标是由谁的协议产生的,以及当协议发生变化时,该指标会发生什么变化。而那些没有察觉到这一点的团队会在两年后发现,尽管核心指标每个季度都达标,但留出集评估 (held-out eval) 已经下降了三个百分点,他们协商的条款所测量的东西,与他们原本想要测量的东西其实并不相同。合同是稳健的。数字是诚实的。但协议是别人的。
会员专享
余下内容仅对会员开放。 会员可读完整内容 —— 每一个公开发布的观点背后,那些框架、决策与推理的全貌。
— 完整文章,包含未公开存档的部分 — 可落地的工作框架,附带权衡与决策依据 — 新文章抢先看,先于公开发布 登录以继续阅读→ 随时取消 · 一次订阅,畅读全部