分支标签打开更多操作菜单

最新提交

 

历史

2 次提交2 次提交

文件夹和文件

名称名称最后提交信息最后提交日期
.github.github  
aspecaspec  
configsconfigs  
docsdocs  
examplesexamples  
licenseslicenses  
patchespatches  
requirementsrequirements  
teststests  
toolstools  
.dockerignore.dockerignore  
.gitignore.gitignore  
AGENTS.mdAGENTS.md  
CHANGELOG.mdCHANGELOG.md  
CITATION.cffCITATION.cff  
CONTRIBUTING.mdCONTRIBUTING.md  
DockerfileDockerfile  
LICENSELICENSE  
MANIFEST.inMANIFEST.in  
README.mdREADME.md  
README_zh-CN.mdREADME_zh-CN.md  
ROADMAP.mdROADMAP.md  
SECURITY.mdSECURITY.md  
pyproject.tomlpyproject.toml  
setup.pysetup.py  
setup.shsetup.sh  

仓库文件导航

ASpec

中文概览 · 文档 · 路线图 · 快速开始

更快的 Draft 训练。更多实验空间。

ASpec 是一个面向投机解码 Draft 模型的高吞吐训练框架。它优化了 Draft 前向、反向与优化器执行,将训练与 Target 特征生成重叠, 并在独立实验之间共享兼容的 Target 特征。

ASpec 基于 TorchSpec 代码库开发, 在其训练基础设施之上进一步优化了执行与工作流。

使用同一套工作流探索算法与模型结构、进行长上下文训练、比较 独立实验,并让检查点走完评估与导出流程。

ASpec architecture: asynchronous Target feature generation, GPU tensor transport, and independent Draft experiments sharing compatible features.

为什么选择 ASpec?

  • 加速 Draft 训练本身。 优化的注意力、融合内核以及选择性的 head/loss 计算,减少了每次前向和反向传播中的计算量与内存流量。
  • 让训练流水线持续运转。 将 Target 特征生成与 Draft 训练重叠, 通过 GPU 张量数据路径传输特征,并按有效工作量调度训练。
  • 一个 Target,多个并发的 Draft 实验。 在一次性生成兼容 Target 特征的同时,比较算法、结构或 超参数。每个 Draft 保留自己的权重、优化器、进度和检查点,无需共享优化器步进屏障。 单节点工作流参见 共享 Target 训练 。
  • 让长上下文训练切实可行。 结合序列打包、上下文并行和 优化的注意力执行,减少填充浪费并将长序列分布到多块 GPU 上。
  • 无需重建工作流即可探索。 在一致的配置、报告、恢复、评估和导出机制下 切换算法与模型配方。

选择你的 Draft

为你的工作负载选择算法和模型结构。Draft 与 Target 模型可以具有 不同的架构:

维度 已实现的选项
Draft 算法 DSpark、DFlash、EAGLE3、EAGLE4、原生 MTP;实验性 DFlash2
FFN 与路由 Dense、Qwen MoE、Ling MoE
注意力结构 MHA/GQA、物化 MLA、滑动窗口注意力(SWA)、CSA、QSA、DSA
执行 序列打包、上下文并行、共享 Target 特征、静态多节点训练

支持的组合、训练阶段和导出格式参见 算法详情 和 结构阶段 。 Qwen 与 Ling 上的 DSpark/DFlash 是主要的优化和配方重点;其他已实现的 路径有明确的支持边界,DFlash2 仍处于实验阶段。

从首次多 GPU 运行扩展到静态多节点训练,支持 NVLink、TCP 和 RDMA 数据路径。 查看 支持的路径与限制,然后浏览 配方 获取起点。

从这里开始

  1. 运行源码安装; 容器 也可用。
  2. 选择 Qwen3-8B 或 Ling tiny 体验相同的双 GPU 计划、训练、 报告、恢复和导出工作流。
  3. 选择训练配方 并 准备训练数据.

配方涵盖 Qwen3-8B、Qwen3.5-9B 原生 MTP、Qwen3.8-27B 长上下文以及 Ling tiny/flash 3.0/flash 3.1。

在仓库根目录下:

bash setup.sh
source .venv/bin/activate
CUDA_VISIBLE_DEVICES=0,1 aspec quickstart ling-tiny --output outputs/ling-tiny-001
# Or choose Qwen3-8B:
CUDA_VISIBLE_DEVICES=0,1 aspec quickstart qwen3-8b --output outputs/qwen3-8b-001

两个配置均使用内置的原始对话、各自的 tokenizer/模板,并执行八步的 train/resume/native-export 检查。添加 --target /absolute/path/to/model 以使用本地检查点。 如需使用 Target 生成的数据进行训练并进行留出评估,请继续阅读 Qwen3-8B DSpark 配方.

性能

ASpec 同时提升了 Draft 执行和完整的在线训练流水线。 DSpark 对比 在 Hopper GPU 上测量了 Qwen3-8B 和 Qwen3.8-27B 在短上下文和长上下文下的表现。一个具有代表性的 Qwen3-8B / 4K 结果:

测量 ASpec 输入 tokens/s / TorchSpec / SpecForge / AngelSpec
仅 Draft,1 GPU 15,256.44 1.96× 2.07× 2.48×
在线稳态窗口,8 GPU 77,721.37 2.28× 2.50× 2.68×

该对比对每个 Draft rank 和微步(MBS1)使用一份原始文档,按文档对齐 锚点预算和逻辑批大小,采用常规互连和充足缓冲区。仅 Draft 不包含 Target 执行、传输和特征加载;在线稳态窗口在预热更新八次后包含这些内容。这些是训练输入速率,不是推理加速比或达到给定 模型质量所需的时间。完整矩阵分别报告软件栈、GPU 拆分和完整循环速率。

一项单独的 固定序列 Qwen3-8B / CP1 研究 比较了训练质量:BSHD 验证 CE 与 TorchSpec 保持接近;测得的平均接受长度(每轮验证的 token 数,包含 Target 奖励 token)为 TorchSpec 3.665717、ASpec BSHD 3.691665、ASpec THD 3.746300。在启用确定性推理的情况下,三者均在 256 个问题上、跨三次重复与仅 Target 的贪心输出 token ID 一致。这些发现涵盖该训练序列和评估配置。

关于你自己的训练运行,请参阅 DSpark 性能设置 用于 cuDNN attention 和 direct-prefill 选项。资源拆分取决于工作负载。

参见 基准测试结果与方法 用于测量工作负载和可复现比较。要评估你训练的草稿模型,请使用 评估与导出指南 用于留出指标、验收和下游验证。

了解更多

引用

如果你觉得 ASpec 有用,请考虑引用它:

@misc{aspec2026,
  author = {Zhou, Aihui and Long, Lingkun and Yu, Chaofan and
            Yang, Zhe and Peng, Cunyin and Zhang, Zhiqiang and Zhou, Jun},
  title = {{ASpec}: A High-Throughput Training Framework for Speculative Decoding},
  year = {2026},
  url = {https://github.com/inclusionAI/ASpec}
}

引用元数据可在 CITATION.cff.

许可证

ASpec 采用 Apache 2.0 许可证。 Apache 2.0第三方材料保留其自身的许可证和声明;请参阅源文件头部和 许可证文本模型和数据集许可证 相互独立。

致谢

我们感谢 TorchSpec, AngelSpec,以及 SpecForge 感谢他们对投机解码训练生态系统的贡献。

关于

一个面向投机解码模型的高吞吐训练框架。

github.com/inclusionAI/ASpec

主题

dflashdflashdsparkeagle3eagle4ling-3-flashllmmooncakepytorchsglangspeculative-decoding资源ReadmeApache-2.0 许可证贡献贡献安全策略安全策略活动自定义属性星标6 个星标关注0 个关注分支2 个分支报告仓库发布包贡献者语言ling-3-flashllmmooncakepytorchsglang投机解码

资源

自述文件Apache-2.0 许可证

贡献

贡献

安全策略

安全策略活动自定义属性

星标

6 星标

关注者

0 关注

分支

2 分支报告仓库

发布

包

贡献者

语言