bstnxbt/dflash-mlx
Lossless DFlash speculative decoding for MLX on Apple Silicon
何を解決するか
dflash-mlx は、Apple Silicon上でLLM推論を高速化するための、予測的デコード技術であるDFlashを実装しています。自己回帰生成のボトルネックを解消するために、小さなドラフトモデルを使って複数トークンを並列に予測し、その後、大きなターゲットモデルが1回のパスで検証することで、出力品質を損なわずにトークン/秒のスループットを大幅に向上させます。
動作方法
このプロジェクトは、通常10億パラメータ程度のブロック拡散ドラフトモデルを使用して、1回のパスで16トークンを生成します。その後、より大きなターゲットモデルがこれらのトークンを1回のフォワードパスで検証します。ターゲットモデルがドラフトに同意すれば、トークンは受け入れられます。同意しない場合は、最初のエラーまでドラフトが切り捨てられ、ターゲットモデルが正しい次のトークンを提供します。
Apple Silicon向けの主要な技術的最適化には以下が含まれます:
- テープリプレイロールバック:検証失敗時にGatedDeltaNetモデルの状態を効率的に復元するために、イノベーションテープを記録します。
- カスタムMetalカーネル:MクラスGPU向けに最適化された
verify_qmmint4量子化行列乗算カーネルを含み、検証ステップを高速化します。 - 階層的プレフィックスキャッシュ:RAMとSSDの2レベルキャッシュシステムで、ターゲットモデルの状態のスナップショットを保存し、再訪問されたプロンプトのプレフィルをスキップします。
- 位置スパースプレフィル:ターゲットモデルのプレフィルを、選択されたトークンのサブセットに対して行うことで、計算量を削減します。
対象ユーザー
Apple Silicon(Mシリーズチップ)を使用し、QwenやGemmaのような大規模言語モデルを、大幅に高速な生成速度で実行したい開発者や研究者。
主な特徴
- 損失なしの高速化:出力されるすべてのトークンはターゲットモデルと照合され、出力はターゲットモデルのグリーディデコードと完全に同一です。
- 高い高速化効果:ベンチマークでは、モデルやプロンプト長に応じて1.3倍から4.3倍の高速化が確認されています。
- OpenAI互換サーバー:aider、Continue、Open WebUIなどのツールと統合可能なサーバーを備えています。
- アーキテクチャ対応:Qwen3.5、Qwen3.6、Gemma4モデルに最適化されています。
- 統合診断機能:デバッグやパフォーマンス分析用に、詳細なメトリクスと構造化されたアーティファクトを提供します。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- Dispatch
- Dispatch