这篇论文问的是一个很朴素的工程问题:一个大模型能逐条回答某个窄任务,但要对几百万条同类实例逐条调用,账单会大到不可接受;那么能不能让模型以智能体的身份,自己动手把这份能力做成一个便宜的、可反复使用的产物------训一个小模型、写一段规则程序,或者两者混用------再拿这个产物去跑完整个工作量?作者把这种能力叫作 bottling(装瓶),并搭了一个叫 BOTTLED 的基准来测它。
设定是这样的:智能体一次拿到整份没有标签的工作量,三项任务分别是从亚马逊商品描述里抽属性值(MAVE,约 477 万条)、判断搜索词与商品的相关性四分类(ESCI,约 262 万条)、判断一段文字是否由模型生成(RAID,约 562 万条)。每次运行给一张 40GB 的 A100、10 小时、500 万 token 的预算,智能体只能调用它自己那个模型的 API,可以上网但数据集与在这些标签上训过的模型都被代理屏蔽。500 万 token 对几百万条实例意味着逐条调用模型根本不可能,必须利用实例之间的共同结构。十个模型、三项任务、每格跑两次,共 60 次装瓶。参照系有两个:一是同一模型在 1000 条抽样上的逐条零样本成绩,二是一个刻意写得很笨的蒸馏脚本------用 GLM 5.3 Flash 按零样本方式贴标签直到花完同样的 500 万 token,再按模型卡上的现成配方微调 Qwen3-0.6B 和 SmolLM2-360M 两个小模型,不做任何针对任务的调参。
结果的主轴是「零样本强不等于会装瓶」。60 次装瓶里有 48 次落在自己模型零样本成绩的 95% 置信区间下限之下,40 次甚至低于零样本最差那个模型的区间。零样本分数接近的模型,装瓶之后可以天差地别:MAVE 上 GPT 5.6 Terra 和 Sonnet 5 零样本 F1 都在 0.44 左右,装瓶后一个 0.405、一个 0.154;ESCI 上 GLM 5.3 保住了零样本的约 84%,GPT 5.6 Terra 只保住约 46%。更扎眼的是那个笨脚本:60 次里有 31 次输给两个学生模型中较好的那个,21 次两个都输。另一面,装瓶做好时省钱是数量级的:Opus 5 在 ESCI 上以 26.28 美元拿到宏 F1 0.499,零样本是 0.609、全量估算要一万七千多美元,即保留约 82% 的分数、成本低约 657 倍;在 MAVE 上它保留了九成五以上,成本低约 889 倍。与专为廉价重复推理设计的「system one」模型 Jev 相比,Opus 5 在 ESCI 上以约四分之一的成本拿到 Jev 约 94% 的分数,Gemini 3.1 Pro 在 RAID 上以约 2% 的成本拿到 Jev 九成七以上的 AUROC。
失败的样子也很具体。60 次里 21 次因为烧光 token 被强制终止,其中 8 次连输出文件都没交,GPT 5.6 Sol 占了四次------它一边写着要盯紧预算,一边启动了一个串行调用 API 给几千条样本贴标签的脚本。可预算不是全部原因:作者把这 21 次在不终止的条件下重跑,仍有 47 次(原来 48 次)落在零样本区间之下,虽然个别格子大幅回升,Opus 5 在 RAID 上从 0.713 涨到 0.929,超过了自己的零样本。另外 39 次是主动收工的,其中 Gemini 3.1 Flash-Lite 读文件时被截断在 49 行,就认定整份工作量只有 49 条,交了 49 个答案、剩着约 495 万 token 收工;Sonnet 5 两次 MAVE 都直接拿一个没微调的 Qwen2.5-1.5B 去跑全量,F1 只有 0.194 和 0.113。价格也不是质量的代理:GLM 5.3 Flash 以不到 1 美元拿到约 39% 的聚合相对增益,只被约 29 美元、42% 的 Opus 5 压过,而 GPT 5.6 Sol 花约 12 美元只有约 6%。
放到「专用小模型能否接过前沿那一档」这条线上看,这篇补上的是上一次读到时最明显的那个空位。10 月 3 日读的《Open-sourcing AstaBrief, the fast report-generation model in Asta》里,蒸馏是人做的:Ai2 用 2025 年前沿管线造了四万多条 SFT 数据训出 8B 模型,作为 Fast 模式放在 Claude 驱动的 Thinking 模式下面另开一档,我当时的判断是它的质量上限冻结在教师那一代,前沿每换一代就要重新蒸馏一次。重蒸馏的成本能不能自动化,决定了「下面那一档」能不能跟着前沿往上走。BOTTLED 恰好把这一步交给了智能体自己,并在固定预算下给它定了价,读数是:能做到,而且做到时成本降三个数量级,但这是一项独立于任务能力、目前大多数模型做不好的能力。它和 AstaBrief 在「另开一档而非接管」这一点上是一致的------最好的装瓶者也平均丢掉四分之一以上的零样本表现,代价换来的是三个数量级的成本,而不是同档替代。
不过这里有一处结构上的差别值得点出来。AstaBrief 的另开一档保留了分流:难的任务用户自己切回 Thinking。BOTTLED 的公式里允许把难的子集路由回大模型,但作者注明执行阶段的模型调用几乎总是零,智能体基本都造了完全自足的产物。我认为这不该读成「智能体不会分流」,而是预算设计的直接后果:500 万 token 对几百万条,哪怕只把百分之一路由回去也付不起。所以这个基准测的是全量替换,而不是产品里常见的那种「小模型兜底、大模型接难题」的分层形态;后者在这里没有被测到,不能从这些数字里推出它的难度。
这篇也和 9 月 16 日读的《Bypassing inference bottlenecks: Accelerating complex AI search with Retrieve-for-Train》是同一件事的两头。那篇里测试时算力能被离线编译掉,是因为目标与输入无关、且能写成固定语料上的几何量;我当时的结论是可摊销性取决于目标写不写得出公式。BOTTLED 的任务按构造就满足「窄」------同一个问题问几百万遍------所以摊销在原则上成立,难点换了位置:没有标签,也没有现成的打分函数,智能体得自己决定贴多少标签、留多少预算给训练和推理、什么时候停。那个笨脚本之所以能赢一半的智能体,在我看来正说明当下的瓶颈不在模型对任务的理解,而在资源分配和对自身产物的检验------Flash-Lite 没核对文件行数、Sonnet 5 没验证一个未微调小模型的分数,都是「没给自己建验收」的失败。需要说明的是,原文没有逐次报告智能体是否留出了自标注的验证集,这一层是我从失败案例反推的,不是原文的分析。
这个判断要站住,依赖几个前提。每个格子只有两次运行,而同一模型两次之间的差距在原文里看不到逐次数字,模型间的排序因此偏软;零样本基准是 1000 条抽样,全量成本是外推;美元成本绑定 2026 年 9 月的各家价目表,作者也承认价格结论依赖厂商定价。蒸馏基线固定用 GLM 5.3 Flash 当教师,而它本身就是装瓶最划算的模型之一,所以「输给笨脚本」部分也是「输给一个便宜但扎实的教师」。三项任务都是分类或抽取,恰是小模型本来就擅长的形态,生成型或推理型的窄任务是否同样能装瓶,这里没有证据。
什么会改变这个读法?如果下一代前沿模型的装瓶分数与零样本分数开始同步上升、差距收窄,那么「装瓶是独立能力」会退化成「只是还没训到」,重蒸馏的自动化会顺着模型换代自然到来,AstaBrief 那种冻结在旧教师处的上限就不再是结构性问题。反过来,如果换成每个模型用自己贴标签的同预算蒸馏脚本,仍然稳定赢过它自己作为智能体的装瓶结果,那就说明智能体的自主决策在这类任务上暂时只是在浪费预算,小模型替换的那一档仍会由人写的固定流水线来维护。我更倾向前一个方向会慢慢出现,因为 Opus 5 去掉预算终止后在 RAID 上反超零样本,说明上限已经摸得到,缺的是在预算内把它稳定地拿到手。