テクニカルガイド
MoE サービスのためのエキスパート並列処理
Expert parallelism distributes a Mixture-of-Experts layer’s feed-forward experts across devices.
このガイドを聴くAIによるナレーション · ~2 min
概要
It can reduce the expert weights held per device, while routing and communication costs affect whether serving is efficient.
ディープダイブ
Mixture-of-Experts (MoE) レイヤーは、1 つの大きなフィードフォワード ネットワークを、多数の小規模なフィードフォワード ネットワーク (エキスパート) と、トークンごとに上位 k (多くの場合 1 または 2) のエキスパートを選択するルーターで置き換えます。エキスパート並列処理 (EP) は、異なる GPU に異なるエキスパートを配置します。推論時に、ルーターは各トークンにどのエキスパートが必要かを決定し、その後、全対全通信ステップで、選択したエキスパートを保持する GPU にトークンをシャッフルし、FFN を実行して、結果をシャッフルして戻します。これにより、モデルに膨大な合計パラメーター (スパース) を持たせながら、トークンごとにごく一部のみ (FLOP が低い) をアクティブにすることができます。 Mixtral 8x7B、DeepSeek-V3、GPT-OSS などのモデルはこれを使用します。難しい部分は、エキスパート間の負荷分散と、レイヤーごとの 2 つのコストのかかる全対全ホップです。
現実世界の実装
各デバイスに 8 人のエキスパートのうち 2 ~ 4 人を配置することで、2 ~ 4 の GPU で Mixtral 8x7B を提供します
DeepSeek-V3 は、ノード制限ルーティングを使用して、トークンのエキスパートがまたがるノード数を制限し、ノード間の全対全体をカットします。
vLLM または SGLang エキスパート並列モードを使用して、単一の 8 GPU ノードで 200B 以上のスパース モデルをホストする
ハイブリッド EP+TP デプロイメントにおけるアテンション層でのエキスパート並列処理とテンソル並列処理の組み合わせ
MoE サービスのためのエキスパート並列処理の将来
ルーティングとハードウェアのより緊密な共同設計が期待されます。融合されたディスパッチ、コンピューティング、結合カーネル、多くの専門家を束ねるグループ化された GEMM、および NVLink/InfiniBand 対応のオールツーオールです。 DeepSeek の補助損失のないバランシングやノード限定ルーティングなどの技術により、クロスノード トラフィックが削減されます。細分化されたサービングでは、アテンション GPU とは別に「エキスパート」 GPU が専用に使用され、より細かいトップ K を備えたより大きなエキスパート数 (数百) により、トークンあたりのコストを一定に保ちながら、MoE が極度のスパース化に向けて推進されます。
実践する
なぜそれが重要なのか
- 費用と予算. アーキテクチャの決定により、パフォーマンスと運用コストが何年にもわたって推進されます。
- より明確な判決. 技術教育は、チームが最新のスタックだけでなく、適切なスタックを選択するのに役立ちます。
- 品質管理. より良いエンジニアリングの選択により、本番環境での信頼性に関するインシデントが減少します。
気をつけてください
- 1 つのベンチマークを最適化すると、より広範なシステムの弱点が隠れる可能性があります。
- インフラストラクチャとメンテナンスのコストは過小評価されがちです。
- システムが複雑になるにつれて、セキュリティと可観測性のギャップが拡大する可能性があります。
次のステップ
- 実装前にレイテンシ、品質、コストの目標を定義します。
- 現実的な負荷とデータ条件でのベンチマーク。
- エラー、ドリフト、ユーザーへの影響を計測器で監視します。
- スケーリングの前に、ロールバックとインシデント対応のパスを準備します。
探検を続けましょう
よくある質問
What is Expert Parallelism for MoE Serving?
Expert parallelism distributes a Mixture-of-Experts layer’s feed-forward experts across devices. It can reduce the expert weights held per device, while routing and communication costs affect whether serving is efficient.
エキスパート並列処理は GPU 全体に何を分散しますか?
エキスパート並列処理では、異なるエキスパート (MoE レイヤーの FFN サブネットワーク) が異なる GPU に配置されるため、各デバイスはエキスパートのサブセットのみを保持します。
MoE 専門家の並列処理の中心となる通信パターンはどれですか?
各 MoE レイヤーは通常、専門家にトークンをディスパッチするための全対全と、出力を結合して戻すための別の全対全を必要とします。
MoE は、パラメーターの合計が膨大であるにもかかわらず、トークンごとの計算を低く抑えているのはなぜですか?
ルーターはトークンごとに上位 k 個のエキスパート (多くの場合 1 ~ 2) のみをアクティブにするため、モデルに合計で多くのエキスパートが含まれている場合でも、FLOP は小さいままです。
ルーティングがデータに依存するため、どのような問題が発生しますか?
ルーターの選択は入力に依存するため、一部のエキスパートは他のエキスパートよりもはるかに多くのトークンを受け取り、負荷の不均衡と混乱が生じます。
Why are capacity limits and padding used in some MoE implementations?
Capacity-limited designs can pad or drop work, but dropless approaches also exist. This is an implementation choice rather than a universal serving requirement.