深挖NVIDIA-Nemotron-Labs-Dory1.0-4B-GGUF架构:循环式latent-recurrent GPT如何以4B参数挑战256K长上下文

原创2026-10-20 13:23:202,222 阅读
文章标签:大模型本地部署人工智能

深挖NVIDIA-Nemotron-Labs-Dory1.0-4B-GGUF架构:循环式latent-recurrent GPT如何以4B参数挑战256K长上下文

NVIDIA-Nemotron-Labs-Dory1.0-4B-GGUF 是 NVIDIA 于 2026 年 10 月 16 日发布的循环式(latent-recurrent)大语言模型的 GGUF 量化版本:仅 4B 参数,却通过"共享层反复循环"机制把每个 token 的算力放大数倍,原生支持最高 256K 长上下文,是本地部署长文本推理场景的强力候选。

本文带你拆解它的架构原理、实测成绩和本地部署方法,全文不堆代码,新手也能看懂 🧠

一、Dory1.0-4B 是什么?一分钟速览

一句话:它是"小身体、大脑力"的循环式 LLM —— 参数量只有 4B,但通过多次复用同一组 Transformer 层(looping),在不增加模型体积的前提下,用更多推理算力换取更强智能。

项目 说明
总参数量 4B
架构 循环式(latent-recurrent)normalized-GPT,滑窗注意力(SWA)与全注意力层交替排布
本仓库格式 Q5_K_M 量化 GGUF(约 3.5 GiB)
上下文长度 最高 256K tokens
支持语言 英文
许可协议 OpenMDW-1.1(可用于商业与非商业用途)

模型权重文件见 NVIDIA-Nemotron-Labs-Dory1.0-4B-Q5_K_M.gguf,完整说明在 README.md 的 Model Summary 表格中。

💡 除 GGUF 外,Dory1.0-4B 还提供 BF16、MXFP8、NVFP4 等格式,适配不同硬件与显存预算。

二、核心架构:循环式 latent-recurrent 如何放大算力?

传统 GPT 的每层只前向传播一次。Dory 的做法截然不同(详见 README.md 的描述):

  • 把层栈分成三组:输入块(Input,8 层)→ 循环块(Recurrent,20 层)→ 输出块(Output,8 层);
  • 中间的 Recurrent 块是共享的,会被反复执行(官方支持 1/2/3/4 次循环),每次循环还会把原始输入重新注入网络;
  • 额外的"思考"发生在潜空间(latent space)里,而不是靠输出更长的文字——这就是 "latent-recurrent" 名称的由来。

这个设计带来三大独特优势(README.md Highlights 部分):

  1. 弹性算力(Elastic Inference Compute):同一个 checkpoint,只改变循环次数就能在"速度"与"精度"之间自由调节,无需重训或换模型;
  2. Token 效率:循环次数越多,模型解同一任务所需的输出 token 越少(后文有图);
  3. 显存友好:官方支持 last-loop KV 缓存模式——每个循环注意力层只保留一份缓存,无论循环几次,KV cache 占用都与单次循环相同,256K 长上下文也因此更省显存。

三、256K 长上下文是怎么炼成的?

长上下文能力来自"混合注意力 + 大规模长文本训练"双管齐下:

  • 结构上:循环块内部交替排布滑窗注意力(SWA)层与全注意力层。SWA 层只关注局部窗口,计算便宜;全注意力层负责全局信息路由——循环机制让全注意力层被"复用"了多次,等于用更多算力反复精炼全局理解;
  • 训练上:模型先用 6T tokens 预训练(前 ~4.5T 直接在 NVFP4 4-bit 格式下完成,业界少见的"原生低精度预训练"),随后又用 300B tokens 专门做上下文扩展,把窗口从短序列拉到 256K tokens(README.md Training Methodology 部分)。

四、实测成绩:4B 参数打赢 9B、逼近 26B?

下面摘取自 README.md 的官方 Benchmark 表(统一评测框架测得):

任务 1 loop 2 loops 4 loops Qwen3.5-4B Qwen3.5-9B Gemma 4 26B A4B
SWE-bench Verified(真实代码修复) 50.3 59.5 61.8 54.7 61.0 57.4
GPQA Diamond(科学推理) 69.19 72.41 72.16 77.71 80.93 80.43
IFBench(指令遵循) 74.29 77.94 79.0 53.83 59.0 77.89
AA-LCR(长上下文) 63 71 73 64.7 68.4 64.6
SciCode(科学编程) 27.3 34.94 35.11 25.82 28.21 40.32
Terminal-Bench 2.1(终端 Agent) 12.5 18.1 22.2 15.0 24.0 35.0

几个值得注意的信号:

  • SWE-bench Verified:4 loops 拿到 61.8,超过 9B 的 Qwen3.5-9B(61.0),也超过 26B 的 Gemma 4(57.4);
  • 指令遵循与长上下文:IFBench 79.0 和 AA-LCR 73 同样压过参数大它 2~6 倍的对手;
  • 综合评分上,下图展示了 Dory1.0-4B 随循环次数提升的"战力曲线",4 loops 时已逼近 30B 级的 Muse-Glimmer-30B:

Dory1.0-4B循环式架构随循环次数提升超越更大参数模型

📌 图中 Dory 曲线:k=1 时 13.8 分 → k=2 时 17.7 分 → k=4 时 18.4 分,而 Qwen3.5-4B 仅 11.0、Qwen3.5-9B 仅 12.53。注:AA v4.3.2 分数为 NVIDIA 内部估计值。

五、越循环,输出越短:Token 效率有多惊人?

这是 Dory 最"反直觉"的特性:增加循环,反而让回答变短。下图来自 README.md:

Dory1.0-4B循环式架构减少输出token提升推理效率

以 1 loop 为基准(1.00x),4 loops 时:

基准任务 输出 token 缩减比
GDPval-AA-V2(办公任务) 0.40x(省 60%)
Terminal-Bench 2.1 0.50x(省 50%)
τ³-Banking 0.77x
SWE-bench Verified 0.74x

为什么重要? 对 Agent 类任务,每一轮工具调用的输出 token 都是真金白银的成本。Dory 把"多想"放进了模型内部的潜空间循环,而不是靠啰嗦的输出,端到端延迟和成本往往反而更低。

六、本地部署:llama.cpp 快速跑起来

本仓库的 GGUF 文件专为 llama.cpp 设计。注意:Dory 架构的支持目前仅在 llama.cpp 的 PR 分支中可用,需要从 Dory 版源码构建,官方给出的完整构建步骤(含 Apple Silicon 与通用流程)见 README.md Quick Start Guide。

推荐参数组合(摘自官方示例):

参数 推荐值 说明
dory.num_loops 2 默认起点,精度与算力最平衡
dory.recurrent_kv_cache_mode last_loop KV cache 占用锁定为 1 循环大小
--temp / --top-p 1.0 / 0.95 官方推荐采样设置
--reasoning on + --jinja 开启 启用推理与工具调用模板

核心启动命令简化版(完整参数见 README.md):

./build/bin/llama-server -m ./dory-q5_k_m.gguf \
  --alias dory --host 127.0.0.1 --port 8080 -ngl 999 \
  --ctx-size 4096 --jinja --reasoning on \
  --temp 1.0 --top-p 0.95 \
  --override-kv "dory.num_loops=int:2,dory.recurrent_kv_cache_mode=str:last_loop"

服务器启动后,浏览器打开 http://127.0.0.1:8080 即可进入本地聊天界面,OpenAI 兼容 API 位于 /v1 端点。

循环次数怎么选? 官方建议(README.md):

  • 1 loop:极致省算力,日常快问快答;
  • 2 loops:默认推荐,第二圈带来最大精度收益;
  • 4 loops:精度优先,尤其适合 SWE-bench、Terminal-Bench 等 Agent 任务。

⚠️ 完整体验 256K 上下文需要较大显存;上例 --ctx-size 4096 适合快速验证,按需上调。

七、适用场景与注意事项

✅ 适合:本地 Agent / 代码修复 / 长文档问答;显存有限但想要强推理的小模型部署;需要"算力换精度"弹性的生产环境。

⚠️ 注意:

  • 仅支持英文输入;
  • 协议为 OpenMDW-1.1,商用前建议阅读全文;
  • 官方评测基于 BF16 权重,Q5_K_M 量化版精度会略有差异;
  • 训练数据截止 2025 年 12 月,知识时效性请以实际输出为准。

八、结语:小模型的新思路

Dory1.0-4B 证明了另一条路线:智能不一定靠堆参数,也可以靠"循环思考"。4B 的体积、256K 的上下文、可调的推理算力、随循环缩短的输出——这套组合拳让它成为当下本地部署 Agent 与长文本场景非常值得尝试的 GGUF 模型。

📎 相关文件速查:

登录后查看全文
NVIDIA-Nemotron-Labs-Dory1.0-4B-GGUF