跳转到主要内容

系统提示词提供的人格,模型每次都会以同样的方式选择

阅读需 1 分钟Tian PanTian Pan

我最近接触的一个产品团队针对回复人格设定(简洁、详尽、对话式)进行了一项为期三周的 A/B 测试,覆盖了所有用户群组。系统提示词描述了这三种设定,并要求模型选择最匹配用户的那一种。当他们打开数据集编写分析报告时,一个数字让他们愣住了:“详尽”组占据了 91% 的流量。另外两组的比例小到几乎可以忽略不计。

他们的实验平台没有标记任何异常。没有触发任何警报。流水线完全按照他们的指令运行。三周所谓的“多人格测试”产生了一个只能告诉他们关于“详尽”信息的数据集。另外两组样本太少,根本无法进行任何统计推断。

房间里的第一直觉是提示词需要改进——更好的指令、更清晰的人格区分、为对话式场景提供更刻意的示例。如果是在十年前基于规则的路由器中,这个诊断是正确的。但对于模型来说,它是错误的。提示词不是变量,路由器才是。

当模型充当随机分配器时,它并不随机

如果你读过关于因果推断的论文,你就会知道 A/B 测试的金科玉律:实验组分配必须独立于实验单元。你必须在你正在衡量的系统之外掷硬币。一旦你让你正在衡量的系统参与掷硬币,硬币就不再公平了,你认为你正在进行的对比实验就不是你实际进行的对比。

要求语言模型选择一个人格设定正是违反了这一规则。模型不是硬币。它是一个高维函数,其对自己行为的先验是由数以 TB 计的训练数据塑造的。当你写下“根据用户选择简洁、详尽或对话式”时,你并不是在委托一个随机过程。你是在顺从一个在你的产品诞生前几个月就已经定型的学习偏好。

关于这一点的文献研究并不晦涩。LLM 输出中的冗长偏差(Verbosity bias)在不同模型家族和训练方案中都有记录——RLHF、DPO 以及对长思维链(chain-of-thought)轨迹的监督微调都强化了模型趋向于更长、更详尽回复的倾向,通常不考虑增加的长度是否真的提高了质量。根据任务和提示词的不同,冗长补偿(Verbosity compensation)的频率在 13.6% 到 74% 之间,即使提示词明确要求简洁,这种模式依然存在。模型对输出长度的先验并不弱。在许多生产环境中,它是房间里最强烈的信号。

因此,当你的系统提示词提供三个设定作为自由选择时,模型并没有在运行你的实验。它是在对自己的训练偏好进行一项观察性研究,并像这是用户要求的反馈一样汇报结果。

为什么你的实验平台没有察觉

故事中最令人不安的部分不是不平衡的发生,而是在一个理论上配备了检测手段的平台中,这种不平衡竟然连续三周未被发现。

样本比例失调(Sample Ratio Mismatch,简称 SRM)检测是防止这种失效模式的标准护栏。针对预期分配进行的卡方检验(chi-squared test)会在累积流量上持续运行,并拒绝为分配偏差超过合理阈值的实验评分。SRM 检测器并不罕见;它们内置在每一个现代实验平台中,建议的显著性阈值通常设定在 p < 0.01 左右。

检测器没有触发的原因很简单。平台监控的是用户被分配到的组别,而不是模型选择的组别。从平台的角度来看,进入实验的每个用户都被分配到了一个单一的“人格路由”处理中,而最终产生的设定被视为模型回复的一个属性,而不是实验分配的一个属性。真正起作用的随机分配器(模型)位于平台监控的随机分配器的下游。

这就是结构性的教训。只有当 SRM 检测正在检查的分配正是驱动对比的分配时,它才有效。如果实验的有效组别是在平台随机分配器下游的一个不透明函数内部确定的,那么从结构上讲,SRM 是无法察觉的。平台没有坏。它只是对一个从未被问及的问题保持了正确的沉默。

架构修复:在模型外部进行路由

最干净的修复方案也是最乏味的。人格设定分配应该由你的应用程序在调用模型之前,使用平台的随机分配器来执行。选定的人格设定随后作为模型必须服从的参数传递到系统提示词中,而不是作为一个供其选择的菜单。

在实践中,区别如下。错误的写法是系统提示词说:“根据用户的明显偏好,选择简洁、详尽或对话式。” 正确的写法是系统提示词说:“请以 {persona} 人格进行回复。定义:{definition}。” 人格变量由负责分配产品中所有其他实验组的同一个路由器填充。

会员专享

余下内容仅对会员开放。

会员可读完整内容 —— 每一个公开发布的观点背后,那些框架、决策与推理的全貌。

  • 完整文章,包含未公开存档的部分
  • 可落地的工作框架,附带权衡与决策依据
  • 新文章抢先看,先于公开发布

随时取消 · 一次订阅,畅读全部

参考资料

保持联系,关注我获取更多内容

阅读需 11 分钟

那个按会话分桶并导致 A/B 测试分群漂移的模型发布标志

当 Feature Flag SDK 按会话缓存、灰度发布更新了哈希盐值(Hash Salt),且分析脚本按事件发生时的标志值进行分组时,原本 4% 的满意度提升变成了一个干扰项。本文将探讨分群漂移是如何潜伏在运行正常的流水线中的,以及弥合这一差距的方法。

insider
ab-testing
阅读需 11 分钟

长出胳膊和腿的缓存提示词前缀

六个月前你的提示词前缀是 4k tokens,几乎可以摊销到免费。今天它是 11k tokens,你的缓存命中率是 31%,没有人能指出是哪个 PR 干的。

insider
llm
阅读需 10 分钟

撒谎的 AI A/B 测试:LLM 实验中的新奇效应、结转偏差与锚定偏差

三种心理偏差——新奇效应、锚定偏差和结转偏差——会系统性地夸大 AI 功能的 A/B 测试结果,而标准的留存组(Holdout Group)方案对这些都无能为力。本文将介绍一种真正有效的纵向队列设计(Longitudinal Cohort Design)。

insider
ab-testing
阅读需 9 分钟

当评估指标全看“感觉”时,你的 A/B 测试无法区分两个模型

点击率无法区分用户是真心喜爱一个模型还是仅仅在忍受它。在你信任实验结果并据此选择模型之前,请先证明你的指标能够检测出你故意搞坏的模型。

insider
evaluation
阅读需 11 分钟

方差正在吞噬实验:为什么传统的 A/B 测试功效计算不适用于 LLM 功能

经典的 A/B 测试数学模型假设每个用户的行为是确定的。LLM 功能两次打破了这一假设,导致标准的样本量模板在两个方向上都给出了错误的判断 —— 本文介绍了修复这一问题的四个转变。

insider
experimentation