vLLM Kimi K3 支援預覽

vLLM Kimi K3 支援預覽

vLLM 正在為 Moonshot AI 的 Kimi K3(一個 2.8 兆參數模型)準備 day-0 開源服務支援。此整合使開源社區能夠在其模型權重發布時立即部署 Kimi K3,預計於 2026 年 7 月 27 日發布。

Kimi K3 架構與服務影響

Kimi K3 引入了幾個架構上的變化,改變了推理引擎的需求。該模型具備 100 萬 token 的上下文窗口,以及一種高度稀疏的混合專家(MoE)架構,包含 896 個路由專家(每個 token 活躍 16 個)以及共享專家。

關鍵技術規格及其服務影響包括:

屬性 Kimi K3 配置 服務影響
模型規模 2.8T 參數 需要大規模專家並行以及高帶寬加速器域
上下文長度 1M token 優先考慮快取容量、前綴重用以及預填/解碼分離
注意力 混合 KDA 和完整注意力 需要同時管理循環狀態快取和分頁 KV 快取
深度 注意力殘差 (AttnRes) 需要專用內核進行跨層表示讀寫
量化 MXFP4 權重 需要一個高效的 FP4 MoE 路徑來支援 Kimi K3 的 SiTU 激活
多模態 原生視覺 需要多模態預處理以及視覺並行策略

解決 KDA 的前綴快取問題

Kimi Delta Attention (KDA) 是遞迴的,意味著它會推進類似矩陣的遞迴狀態和短卷積狀態,而不是保留每個 token 的 KV 對。這為常規前綴快取帶來挑戰,因為引擎必須在精確的前綴邊界擁有 KDA 狀態,以避免重播之前的狀態。

為了解決此問題,vLLM 實施了一種設計,將先前相關的三個概念解耦:

  1. 實體區塊大小: KDA 狀態和完整注意力 KV 在 GPU 上的分配。
  2. 排程器對齊: 執行停止的點,以確保快取群組一致性。
  3. 前綴匹配單位: 用於雜湊和匹配共享前綴的細粒度 token 區間。

此分離使 vLLM 能夠在較大的實體狀態塊內的細粒度邊界註冊有效的 KDA 狀態。當後續請求匹配部分塊時,快取狀態會被複製到私人目標(複製於寫入),同時保留共享前綴並允許新請求繼續。

效能優化與核心工作

因為 Kimi K3 改變了推理的「熱路徑」,vLLM 已實施了數個特定於硬體和架構的優化:

KDA 預填與解碼

預填整合了 FlashKDA 和 Flash Linear Attention (FLA),融合了輸入投影和因果卷積。對於解碼,vLLM 使用一個融合的 NVIDIA 內核,將短卷積、KDA 狀態更新、輸出閘門和正規化合併為單一操作,以降低每輸出 token 時間(TPOT)的懲罰。

注意力殘差 (AttnRes)

為了在不產生過多記憶體流量的情況下處理跨層表示讀取,vLLM 使用 Triton 和 NVIDIA 內核,融合殘差更新、AttnRes 混合和輸出 RMSNorm。

MLA 模組與 PD 分離

Kimi K3 每四層使用一次 MLA 注意力。vLLM 已將 torch.compile 自定義融合替換為手動融合的 MLA 模組。該模組具備獨立的預填和解碼路徑,優化用於 Prefill-Decode (PD) 分離部署,並且在解碼路徑的門檻投影中包含多流支援。

MXFP4 MoE 與硬體支援

Kimi K3 的發布配置使用 MXFP4 權重和 SiTU 激活。vLLM 現在透過 MXFP4 TRTLLM-Gen 和 DeepGEMM 將 SiTU 參數映射到優化的 FP4 專家路徑。

硬體支援包括:

  • NVIDIA: 特定內核的最終調整以及 MXFP4 MoE 協作。
  • AMD: 透過 FlyDSL 的 MLIR Python 內核堆疊提供初步支援,具備硬體調校的 A16W4/A8W4 量化融合運算子和 SiTU 激活。

Day-0 發布套件

開源發布將包括 vLLM 模型、解析器、快取和核心整合,以及初始的 Docker 映像和經過驗證的 NVIDIA 配置啟動食譜。它還將提供使用 FlyDSL MoE 內核的初始 AMD 路徑、多模態範例、工具使用、推理和結構化輸出範例,以及初步的效能結果。

Sources