Sina Weibo Inc. 发了篇技术报告,VibeThinker-3B,基于 Qwen2.5-Coder-3B,MIT 协议,3B 参数。数字不跟你讲道理:AIME26 拿 94.3,比 DeepSeek V3.2(671B)高 0.1,比 Kimi K2.5(1T)高 1.0。配合 CLR 测试时扩增冲到 97.1。参数规模差距——DeepSeek V3.2 是它的 223 倍,GLM-5 是 248 倍。
还有一个很容易被忽略的数字:最近 6 周的 LeetCode 周赛和双周赛(4 月 25 日到 5 月 31 日),123/128 题一次通过,通过率 96.1%。不是刷过的旧题,是全新的、模型训练截止后的 unseen 题目。OOD 泛化到这个程度,比任何一个 AIME 分数都更能说明问题。
看完整篇论文,真正有意思的是方法论,数字倒在其次。
Spectrum-to-Signal:先铺路再选路
延续年初 1.5B 版本的 Spectrum-to-Signal 范式。核心理念:SFT 阶段不追求单一路径的最优拟合,而是构造一个覆盖多种解法的"频谱";RL 阶段从中筛选和放大有效的推理信号。这个区分很关键。SFT 阶段如果过早收敛到某一种解法模式,RL 就没有探索空间了,只能在一个局部最优附近微调。
SFT 是两阶段 curriculum。第一阶段用全量质量过滤的推理数据做宽覆盖冷启动:global batch 128,lr 5×10⁻⁵,cosine annealing 到 8×10⁻⁸,5 个 epoch。第二阶段筛选困难样本:仅保留推理链超过 5K token 的问题,用 VibeThinker-1.5B 做 8 次独立 rollout,过滤掉错误率低于 0.75 的简单题,再训 2 个 epoch。长链 + 高难度双重保障,确保第二阶段的数据都是真正需要深度推理的。
Diversity-Exploring Distillation 值得一提。SFT 阶段定期保存中间 checkpoint,在每个域上用 Pass@K 而非 Pass@1 或 validation loss 来选最优 checkpoint。Pass@K 评估的是"产生多样化解法的能力",不是"最确定的单一答案"。每个域选出不同的 specialist checkpoint,推理多样性得以保留。
数据合成方面,只选有可靠监督信号的种子查询做扩展。数学题必须有明确答案或解析,竞赛编程题必须附带单元测试。用强教师模型多次独立采样、majority voting 生成伪标签。seed 数据不可靠,RL 阶段的奖励信号会被污染,reward hacking 几乎必然。
RL 阶段用 MGPO(MaxEnt-Guided Policy Optimization),继承 1.5B 的工作。有意思的是第三步:Offline Self-Distillation。从 Math、Code、STEM 三个域的 RL checkpoint 中筛选高质量轨迹,用一个 learning-potential score 优先选择"答案正确但学生模型还没学好"的样本,蒸馏回 unified student model。这步解决多领域 RL 中常见的梯度干扰:每个 domain 都有自己最优的 policy,直接拼一起会打架。先各自训好再蒸馏融合,比 joint training 干净得多。
Instruct RL 阶段用规则验证器检查格式、排序、关键词约束,同时用 rubric-based reward models 评估 helpfulness 和 coherence。推理增强后的模型如果没有同时做指令跟随训练,就会"会做题但不听话"。IFEval 93.4 说明这个问题处理得不错。整个 RL 阶段都使用单窗口 64K long-context,不截断推理轨迹。对长链数学证明和复杂代码 debug 场景,这是硬需求。
CLR:精准打击式的测试时推理扩增
CLR 对完整推理链不做 self-verify,只提取链中的"claim"级逻辑锚点做可靠性加权聚合。每个独立 claim 根据与最终答案的一致性获得权重,按等价类聚类选取加权分最高的答案。trace-level self-verification 需要处理整个 verbose trajectory,CLR 只处理关键断言,token 消耗少得多。8 次独立执行取平均,效果稳定:AIME26 从 94.3 提到 97.1,IMO-AnswerBench 从 76.4 提到 80.6,GPQA-Diamond 从 70.2 提到 72.9。
全维度对比
带 CLR 的大模型对比:
| 模型 | 参数量 | AIME26 | BruMO25 | IMO-Ans | LCBv6 |
|---|---|---|---|---|---|
| VibeThinker-3B + CLR | 3B | 97.1 | 99.2 | 80.6 | 80.2 |
| DeepSeek V3.2 | 671B | 94.2 | 96.7 | 78.3 | 80.8 |
| GLM-5 | 744B | 95.8 | — | 82.5 | 85.5 |
| Kimi K2.5 | 1T | 93.3 | 98.3 | 81.8 | 85.0 |
| Gemini 3 Pro | N/A | 91.7 | 98.3 | 83.1 | 87.4 |
3B 在 AIME26 和 BruMO25 上反超千亿级模型。IMO-AnswerBench 和 LCBv6 上大模型凭借宽知识覆盖仍然占优。coding 方面,GLM-5 的 85.5 和 Gemini 3 Pro 的 87.4 高出不少,印证了 Parametric Compression-Coverage 假设。
小模型对比(<14B,无 CLR):
| 模型 | 参数量 | AIME26 | LCBv6 | IFEval | GPQA-D |
|---|---|---|---|---|---|
| VibeThinker-3B | 3B | 94.3 | 80.2 | 93.4 | 70.2 |
| Qwen3.5-4B | 4B | 84.0 | 62.0 | 89.8 | 76.2 |
| Phi4-Reasoning-Plus | 14B | 73.6 | 56.8 | 84.9 | 81.9 |
| Ministral-3-Reasoning | 14B | 85.0 | 66.0 | 73.9 | 71.2 |
3B 在数学和编程上遥遥领先。GPQA-D 上不如更大模型:Graduate-level 科学推理需要专业知识储备,正是"参数覆盖"的领域。
Parametric Compression-Coverage 假设
论文后半段的理论框架:可验证推理(数学证明、代码正确性)可以被压缩到紧凑的推理核中,开放域知识需要宽参数覆盖来容纳事实、概念和长尾场景。这个假设如果成立,小模型的推理天花板就不该被参数量线性约束。3B 已经足够容纳推理核,瓶颈在训练策略,不是模型大小。
今年小模型推理的爆发趋势一致:Qwen3.5-4B Thinking、Olmo-3-Think、Phi4-Reasoning-Plus 都在指向同一个方向。我倾向认为这个假设部分成立。纯逻辑推理确实可压缩,数理逻辑的规则集有限。但"推理+知识"的任务(GPQA-D 这种)仍然需要参数规模。VibeThinker-3B 的 GPQA-D 70.2 是个明显短板:知识储备不够,再会推理也没用。
实际跑起来的体验
HN 上已经有人跑起来了。Q4_K_M 量化版在 RTX 2070 Super 上 110 tok/s 生成、1800 tok/s prefill。整张 24GB 的 3090 跑 FP16 绰绰有余。作者明确说了这模型没训过 tool-calling 和 Agent 编程数据,不建议用于函数调用或 API 编排。编程方面只适合竞赛题,LeetCode style 那种。
有意思的是社区在探索双模型部署模式:一个小的 tool-calling 模型做主要交互,VibeThinker 专门处理推理密集的数学和代码分析。让推理模型只做它擅长的事,其余交给通用模型。这可能是小参数推理模型最实际的落地路径。
论文还推荐了一个比 IMO 更难的测试集 AMOBench,建议 max tokens 设到 60K–100K,用来评测极端推理能力。有兴趣验证 SOTA 水平的可以跑跑看。
局限和坑
Python 为主的训练数据让其他语言效果打折。安全漏洞挖掘目前不如 Qwen 3.6 和 Gemma 4。HN 上有人用 bug benchmark 测试,结果是零检出。结构化输出不是强项,IFBench 74.5。最关键的问题:GitHub 仓库(WeiboAI/VibeThinker,250+ 星、105 条 HN 讨论)目前只有 1.5B 的代码和权重,3B 还没 release。没有权重,所有数字只是论文里的数字。
做本地部署推理的,盯着这个仓库的 release 动态就行。3B 权重开源后,vLLM 跑起来,消费级显卡上验证这些数字。那才是真正有说服力的时刻。
代码:https://github.com/WeiboAI/VibeThinker
论文:https://arxiv.org/abs/2606.16140
HF:https://huggingface.co/WeiboAI/VibeThinker-3B
浙公网安备 33010602011771号