漫话大模型:7 家中国公司被点名「蒸馏」,他们到底偷走了什么?
2026 年 9 月,Anthropic 发布了一份报告,点名 7 家中国 AI 公司——阿里、DeepSeek、月之暗面、智谱、小米、商汤、MiniMax——指控它们用各种方式"蒸馏"Claude 模型的能力。
报告里列了惊人的数字:阿里被指在 5 到 7 月间产生了 1.5 亿次交互;DeepSeek 被指在 14 天内把 1200 万次用户请求转发给 Claude;月之暗面被指把近 30 万真实用户的问题直接转给 Claude 代答。
当然,这些都是 Anthropic 单方面的指控,被点名的公司大多没有回应。但不管真相如何,有一个技术问题值得搞清楚:
"蒸馏"到底是什么?为什么大厂这么怕它?以及,正规的蒸馏是怎么做的?
蒸馏(Distillation)的思路其实特别朴素:让一个小模型,学一个大模型的行为。
大模型很强,但太贵——跑一次要一堆 GPU。小模型便宜,但没那么聪明。怎么办?让大模型当老师,小模型当学生。老师做 100 万道题,把答案(包括思考过程)记下来,学生照着学。
老师模型→生成大量"标准答案"→学生模型→对着答案做监督学习老师模型 \to 生成大量"标准答案" \to 学生模型 \to 对着答案做监督学习老师模型→生成大量"标准答案"→学生模型→对着答案做监督学习
老师的标准答案是"先配方,再求根"。但学生没学会配方,它自己想了一条歪路:"先两边同时乘 x"——这步就错了,后面全错。
问题是:老师的作业本里,从来没有出现过"两边同时乘 x"这个错误。 老师不会做错,所以老师的标准答案里没有这种"错误路径"的教学案例。
学生拿着老师的标准答案训练,只能学到"正确路径长什么样",但一旦自己生成时走偏了,就进入了老师从未示范过的地带——之后生成的所有 token 都越来越歪,一路错到底。
这叫暴露偏差(exposure bias):训练时学生只见过"标准答案",生成时却要面对"自己的错误",这两者的分布完全不同。
打个比方:教练只给你看世界冠军的滑冰录像,从不告诉你"如果起跳姿势错了会怎样"。结果你一上冰场,第一个动作就走样了,后面的动作全部变形,教练的录像完全帮不上忙。
强化学习(RL)换了个思路:不看老师的录像了,让学生自己生成答案,然后给个奖励——答案对不对?
这个思路解决了"学生犯错没人管"的问题:学生自己生成的内容,哪怕全是错的,也会被打分。模型从自己的错误中学习。
一道题做 100 个 token,最后只给一个"对/错"信号。中间 99 个 token 哪个走对了、哪个走错了,模型完全不知道。就像考试只告诉你总分,不告诉你哪道题错了——学习效率极低。
这就是 RL 的代价:Qwen3 用 RL 训练,花了 17920 个 GPU 小时,AIME 数学竞赛成绩才 67.6%。
2025 年底到 2026 年,一种叫 ODP(On-Policy Distillation,在线策略蒸馏) 的方法火了起来。Qwen3 的技术报告里,它只花了 1800 个 GPU 小时,就把成绩刷到了 74.4%——比 RL 快了近 10 倍。
它的做法巧妙在哪?一句话:把蒸馏和 RL 的优点各取一半。
关键在第二步。老师不再是"生成标准答案",而是变成了一台逐字批改机:学生每写一个 token,老师就在旁边说"这个字写得好"或者"这个字写得不对"。
老师怎么打分?用的是逆向 KL 散度——这是一个很讲究的选择,下一节展开。
效果是惊人的。有个实验:从 60% 成绩的检查点出发,ODP 只用了 150 步就刷到 70%。还有个更夸张的:在单个 prompt 上连续训 20 步,模型就恢复到了老师水平——而 RL 在同样情况下只会死记硬背。
KL 散度衡量两个分布的差距。但注意,KL 是不对称的:KL(P‖Q) ≠ KL(Q‖P)。方向不一样,含义完全不同。
想象老师在教学生画画。老师会画 10 种动物,其中猫画得最好。
普通 KL(正向):学生必须学会全部 10 种动物。 哪怕老师只在 1% 的情况下画蛇,学生也得把蛇画得跟老师一样好。结果就是学生什么都会一点,但什么都不精——这叫均值寻求(mean-seeking):学生试图覆盖老师的整个分布。
来源:稀土掘金 原文