1. プロジェクト概要
AngelSpecは、TencentのPyTorchネイティブな訓練フレームワークであり、推測デコーディング用ドラフトモデルを構築するために作られました。ドラフトモデルとは、大規模言語モデルが1回のフォワードパスで1つのトークンではなく複数のトークンを生成できるようにする小型の「予測器」モデルであり、出力品質を損なうことなく推論レイテンシを削減します。
2. 背景と位置づけ
推測デコーディングは、軽量なドラフトモデルにいくつか先のトークンを提案させることでLLM推論を高速化します。提案されたトークンは、対象となる完全なモデルによって1回のパスで検証されます。この高速化は、ドラフトモデルが対象モデルと適切に整合している場合にのみ実現されます。そして、本番環境の規模でその整合性を適切に訓練することは、これまで研究用コードを継ぎ接ぎすることでしか実現できませんでした。TencentのHunyuan AI Infraチームは、AngelSpecを開発してこのギャップを埋めました。推測デコーディングを事後的な推測のトリックではなく、第一級の訓練目標として扱い、Tencent自身のHy3およびQwen3ドラフトモデルのリリースを支える訓練パイプラインを製品化したのです。
他の推測デコーディング用トレーナーとの違い:
- 1つのフレームワークでのアーキテクチャの幅 — 6種類の異なるドラフトアーキテクチャ(自己回帰型およびブロック並列型)を、別々のコードベースを用意することなく設定から選択可能です。
- 分離型訓練デザイン — 推論(隠れ状態の生成)と訓練(最適化)は、高スループットのテンソルストアで接続された別々のGPUワーカーグループ上で実行されるため、それぞれ独立してスケールできます。
- 本番環境での実績 — 研究用のプロトタイプではなく、Tencent自身のHy3-A21BおよびQwen3-8Bドラフトモデルを訓練・リリースするために使用されたフレームワークです。
3. 機能カテゴリ
- 🧩 ドラフトアーキテクチャ — 6種類の選択可能な方式。代表的な例: DFly(隠れ状態補正付きARヘッドによるブロック並列)、DFlash(アンカーサンプリングと並列ブロック生成)、DFlare(DFlashに学習可能なレイヤーごとの対象融合を追加)、Eagle3(自己回帰型のテスト時訓練)、DSpark(DFlashバックボーンにEAGLE風のARヘッドを組み合わせ)、MTP(完全なMoEデコーダーレイヤーをドラフトヘッドとして使用)。目的: フレームワークを切り替えることなく、対象モデルとレイテンシの予算にドラフト方式を適合させます。
- ⚙️ 訓練設定 — 5つ以上のすぐに実行できるYAML設定。例:
vllm_qwen3_8b_dfly.yaml、vllm_qwen3_8b_dflare.yaml、sglang_qwen3_8b_dflash.yaml、sglang_qwen3_8b_dspark.yaml、vllm_qwen3_8b_mtp_pack_usp_40k.yaml。目的: 一般的な対象モデルとバックエンド向けに、実績のある訓練レシピを再現します。 - 📦 実行可能な例 — DFly、DSpark、MTP、およびDFly-CPTのバリエーションを網羅する2つの対象モデル例スイート(Hy3マルチノード、Qwen3-8Bシングルノード)。目的: 新規参加者がすぐに始められる、エンドツーエンドの訓練実行環境を提供します。
- 🤗 リリース済みドラフトモデル — Hugging Face上の複数の事前学習済みチェックポイント。標準モードと「思考」モードの両方で利用可能なHy3-DFly-Block8やHy3-MTP-TTT3などが含まれます。目的: ゼロから訓練することなく、ユーザーが推測デコーディングをすぐに評価・デプロイできるようにします。
4. 主な特徴
- TTTを用いた長文脈MTP訓練 — マルチトークン予測訓練は、ポリシーに基づくマルチデプスロールアウトとメモリ効率の高い単一因果パスを使用し、Ulyssesのシーケンス並列処理により128kトークンの文脈までスケールします。
- 承認整合型損失関数 — 組み合わせ可能な損失(交差エントロピー、top-k KL、LK損失、D-PACE重み付け)は、推測デコーディングにおいて重要な指標、すなわち対象モデルが実際に承認するドラフトトークンの数を直接最適化するように調整されています。
- ドキュメント対応型シーケンスパッキング — Megatron風の固定長パッキングとドキュメント間の分離により、無関係なドキュメント間でアテンションが漏洩することなく、訓練のスループットを高く保ちます。
- オンライン推測デコーディング評価 — 訓練中に単なるプロキシ損失ではなく、実際の推測デコーディング指標(平均承認長など)を報告するため、ドラフトモデルの品質がリアルタイムで可視化されます。
- Mooncakeによる推論/訓練の分離 — 隠れ状態生成とモデル最適化のための別々のGPUワーカーグループがMooncakeテンソルストアを通じて通信し、大規模クラスター上でそれぞれが独立してスケールできるようにします。
- 実測値に基づくエンドツーエンドの高速化 — DFlyは自己回帰デコーディングと比較して最大2.40倍の平均エンドツーエンド高速化をもたらし、実トラフィック下および高並行処理下でも維持されるスループット向上をベンチマークで実証しています。
5. 役割別のユースケース
- 一般開発者 — リリース済みのドラフトモデル(Qwen3-8Bバリエーションなど)をvLLMやSGLangに統合し、再訓練なしで既存の推論パイプラインを高速化します。
- DevOps / SRE — 分離型ワーカーグループの設計を活用し、隠れ状態生成と訓練それぞれでGPUクラスターのキャパシティを個別に計画し、本番環境の健全性シグナルとしてオンラインの承認長指標を監視します。
- データ / 研究科学者 — 独自の対象モデルに対してカスタムドラフトモデルを訓練し、サポートされている6種類のアーキテクチャで実験し、特定のワークロードに合わせて承認整合型損失の重み付けを調整します。
- プロジェクトマネージャー — 公開されているベンチマークとリリース済みチェックポイントを評価し、カスタム訓練にエンジニアリングの時間を割く前に、推論コスト削減の取り組みの範囲を見積もります。
6. はじめに
必要なものを見つける — リポジトリの設定や例を参照するか、Hugging Faceでリリース済みのチェックポイントを確認してください:
https://huggingface.co/collections/AngelSlim/angelspec
インストール / 統合:
pip install -e ".[vllm]"
pip install mooncake-transfer-engine
./examples/qwen3-8b-dfly/run.sh
貢献する — リポジトリをフォークし、変更を加えてプルリクエストを作成します:
git clone https://github.com/Tencent/AngelSpec
7. プロジェクト構成
AngelSpec/
├── angelspec/ # コアフレームワークのコード(アーキテクチャ、損失、訓練ループ)
├── configs/ # 訓練設定YAMLファイル
├── examples/ # 実行可能なエンドツーエンドの例(Hy3、Qwen3-8B対象)
├── tests/ # テストスイート
├── docs/ # ドキュメントのソース
└── tools/ # ビルドおよびユーティリティスクリプト(build_conda.shなど)
8. 関連するエコシステム
- TorchSpec — AngelSpecが推測デコーディング訓練のプリミティブとして基盤とするPyTorchネイティブの基礎。
- Mooncake — AngelSpecの分離型推論および訓練GPUワーカーグループを接続するテンソルストア転送エンジンを提供。
- vLLM / SGLang — 訓練時のロールアウトと、結果として得られるドラフトモデルのデプロイの両方でサポートされる推論バックエンド。
- AngelSlim — AngelSpecが一部を構成する、Tencentのより広範な大規模モデル圧縮ツールキット。
9. ライセンス
- ✅ Apache-2.0ライセンスの下で、商用目的を含めてAngelSpec自体のコードを使用、変更、配布できます。
- ✅ フレームワーク上に独自のドラフトモデルを構築して訓練できます。
- ❌ 再配布時に既存の著作権またはライセンスの表記を削除しないでください。
- ℹ️ 同梱のサードパーティコンポーネントは元のライセンスを引き継ぎます(EagleとTransformersはApache-2.0、SpecForge、DeepSpec、TorchSpecはMIT) — これらを個別に再配布する前に該当のサブディレクトリを確認してください。
10. FAQ
Q: どのドラフトアーキテクチャから始めるべきですか?
A: ほとんどの対象モデルにおいて、DFlyが妥当なデフォルトです。これは公表されている中で最大の高速化(最大2.40倍)をもたらし、vllm_qwen3_8b_dfly.yamlのような設定ファイルがあらかじめ用意されています。
Q: AngelSpecを使用するには、独自のドラフトモデルを訓練する必要がありますか?
A: いいえ。事前学習済みのチェックポイント(Hy3-DFly-Block8、Hy3-MTP-TTT3など)がHugging Faceコレクションで公開されており、直接デプロイ可能です。
Q: AngelSpecはどの推論バックエンドをサポートしていますか?
A: vLLMとSGLangの両方をサポートしており、設定ごとに選択可能です(vllm_qwen3_8b_dfly.yamlとsglang_qwen3_8b_dflash.yamlなど)。
Q: AngelSpecは非常に長い訓練文脈にどう対応しますか?
A: TTTを用いたMTP訓練は、Ulyssesのシーケンス並列処理とメモリ効率の高い単一因果パスを組み合わせることで、128kトークンの文脈までスケールします。
Q: 設計の背景にある技術的な詳細はどこで読めますか?
A: 付随する論文「AngelSpec: Towards Real-World High Performance Inference with Speculative Decoding」がarXiv:2607.25852で入手可能です。
11. クイックリンク
- リポジトリ: https://github.com/Tencent/AngelSpec
- ドキュメント: https://angelspec.readthedocs.io
- テクニカルレポート: https://arxiv.org/abs/2607.25852
- 事前学習済みモデル: https://huggingface.co/collections/AngelSlim/angelspec
- イシュー: https://github.com/Tencent/AngelSpec/issues
- プルリクエスト: https://github.com/Tencent/AngelSpec/pulls
12. まとめ
AngelSpecは、Tencentの本番環境向け推測デコーディング訓練パイプラインを、6種類のドラフトアーキテクチャとvLLMおよびSGLangの両方のバックエンドにまたがる、オープンで設定駆動型のフレームワークとしてパッケージ化したものです。推測デコーディング訓練スタックをゼロから構築することなく、すでにリリースされているドラフトモデルをデプロイするかカスタムモデルを訓練することで、大規模なLLM推論レイテンシの削減が必要なチームにとって最も価値のあるものです。