DeepSeek、推論エンジンをオープンソース化
DeepSeek just open-sourced its inference engine (github.com)
要約
DeepSeekは、大規模な本番サービスを支える高性能推論フレームワーク「DeepInfer」をオープンソースとして公開しました。このフレームワークは、大規模サービングに必要なコア機能を持つオフライン推論を提供し、NVIDIA GPUやHuawei Ascend NPUをサポートしています。
全文翻訳
DeepInfer
DeepInferは、DeepSeekの大規模プロダクションサービスを支える高性能推論フレームワークです。このオープンソースリリースは、大規模サービングに必要なコア機能を持つオフライン推論を提供します。
サポートされているモデル:
- DeepSeek-V4.1-Flash
サポートされている機能:
- 最適化されたカーネル、モデルおよびサンプラーランタイム
- 並列処理: Attention DP / balanced CP, MoE EP + EPLB
- DSparkおよび信頼度スケジューリング検証
- SWAバウンドリプレイ
- 非同期スケジューリング(ゼロオーバーヘッドバッチスケジューラ)
- バッチ不変推論
- 決定論的サンプリング
- 構造化出力
機能の詳細と設定
- 最適化されたカーネル: FlashMLA, DeepGEMM, DeepEP, TileKernels, DeepSelect, およびカスタムTileLangカーネル。
- DSparkおよび信頼度スケジューリング検証: ドラフトトークンを使用してデコーディングを高速化し、信頼度推定を使用して検証をスケジュールします。
DEEPINFER_ENABLE_MTP_VARLEN=1を設定してください。DEEPINFER_USE_NEXTN_DECODEは最大ドラフト長を制御します(デフォルト: 5)。 - デコーダーSWAバウンドリプレイ: バウンドされたサフィックスのみをリプレイすることで、デコーダーのプリフィル処理を削減します。デフォルトのV4.1設定には、
DEEPINFER_YOCO_PREFILL_TRUNCATION_MODE=compactおよびDEEPINFER_YOCO_PREFILL_KEEP_TOKENS=140を設定してください。保持されるサフィックスは、SWAウィンドウと最大バックトラック長をカバーする必要があります。 - 非同期スケジューリング: CPUバッチスケジューリングとデバイス実行をオーバーラップさせます。デフォルトで有効です。
- バッチ不変推論: 異なるバッチ構成間でモデルの結果が同一であることを保証します。
DEEPINFER_BATCH_INVARIANT=1(NVIDIAのみ)で有効にします。 - 決定論的サンプリング: 同一の入力トークンとサンプリングパラメータに対して、同一の出力を生成します。
DEEPINFER_BATCH_INVARIANT=1 DEEPINFER_ENABLE_MTP_VARLEN=0を設定し、SamplingParamsに固定のseq_seedを渡してください(NVIDIAのみ)。 - 構造化出力: 生成を正規表現、JSONスキーマ、またはEBNF文法に制約します。
SamplingParamsにso_args={'schema_type': ..., 'schema': ...}を渡してください。例については、例 を参照してください。
サポートされているハードウェア:
- NVIDIA SM100 GPU
- Huawei Ascend 950 NPU
完全な推論サービスに必要なもの(このリリースには含まれていません):
- KVキャッシュシステム
- VE/Prefill/Decodeの分離(ほとんどの必要なエンジン機能は既に実装されています)
- PrefillおよびDecodeの両方に対するデータ並列レプリカ間のロードバランシング
始め方
前提条件
- Linux
- GCC >= 13.0
- Python 3.12
- CUDA 13(NVIDIAのみ)
- CANN 9.2(Ascendのみ)
ソースからのビルド
DeepInferをビルドする前に、空のPython 3.12環境を作成してアクティベートしてください。
# Ascendプラットフォームの場合は `ascend` を使用してください
# DeepInferを実行する環境でエクスポートしたままにしてください
export DEEPINFER_ACCELERATOR=nvidia
./build.sh
オフライン推論
デフォルトのチェックポイントであるdeepseek-ai/DeepSeek-V4.1-Flash-1017は、初回実行時にHugging Faceキャッシュにダウンロードされます。ローカルコピーから実行する場合は、代わりにDEEPINFER_HF_MODEL_DIR=/path/to/DeepSeek-V4.1-Flash-1017 を設定してください。
python examples/offline_inference.py
詳細については、例 を参照してください。
パフォーマンスベンチマーク
| Prefill | Decode |
|---|---|
| [画像: Prefill: non-cached input throughput vs. latency] | [画像: Decode: output throughput vs. per-user speed] |
プリフィルは4つのSM100 GPU、デコードは64のSM100 GPUで測定されました。いずれも単一のスケールアップドメイン内です。ベンチマークを再現するには、run_sweep.sh を参照してください。
評価ベンチマーク
eval/README.md を参照してください。
ライセンス
DeepInferはApache License 2.0の下で公開されています。詳細については、LICENSE を参照してください。
謝辞
DeepInferは、主にvLLM をベースに構築され、SGLang およびTensorRT-LLM からもインスピレーションを得ています。開発者の皆様に感謝いたします。
引用
@misc{deepinfer2026,
title = {DeepInfer: High-performance, large-scale inference framework for DeepSeek models},
author = {DeepSeek-AI},
year = {2026},
publisher = {GitHub},
howpublished = {\url{https://github.com/deepseek-ai/DeepInfer}},
}