DeepSpec:DeepSeek 开源投机解码全栈训练框架,两天狂揽 1300 星

DeepSpec:DeepSeek 开源投机解码全栈训练框架,两天狂揽 1300 星

Seven

DeepSeek 又双叒叕开源了。这次不是模型本身,而是一套完整的投机解码(Speculative Decoding)训练和评估框架——DeepSpec。上线两天 GitHub 星标突破 1300,社区已经有人提交 PR 增加新的解码算法。如果你正在为 LLM 推理成本发愁,这个项目值得认真看看。

一、它是什么

DeepSpec 项目概览

在聊 DeepSpec 之前,先搞清楚投机解码到底在解决什么问题。

传统自回归推理(Autoregressive Decoding)的痛点很简单:每生成一个 token,都要把完整模型跑一遍。一个 34 层的模型生成 100 个 token,就是 100 次完整前向传播。GPU 算力大量浪费在串行等待上。

投机解码的核心思路是:用一个小而快的「草稿模型」(Draft Model)先猜好几个 token,再让大模型一次性验证。如果猜对了(概率很高),就直接接受;猜错了,从错误点截断重新生成。

DeepSpec 全栈工作流程

这个思路并不新鲜,但 DeepSpec 的价值在于:它把整个训练流程做成了开箱即用的全栈工具链——从数据准备、模型训练到基准评估,一条命令搞定。

二、DeepSpec 是什么

DeepSpec 是 DeepSeek 官方开源的投机解码全栈代码库(MIT 协议),包含三个核心组件:

DeepSeek DeepSpec 项目

数据准备:下载训练数据集(mlabonne/open-perfectblend),用目标模型重新生成答案,预计算 Target Cache。注意:默认配置下的 Target Cache 约 38 TB——是的,你没看错。

模型训练:支持三种 Draft Model 算法,8 GPU 单节点即可开训。

基准评估:内置 9 个评估数据集,覆盖数学推理、代码生成、通用对话三大维度。

三大算法对比

三、三种算法,各有所长

DeepSpec 内置了三种投机解码算法,覆盖从前沿研究到成熟基线的全谱系:

3.1 DSpark:DeepSeek 的新王牌

DSpark 是 DeepSeek 自研的算法,随 DeepSpec 一同发布(论文 DSpark_paper.pdf 已包含在仓库中)。它的核心设计有两个创新点:

Markov Head:用一个低秩线性映射(rank=256)从目标模型的中间层特征预测下一个 token。不需要完整的 Transformer 前向传播,只需要一次矩阵乘法。

Confidence Head:额外训练一个置信度分类器,判断 Draft Model 的预测是否可靠。不可靠的位置直接截断,避免浪费 Target Model 的验证算力。

从配置文件可以看到 DSpark 的具体参数:

  • block_size = 7(每个 anchor 预测 7 个 token)
  • num_draft_layers = 5(Draft Model 只有 5 层,目标模型 34 层)
  • target_layer_ids = [1, 9, 17, 25, 33](从目标模型的 5 个均匀分布层提取特征)
  • num_anchors = 512(每序列最多 512 个锚点)

训练超参:学习率 6e-4,全局 batch size 512,bf16 精度,10 个 epoch。

3.2 DFlash:轻量级选手

DFlash 来自 z-lab 团队(arxiv 2602.06036),核心思路是用线性映射 + FlashAttention 构建 Draft Model。相比 DSpark 的多头设计,DFlash 更简洁,训练速度更快,适合资源有限的场景。

3.3 Eagle3:社区成熟方案

Eagle3 来自 SpecForge 项目(arxiv 2503.01840),是目前社区使用最广泛的投机解码算法之一。DeepSpec 对 SpecForge 的代码进行了适配和整合,保留了原版的 Eagle3 建模、损失函数和优化器实现。

四、支持的目标模型

DeepSpec 目前支持四个目标模型的配置:

模型 参数量 配置文件
Qwen3-4B 4B dspark_qwen3_4b.py
Qwen3-8B 8B dspark_qwen3_8b.py
Qwen3-14B 14B dspark_qwen3_14b.py
Gemma4-12B 12B dspark_gemma4_12b.py

每个模型都有 DSpark、DFlash、Eagle3 三种算法的配置。扩展到其他模型也很方便——改 config 里的 target_model_name_or_path 和 target_layer_ids 即可。

五、评估体系:9 大基准全覆盖

DeepSpec 内置了 9 个评估数据集,按任务类型分为三组:

数学推理:GSM8K、MATH500、AIME24、AIME25

代码生成:HumanEval、MBPP、LiveCodeBench

通用对话:MT-Bench、Alpaca、Arena-Hard-v2

评估脚本会计算投机解码的「接受率」(acceptance rate)——即 Draft Model 猜对的 token 比例。接受率越高,推理加速越明显。一般经验是:数学推理场景接受率较高(因为答案相对确定),开放对话场景接受率偏低(因为表达方式多样)。

六、38 TB 的 Target Cache 是怎么回事

DeepSpec 的训练流程有一个让人惊讶的数字:默认 Qwen3-4B 配置的 Target Cache 约 38 TB

这不是 DeepSpec 的 bug,而是投机解码训练的固有需求。训练 Draft Model 需要目标模型每一层的 hidden states 作为监督信号。对于一个 34 层、hidden_dim=2560 的模型,每个 token 的 hidden states 就是 34 × 2560 × 2(bf16)≈ 170 KB。乘以训练集的 token 总量,很容易达到 TB 级别。

好消息是,你可以通过减少训练数据量或减少捕获层数(target_layer_ids)来压缩 Cache 大小。

七、与 RTK 的互补关系

如果你读过之前介绍的 RTK,可能会问:这俩有什么区别?

RTK 是 prompt 层面的优化——它通过 CLI 代理压缩输入 context,减少 token 消耗。相当于「省油驾驶」。

DeepSpec 是 inference 层面的优化——它通过 Draft Model 减少推理计算量。相当于「换一台更高效的发动机」。

两者完全可以叠加使用:RTK 减少输入 token,DeepSpec 加速输出 token,双管齐下。

八、局限性

DeepSpec 很强,但也有明显的边界:

硬件门槛高:默认配置需要 8 GPU 单节点(A100/H100 级别),Target Cache 需要 38 TB 存储。个人开发者基本跑不起来完整的训练流程。

目标模型有限:目前只有 Qwen3 和 Gemma4 的配置,不支持 DeepSeek 自家的 V3/R1 模型(这可能是策略性选择——自家模型有更好的推理优化方案)。

不包含推理引擎集成:DeepSpec 只负责训练 Draft Model,不包含推理引擎(如 SGLang、vLLM)的集成代码。你需要自己把训练好的 Draft Model 接入推理引擎。

学术导向:仓库附带了 DSpark 论文(700+ KB 的 PDF),评估体系覆盖 9 个 benchmark——这些都说明它更偏向研究和复现,而非生产部署。

九、社区反响

DeepSpec 上线两天就获得了 1300+ 星标,Hacker News 上线当天就有讨论帖。社区已经开始活跃:

  • 用户请求发布预训练的 Draft Model 权重(Issue #3,2 个 👍)
  • 社区贡献者 catnanami 提交了 PR,增加 D2SD(Dual Diffusion Speculative Decoding)训练支持(PR #2,引用了 arxiv 2606.04446 论文)
  • 多个 AI 新闻聚合器和中文技术社区在 24 小时内收录

十、快速上手

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# 克隆仓库
git clone https://github.com/deepseek-ai/DeepSpec.git
cd DeepSpec

# 安装依赖
pip install -r requirements.txt

# 数据准备(需要 SGLang 服务目标模型)
bash scripts/data/prepare_data.sh

# 训练(8 GPU 默认配置)
bash scripts/train/train.sh --config config/dspark/dspark_qwen3_4b.py

# 评估
bash scripts/eval/eval.sh

完整文档见仓库 README 和 scripts/data/README.md。

相关链接

  • 标题: DeepSpec:DeepSeek 开源投机解码全栈训练框架,两天狂揽 1300 星
  • 作者: Seven
  • 创建于 : 2026-06-28 16:00:00
  • 更新于 : 2026-07-14 00:18:14
  • 链接: https://blog.oneiseven.top/2026/06/28/DeepSpec-DeepSeek开源投机解码全栈训练框架/
  • 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
评论