Dory1.0-4B-MXFP8 是什么?一文看懂 NVIDIA Nemotron 循环 LLM 的核心特性与适用场景
Dory1.0-4B-MXFP8 是什么?一文看懂 NVIDIA Nemotron 循环 LLM 的核心特性与适用场景
Dory1.0-4B-MXFP8 是 NVIDIA 旗下 Nemotron 团队发布的一款 4B 参数循环(Looped / latent-recurrent)大语言模型,采用 MXFP8 8-bit 量化格式。它的最大亮点是"同一个模型、不同的推理算力预算":通过调节循环次数,你可以按需换取精度,无需换模型、无需重训练,适合对显存和延迟敏感、又想要更强推理能力的小模型用户。
一分钟认识 Dory1.0-4B-MXFP8
先上一张"身份证",方便快速建立认知:
| 项目 | 内容 |
|---|---|
| 参数量 | 4B |
| 架构 | 循环(latent-recurrent)normalized-GPT,滑动窗口注意力(SWA)与全注意力层交错 |
| 精度 | MXFP8(W8A16,8-bit 权重 + 16-bit 激活) |
| 上下文长度 | 最高 256K tokens |
| 支持语言 | 英文 |
| 定位 | 小体积、通用推理与 Agent 任务 |
| 许可 | OpenMDW-1.1(可商用) |
| 发布时间 | 2026 年 10 月 16 日 |
简单说:它不是"第 N 代更大的模型",而是一种用循环结构把小模型"跑深"的新思路——把额外的计算花在每个 token 的"潜空间思考"上,而不是堆更多参数。
核心特性:为什么说它不一样?
循环架构:一层块,跑多次
传统 Transformer 的层是"一次性"的:前向计算只过一遍。而 Dory1.0 把层栈分成三组——Input(输入块)、Recurrent(循环块)、Output(输出块),其中共享的 Recurrent 块会在前后两块之间被反复应用,且每次循环都会把输入重新注入。
这意味着 4B 的参数可以像"8B 甚至更大的计算量"那样工作:循环 2 次、4 次,每个 token 获得的计算量就成倍增加,智能随之扩展。
弹性推理算力:一个模型,多种预算
这是 Dory1.0-4B 最实用的特性。通过一个参数 n_recurrent_loops(取值 1~4),你可以在精度和推理成本之间自由权衡:
- 1 loop:单 token 计算量最小,追求极致吞吐与低延迟;
- 2 loop:官方推荐的默认起点,精度与算力平衡最佳——大部分精度增益来自第二个循环;
- 4 loop:追求更高精度,尤其适合 SWE-bench、Terminal-Bench 这类 Agentic 任务。
换预算不用换模型文件、不用重训练,改个参数就行,对线上服务非常友好。
Token 效率:想得更深,说得更少
循环把额外计算投入"潜空间思考",带来一个直观收益:解决同样的任务,生成的 token 更少了。NVIDIA 的实测数据如下(相对 1 loop 的每次尝试输出 token 倍数):
| 任务 | 2 loops | 4 loops |
|---|---|---|
| Terminal-Bench 2.1 | 0.72x | 0.50x |
| GDPval-AA-V2 | 0.66x | 0.40x |
| SWE-bench Verified | 0.79x | 0.74x |
| τ³-Bench (Banking) | 0.80x | 0.77x |
比如在 GDPval-AA-V2 上,4 loop 的输出量只有 1 loop 的 0.4 倍——输出更短,账单更低,长推理任务的端到端成本反而可能下降。
内存友好的 KV 缓存设计
常规循环结构每多循环一次就要多存一份 KV cache,显存随循环次数膨胀。Dory 支持 last-loop KV caching(recurrent_kv_cache_mode: last_loop):每个循环注意力层只保留一份缓存,新循环直接覆盖旧条目。开启后,无论循环几次,KV cache 占用都等于 1 loop 的水平,而精度几乎不受影响——把省下的显存留给更长的上下文或更高的并发。
MXFP8 量化:显存近乎减半
本仓库提供的就是 MXFP8 检查点(8-bit 权重),相比 BF16 基线显著降低显存占用。NVIDIA 在 DGX Spark 上的实测加速:MXFP8 相比 BF16 提速 1.69×~1.84×,4-bit 的 NVFP4 版本更可提速 2.17×~2.44×。
💡 该系列还另有 BF16、NVFP4、GGUF(Q5_K_M)格式可选,方便不同硬件按需取用。
基准表现:小体量,打得过谁?
先看一张关键图:Dory1.0-4B 的 AA v4.3.2 综合得分随循环次数上升,4 loop 时(18.4)已经越过 Gemma 4 26B A4B(16.35)和 Muse-Glimmer-30B(19.94 之下),逼近 Qwen3.6-35B-A3B:
几项代表性分项成绩(NVIDIA 统一评测框架下测得):
| 任务 | 1 loop | 4 loops | Qwen3.5-9B(参考) |
|---|---|---|---|
| SWE-bench Verified | 50.3 | 61.8 | 61.0 |
| IFBench(指令遵循) | 74.29 | 79.0 | 59.0 |
| GPQA Diamond(无工具) | 69.19 | 72.16 | 80.93 |
| AA-LCR(长上下文) | 63 | 73 | 68.4 |
可以明显看出两个特点:编码/Agent 与指令遵循是它的强项(4 loop 下 SWE-bench 反超 9B 级模型),纯知识类(如 AA-Omniscience)则是小模型的普遍短板。
适用场景:谁最适合用它?
- 🤖 编码 Agent 与自动化任务:SWE-bench、Terminal-Bench 表现突出,支持工具调用(tool calling),适合接入手头的编码/运维 Agent 流水线;
- 🏠 本地/边缘部署:4B + 8-bit 量化,在 DGX Spark 这类工作站级硬件即可流畅运行,也有 GGUF 版本可跑 llama.cpp(含 Apple Silicon 方案);
- ⚡ 成本敏感的在线服务:利用弹性循环,高峰期切 4 loop 保精度、闲时切 1 loop 省算力,同一份检查点搞定;
- 📄 长文档处理:256K 上下文 + last-loop KV 缓存,长文本推理不吃显存亏;
- ⚠️ 需要注意:模型只支持英文,中文场景需配合翻译层使用。
快速上手指南
两种主流部署路径,均以 2 loops 为推荐起点:
1️⃣ vLLM(NVIDIA GPU,推荐 Hopper / Blackwell)
核心思路是一条 vllm serve 命令,关键点只有三个:
- 用
--hf-overrides指定"n_recurrent_loops": 2, "recurrent_kv_cache_mode": "per_loop"(要省显存可改为last_loop); - 256K 上下文用
--max-model-len 262144(显存紧张可调小); - 开启推理与工具调用解析:
--reasoning-parser nemotron_v3 --tool-call-parser qwen3_coder --enable-auto-tool-choice。
注意:vLLM 对 Dory 的支持尚在合入流程中,需要安装带 Dory 支持的开发版本,具体命令以 README.md 的 Quick Start 一节为准。
2️⃣ llama.cpp(含 macOS / Apple Silicon)
下载 GGUF 量化版(Q5_K_M),编译/拉取支持 Dory 的 llama.cpp 后启动 llama-server,用 --override-kv "dory.num_loops=int:2,dory.recurrent_kv_cache_mode=str:per_loop" 控制循环行为,浏览器打开 http://127.0.0.1:8080 即可对话。
采样参数:官方推荐 temperature 1.0、top_p 0.95(见 generation_config.json),vLLM 下推理模式默认常开。
如需离线获取模型文件:
git clone https://gitcode.com/hf_mirrors/nvidia/NVIDIA-Nemotron-Labs-Dory1.0-4B-MXFP8
仓库文件导读
| 文件 | 说明 |
|---|---|
| README.md | 模型卡:特性、基准、部署指南、训练与许可细节(全文最值得读) |
| config.json | 模型结构配置:72 层总栈(16 输入层 + 40 循环层 + 16 输出层)、默认 n_recurrent_loops: 2、262144 上下文、MXFP8 量化配置 |
| model.safetensors | MXFP8 权重的存放入口(实际权重经 LFS 托管) |
| generation_config.json | 采样默认值:top_p 0.95、temperature 1.0 |
| chat_template.jinja | 聊天模板(Jinja),定义了对话与工具调用格式 |
| tokenizer_config.json / tokenizer.json | 分词器配置(词表 131072) |
小结
Dory1.0-4B-MXFP8 展示了循环 LLM 路线的一个成熟形态:4B 的小身板,靠循环换算力,用更少的 token 完成更多的事。如果你想在显存有限的环境里跑一个"会思考、会调工具"的英文推理模型,又希望保留按算力弹性调档的自由度,它值得列入你的评估清单。

