模型 / 数据集
Tencent/AngelSlim avatar
Tencent/AngelSlim

AngelSlim 拆解:腾讯把量化、投机解码与蒸馏塞进同一个压缩工具箱

Model compression toolkit engineered for enhanced usability, comprehensiveness, and efficiency.

1,648 个 Star179 个 ForkPythonNOASSERTION

秒懂

它是什么?
AngelSlim 是腾讯开源的模型压缩工具包,覆盖 PTQ、QAT 蒸馏、Eagle3 与 DFly 投机解码、稀疏注意力等方向。本文只依据仓库 README 与发布记录,梳理它的实际机制、上手路径和适用边界。
适合谁用?
AngelSlim 适合已经在用 Qwen3、Hy3、DeepSeek 系列并打算做 PTQ 或投机解码训练的团队,尤其是需要 FP8-Static、W4A8-FP8、NVFP4 这类具体方案而非通用接口的人。如果你的模型不在它已列出的支持清单里,或者你只需要一个跨框架的通用量化后端,它不是合适的选择,因为 README 列出的模型名和算法是一一对应的,没有承诺通用性。
能商用吗?
请先确认。这个仓库使用的许可证不在我们自动归类的范围内,商用前请阅读仓库里的 LICENSE 文件。
还在维护吗?
在维护。仓库最近一次提交在 11 天前。
用什么语言写的?
主要是 Python(依据 GitHub 的语言统计)。

以上回答依据项目的 GitHub 数据(最近同步于 2026年9月15日)和我们的分析,不构成法律意见。

开源项目深度解析

AngelSlim 想解决的是压缩方案的碎片化,而不是压缩本身

模型压缩的算法从来不缺。缺的是把量化、投机解码、蒸馏、稀疏注意力放进同一个仓库、同一套配置习惯里。AngelSlim 的定位就在这里。README 把它描述为一个面向大模型压缩的工具包,关键词是可访问、全面、高效。

从发布记录看,它覆盖的方向至少包括:PTQ 量化(FP8-Static、W4A8-FP8、NVFP4、2-bit、1.25-bit)、量化感知蒸馏(Megatron-Core 上的 scale-only QAD)、投机解码(Eagle3 训练与部署、DFly、DFlare、D-Cut、SpecExit)、稀疏注意力(Stem)、扩散模型量化(FLUX)。目标用户是做推理成本优化的工程团队,而不是研究压缩算法本身的实验室。

一个细节能说明它的取向:News 里反复出现具体模型名,Hy3、Qwen3、GLM-4.6、DeepSeek-R1/V3、Kimi-K2、Hunyuan-MT-7B、Qwen2.5VL。这说明它的路线是按模型逐个适配,而不是先做一个抽象层再等社区补插件。

从 checkpoint 到压缩权重:AngelSlim 的实际数据流

README 没有给出完整的架构图,但从 News 条目可以拼出一条大致的数据流。

量化路径是:原始 HuggingFace 权重进入 PTQ 流程,按算法产出量化权重,再交给推理侧使用。仓库里 scripts/ptq 目录对应 Hy3 的 FP8-Static 与 SmoothQuant 支持,configs/flux、configs/seed_oss 这类目录说明配置是按模型分目录组织的。

投机解码路径不同。AngelSpec 被描述为一个 torch-native、分离式(disaggregated)的投机解码训练框架,支持 DFly 和 MTP + TTT 等 draft 方法。README 提到已发布 Hy3-A21B 的 MTP 与 DFly drafter 权重。也就是说,这条路径的产物是 drafter 权重,而不是压缩后的主模型。

蒸馏路径走的是 Megatron-Core,支持 TP/EP/CP/SP 并行,面向 Qwen3-MoE 和 Hy3。这条路径的输入是训练中的模型,不是已发布的 checkpoint。

三条路径共享同一个仓库,但依赖栈并不相同:量化偏推理侧,蒸馏偏训练侧,投机解码训练则要求 torch 环境。README 没有说明它们是否共享统一的配置 schema。

上手入口:文档站、configs 目录与按模型的脚本

README 给出的主要入口是文档站 angelslim.readthedocs.io,以及仓库内的若干目录。

具体可追踪的路径包括:scripts/ptq(对应 Hy3 的 FP8-Static 与 SmoothQuant)、configs/flux、configs/seed_oss、docs/source/features/qad/mcore_qad.md(Megatron-Core 上的 QAD)、docs/source/features/quantization/daq.md(DAQ 算法)、docs/source/features/sparse_attention/stem.html、docs/source/features/speculative_decoding/dflare.html、docs/source/features/speculative_decoding/eagle/index.html、docs/source/features/speculative_decoding/spec_exit.html。

README 还指向一个部署指南 docs/source/_extra/hy4_preview_gguf_guideline.md,对应 hy4 preview MIX-STQ1_0 的 GGUF 版本。

这里有一个需要读者自己确认的地方:README 没有在正文里给出任何一条完整的命令行,也没有列出配置键名。所有具体命令都需要从文档站或上述目录里的文件读取。把这一点说清楚比编一条看起来合理的命令要诚实。

另外,README 提到 STQ1_0 kernel 已向 llama.cpp 提交 PR #22836,说明 1.25-bit 这条线有一部分工作发生在 AngelSlim 仓库之外。

支持矩阵是按模型点名的,这既是优点也是约束

AngelSlim 的 News 条目几乎每条都绑定具体模型:Hy3-preview(MoE A20B)、Hy3(MoE A21B)、Qwen3 系列、GLM-4.6、Qwen3-VL、Qwen3-Omni、DeepSeek-R1/V3、Kimi-K2、Hunyuan 0.5B/1.8B/4B/7B、Qwen2.5VL 3B/7B/32B/72B、Seed-OSS、FLUX、Hunyuan-MT-7B。

这种写法的好处是明确:你看到 Qwen3-235B-A22B-NVFP4 的权重已经发布,就知道这条路径被走通过。代价是它不承诺通用性。README 里没有出现类似「任意 HuggingFace 模型均可量化」的表述。

对使用者的实际影响是:如果你的模型不在清单里,不能假设换个 config 就能跑,需要先确认对应算法是否有模型无关的实现。文档站里按 feature 分页(quantization、speculative_decoding、sparse_attention、distill)而不是按模型分页,可能意味着算法层有一定的通用性,但这一点 README 没有明说。

另一个约束来自硬件。News 里 hy4 preview 的部署描述是 Laptop 4090(32GB RAM、16GB VRAM)加一台 4x A4000 服务器,速度 1.02 tokens/s。这个数字说明低比特大模型可以在消费级加低端服务器组合上跑起来,但也说明速度并不快。

哪里会卡住:依赖栈、许可证和版本节奏

第一个现实问题是依赖分裂。量化、蒸馏、投机解码三条路径的依赖并不一致:蒸馏走 Megatron-Core,投机解码训练是 torch-native,量化产物则可能通过 GGUF 或 vLLM 部署。README 没有说明是否存在一个统一的安装入口。这意味着实际使用中很可能需要按方向分别搭建环境。

第二个问题是许可证。仓库在 GitHub 上标注为 NOASSERTION,即未能识别出标准许可证标识。README 正文没有提到许可证条款。对商业部署来说,这是一个必须在动手前打开 LICENSE 文件确认的事项。这里不给法律意见,只指出这个事实本身。

第三个问题是版本节奏。发布记录显示 v0.2.0 在 2025 年 11 月,v0.3.0 在 2026 年 1 月,v0.5.0 在 2026 年 6 月。间隔大约两到五个月。但 News 的更新频率远高于 release,2026 年 3 月到 9 月几乎每月都有新算法或新模型支持。这说明很多能力是在 main 分支上先落地的,release 标签可能滞后于实际可用功能。依赖 release 版本的人需要留意这个差距。

第四个问题是文档深度不均。README 对每个方向只给一行描述加一个链接。像 D-Cut、SpecExit、DAQ 这些算法,README 只说明它们存在并给出论文链接,实际参数和调优空间需要读文档页或论文。

和通用量化后端比,AngelSlim 的差异在算法而不是接口

拿 GPTQ、AWQ 这类通用 PTQ 工具做对比会更清楚。它们的取向是提供一个模型无关的量化流程,你给它一个 HuggingFace 模型,它按校准集算出量化权重,输出格式通常能被多个推理引擎加载。代价是算法选择有限,低比特场景下精度损失需要自己承担。

AngelSlim 走的是另一条路。它把新算法和具体模型绑在一起发布:Sherry 是 1.25-bit 量化算法,TEQUILA 是三元量化,DAQ 针对训练后参数更新较小的场景,STQ1_0 是 1.25-bit kernel。这些不是通用后端的配置项,而是需要单独适配的算法。

投机解码这一侧的对比更明显。Eagle3、DFly、DFlare、D-Cut、SpecExit 都属于训练或推理阶段的加速方法,通用量化工具不覆盖这个范围。README 提到 DFly 相对自回归有最高 2.40 倍的平均端到端加速,D-Cut 在高并发下提升最高 15.7% 吞吐,DFlare 最高 5.52 倍端到端加速。这些是项目方给出的数字,本文没有复现。

选择逻辑因此变成:如果你要的是稳定的通用量化流程,AngelSlim 未必比成熟后端更省事;如果你要的是某个特定算法在你手上的模型上跑通,AngelSlim 更可能已经做过这件事。

维护成本落在哪里

维护成本主要不来自代码,而来自跟随。News 显示算法和模型支持在持续增加,每个新算法意味着新的配置、新的依赖或新的部署路径。使用 AngelSlim 的团队实际上是在跟随一个快速移动的上游。

具体到操作层面,需要关注的是:你用的模型是否在后续版本中继续被支持,你用的算法是否被新算法取代,以及你依赖的部署路径(GGUF、vLLM、Torch 推理)是否仍在维护。README 里 Eagle3 同时提供了训练框架和 vLLM 侧的 PR 链接,SpecExit 也指向 vLLM PR #27192,说明一部分部署能力依赖上游推理引擎的合并状态,而不是 AngelSlim 自己能控制的。

许可证方面,NOASSERTION 这个标注意味着无法从仓库元数据判断授权条款。在把量化权重用于对外服务之前,需要单独确认权重和代码各自的许可,因为 README 里发布的模型权重托管在 Hugging Face 和 ModelScope 上,可能适用不同的条款。这里同样不给法律意见,只指出需要确认的对象。

编辑结论

AngelSlim 适合已经在用 Qwen3、Hy3、DeepSeek 系列并打算做 PTQ 或投机解码训练的团队,尤其是需要 FP8-Static、W4A8-FP8、NVFP4 这类具体方案而非通用接口的人。如果你的模型不在它已列出的支持清单里,或者你只需要一个跨框架的通用量化后端,它不是合适的选择,因为 README 列出的模型名和算法是一一对应的,没有承诺通用性。动手前先确认三件事:目标模型在不在 News 或 configs 目录的清单中,对应算法的文档页是否存在,以及仓库的 LICENSE 文件实际写了什么,因为 GitHub 标注的是 NOASSERTION,不是某个标准许可证标识。

官方来源

  1. Issues
  2. Project website
  3. README
  4. Releases
  5. Tencent/AngelSlim on GitHub
社区笔记

社区笔记