MoE 服務的專家並行性
專家並行性將專家混合模型的許多前饋「專家」拆分到不同的 GPU 上,因此每個裝置僅保存一部分參數。
概述
它是低成本服務兆參數 MoE 模型的關鍵,因為每個代幣只有少數專家執行。
深入探討
專家混合 (MoE) 層用許多較小的網絡(專家)取代一個大型前饋網絡,再加上一個為每個代幣挑選前 k 個(通常是 1 或 2 個)專家的路由器。專家並行 (EP) 將不同的專家置於不同的 GPU 上。在推理時,路由器決定每個令牌需要哪些專家,然後全對所有通訊步驟將令牌洗牌到保存其所選專家的 GPU,運行 FFN,並將結果洗牌回來。這使得模型具有巨大的總參數(稀疏),同時僅激活每個令牌的一小部分(低失敗率)。 Mixtral 8x7B、DeepSeek-V3 和 GPT-OSS 等模型都使用它。困難的部分是專家之間的負載平衡以及每層兩個昂貴的全對全跳躍。
技術洞察
核心機制是每個 MoE 層兩個全面的集體:調度(將代幣發送給專家)和組合(收集輸出)。由於路由依賴數據,因此到達每個專家的令牌數量各不相同,從而導致負載不平衡和「落後者」。服務系統添加容量因子、專家緩衝區以及令牌丟棄或填充,以保持 GEMM(矩陣乘法)統一,並且通常將全面通訊與專家計算重疊以隱藏延遲。
戰略影響
成本與預算
多年來,架構決策決定著效能和營運成本。
更明確的決策
技術教育幫助團隊選擇正確的堆疊,而不僅僅是最新的堆疊。
品質管控
更好的工程選擇可以減少生產中的可靠性事故。
MoE 服務專家並行的未來
預計路由和硬體將實現更緊密的協同設計:融合調度-計算-組合內核、可批量處理許多專家的分組 GEMM,以及支援 NVLink/InfiniBand 的全能型。 DeepSeek 的輔助無損平衡和節點限制路由等技術減少了跨節點流量。分解服務將專用於與注意力 GPU 分開的「專家」GPU,並且具有更精細的 top-k 的更大專家數量(數百個)將推動 MoE 走向極端稀疏,同時保持每個代幣成本平坦。
現實世界的實施
透過在每台裝置上放置 8 個專家中的 2-4 個,跨 2-4 個 GPU 提供 Mixtral 8x7B 服務
DeepSeek-V3 使用節點限制路由來限制代幣專家跨越的節點數量,從而減少節點間的全對全
使用 vLLM 或 SGLang 專家並行模式在單一 8-GPU 節點上託管 200B+ 稀疏模型
在混合 EP+TP 部署中將注意力層上的專家並行性與張量並行性結合
風險與防護欄
優化一項基準測試可以隱藏更廣泛的系統弱點。
基礎設施和維護成本常常被低估。
隨著系統變得更加複雜,安全性和可觀察性差距可能會擴大。
實施路線圖
在實施之前定義延遲、品質和成本目標。
在實際負載和資料條件下進行基準測試。
儀器監控錯誤、漂移和使用者影響。
在擴展之前準備回滾和事件回應路徑。
不斷探索
Free newsletter
Get the daily AI briefing
Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.
One email each weekday. Unsubscribe in one click. We never sell or share your address.
Test yourself
Take the Expert Parallelism for MoE Serving quiz
Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.
Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation
常見問題
什麼是 MoE 服務的專家平行處理?
專家並行性將專家混合模型的許多前饋「專家」拆分到不同的 GPU 上,因此每個裝置僅保存一部分參數。這是廉價地服務萬億參數 MoE 模型的關鍵,因為每個代幣只有少數專家在運行。
專家並行在 GPU 上的分佈是什麼?
專家並行性將不同的專家(MoE 層的 FFN 子網路)放置在不同的 GPU 上,因此每個裝置僅擁有專家的子集。
哪種通訊模式對於 MoE 專家並行性至關重要?
每個 MoE 層通常需要一個 all-to-all 來將代幣分發給其專家,並需要另一個 all-to-all 將輸出合併回來。
儘管總參數龐大,為什麼 MoE 仍保持每個代幣的計算量較低?
路由器僅啟動每個令牌的前 k 個專家(通常是 1-2 個),因此即使模型總共有許多專家,FLOP 仍然很小。
由於路由依賴資料會產生什麼問題?
由於路由器的選擇取決於輸入,因此某些專家會比其他專家收到更多的令牌,從而造成負載不平衡和落後者。
保持專家矩陣乘法大小一致的常用技巧是什麼?
服務堆疊設定每個專家的容量(最大令牌數)並在其之外填充或刪除令牌,以便每個專家的 GEMM 具有可預測的形狀。