先说结论:Dory1.0-4B 有真东西。但「4B 超过 26B-A4B」这句,水分全在对比口径上。
论文 11 月 2 号挂上 arXiv,cs.CL,2611.03998,九个作者。我隔了两天才刷到。摘要那行「12 个基准平均表现超过 Qwen3.5-9B、Gemma 4 12B、Gemma 4 26B-A4B」,看得人眼睛一亮。然后我照例把 PDF 拖进正文,找那句被省掉的前提。
找到了:循环两次以上。
Dory1.0-4B · loops=1 → 12-bench 平均:基线
Dory1.0-4B · loops≥2 → 超过 Qwen3.5-9B / Gemma 4 12B / Gemma 4 26B-A4B
这就是全部落差所在。
还有一件事得挑明:这里比的是参数量,不是算力预算。
一个 4B 把共享块跑四遍,FLOPs 未必比 9B 单次前向少多少。输入块输出块只跑一次,吃算力的是中间那块反复转。它到底占多少层、每层多宽,得抠着架构表算。我还没算干净,先别拿我这半句当结论。
但有一件事现在就能说:拿「参数量」当对比单位,去证明「小模型更强」,和拿「原价」当对比单位去证明「降价 20%」,是同一类障眼法。要证明小模型更强,就该在同一算力预算下比。作者手里有没有这个数据?大概率有,弹性深度的曲线论文里画了。摘要里不放,放的是最抓眼球的那半句。
第二条要照的:「四循环模式生成的 token 量比单循环少 1.3 至 2.5 倍」。
我看到这句的时候正在喝水,差点呛着。「少 1.3 倍」——少一倍是零,少 1.3 倍是负数。倍数这么用,在中文里就是错的,没什么可辩的。
冷静下来想想作者想说什么:同等准确率下,四循环的输出长度是单循环的 1/1.3 到 1/2.5。观察本身有价值,错的是写法,不是结论。这条我前半段骂得有点狠,收回半句。
收回半句之后,剩下那半句更要命:token 少,不等于便宜。
额外算力挪进 latent space,输出短了,墙钟时间呢?串行循环的延迟是叠上去的。按 API 计费算账,账单看的是总 FLOPs 和响应时间,不是 output token 数。把「输出短」包装成「更省」,这是整篇里最像发布会话术的一句 🙃
有该骂的就有该认的。
只缓存最后一个循环的键和值,让 KV 缓存占用在任何循环次数下都跟非循环模型相当。这条是真东西,不是客气话。
循环架构从「论文里好看」走到「能部署」,卡的就是这一关。你要循环二十次,KV 缓存跟着涨二十倍,谁也别想在单卡上跑。拿最后一个循环的 KV 近似全部,丢一点精度换掉一个数量级的显存,这笔账很划算。
我拉 GGUF 那版在本机上照了照,塞了一份三十几页的旧 PDF 让它摘要,显存曲线确实平,没有前几轮就炸的那种情况。这项我给它分。
它真正有意思的地方其实不在跑分,在部署侧。
同一个 checkpoint,白天低峰跑一轮省算力,高峰期拧到四轮换质量,不用维护两个模型。这话我在别家「弹性算力」的宣传上见过一次,当时调了一下午参数,结论是弹性了个寂寞。这次是真有一个旋钮能拧。
开源发了 BF16、MXFP8、NVFP4、GGUF 四种格式。该给分。尤其 GGUF——作者知道会有人不信,要把模型拽到自己机器上验,这个态度比通稿里所有形容词加起来都值钱。
倒是提交文件大小让我多看了两眼:241 KB。一篇正文带十几张基准表的论文压到这个体积,图和附录什么待遇可想而知。v2 大概率要补料。这条不算锅,只是提醒一句,别急着把现在这些数字刻到碑上。
6 万亿 token 预训练,前 4.5 万亿用 NVFP4 精度跑的。这条我没法验,记着就行。
说句可能不中听的:NVFP4 这条路要是在万亿级 token 上真站得住,比「4B 打赢 26B」那个标题值钱得多。前者影响的是所有人下一次预训练的账本。后者只是这一次的标题。
锐评评分卡:模型,及格偏上;口径,不及格。
弹性深度是真思路,KV 缓存那条是真工程贡献,四格式开源是真让人能验。但摘要里那半句被省掉的前提,和那句「少 1.3 倍」,是同一个毛病的两个症状——赶时间,挑对自己最有利的那半截说。
这波跟不跟?想试弹性深度的,GGUF 拉下来,拿你最烦的那三个脏项目喂一遍,一个下午能出结论。想拿「4B 打赢 26B」去汇报的,先把循环次数和 FLOPs 算清楚。被追问一句「所以到底省了几张卡」,答不上来那不是模型的锅。
论文本身值得读。通稿留着当睡前故事。