跳到主要内容

免费层级流量才是你真实的评估集

· 阅读需 11 分钟
Tian Pan
Software Engineer

针对付费用户群追踪数据进行模型优化的团队,其实是在一个“简单分布”上给自己打分。付费用户已经形成了一套工作流。他们之所以选择这款产品,是因为产品中的某些特质证明了刷信用卡付费的合理性,这意味着当他们进入评估集(eval set)时,已经学会了哪些提示词(prompts)有效,哪些功能给力,以及哪些“坑”不该踩。而免费层用户完全不是这样。他们是匿名的、探索性的,通常带有对抗性,且往往是非英语母语者,正在用第二语言对产品进行压力测试,他们触发了评估集从未涵盖的长尾失败模式。

这种不对称性正悄无声息地吞噬着每一个免费增值(freemium)AI 产品的转化漏斗。团队针对主要从付费追踪数据中提取的精选样本对模型进行评分。而免费层的那些“古怪”追踪数据——那些没有模板、用户正真诚地试图搞清楚产品能做什么的数据——从未被标注,从未进行回归测试,也从未为下一次提示词修改提供参考。模型在付费分布上变得越来越好,但在决定免费用户是否升级的分布上却慢慢变差。

转化数据令人不安地证实了这一点。大约三分之二的免费增值升级来自于用户在已经成功运行的任务上触碰了使用限制,而不是因为发现了某个高级功能。升级前的体验就是免费层的体验。如果在这个体验中模型感觉是坏的,那么转化漏斗无法通过发送一封折扣邮件来修复。

付费用户群样本是经过修饰的高光时刻

付费用户的行为模式一旦被审视就会显得截然不同。他们已经通过免费试用搞清楚了提示词语法。他们已经发现了哪些问题能得到好的回答,哪些问题会得到混乱的响应。他们拥有围绕产品构建的工作流——一个带有提示词模板的 Notion 文档,一个重新运行相同每日查询的 Slack 提醒,习惯于将长请求拆分为小请求。他们生成的追踪数据格式良好、范围明确,且集中在少数几个意图中。

免费层用户完全没有这些“脚手架”。他们可能来自一条推文、一个并排对比、同事的推荐或纯粹的好奇心。他们像在搜索框输入内容一样打字,或者像对朋友说话,或者像在测试一个试图玩坏的模型。他们以付费群体不具备的比例使用非母语英语,因为付费群体往往过度集中在产品有营销活动且语言匹配的市场。他们会问产品不支持的问题,且不知道自己不该问。他们会为了好玩而尝试“越狱”。

这两个群体产生的追踪数据在性质上完全不同。在付费加权样本上的综合准确率只能说明模型处理好了它的“理想路径(happy path)”。它无法告诉你那些仍在犹豫是否付费的用户,是否获得了值得让他们升级的体验。

为什么评估集默认会向付费用户偏离

评估集并非随机采样,而是在团队关注的地方采样,而团队通常关注支持工单的来源。付费用户通过正式渠道投诉:Zendesk 工单、客户经理、来自采购负责人的 Slack 升级反馈。免费用户则通过流失来投诉。一个得到糟糕答案的免费用户不会写工单——他们会直接关闭标签页,并认为这个产品“不太好”。在 AI 团队有人标注这条数据之前,信号就已经消失了。

标注预算加剧了这一现象。领域专家很贵,编写评估案例很耗时,人们本能地会将预算花在通过工单渠道进入的案例上。半年后,评估集中拥有数百个来自付费追踪数据的精选示例,以及几个某人在红队测试周添加的合成对抗案例。而免费层的古怪追踪数据——那些真正能发现导致转化流失的回归测试数据——从未进入数据集,因为标注预算早已被占满。

此外,还存在一种更隐蔽的动态:评审员将免费层追踪数据视为“噪声”。一名初级产品经理在扫描失败案例时,看到一个明显格式错误的查询,将其标记为“用户错误”然后继续。但优雅地处理格式错误的查询正是产品的职责,特别是在那些还没学会“正确格式”的用户群中。在那样的查询中掉链子的模型,就是无法通过“升级测试”的模型。

准则:有意识增加免费层权重的分层采样

解决方法不是对所有流量进行随机采样。随机采样会给你一个代表性分布,这几乎同样糟糕——它会让付费用户的理想路径仅凭数量就淹没长尾数据。真正的准则应该是分层采样,并明确增加免费层切片的权重。

一个可行的方案:

加载中…
References:Let's stay in touch and Follow me for more thoughts and updates