vLLM 支援 Kimi K3:速度高達 370 令牌/秒
vLLM 宣佈對 Kimi K3 提供首日支援,這是一個 2.8 萬億引數、擁有 100 萬令牌上下文的混合專家模型。透過 DSpark 推測性解碼,速度可達 370 令牌/秒。支援混合字首快取、工具呼叫,併為生產部署進行了最佳化。
我們很高興地宣佈,vLLM 已對 Kimi K3 提供高效的首日支援。Kimi K3 是由 Moonshot AI 釋出的最強大的開放權重模型之一,擁有 2.8 萬億引數,採用混合專家架構(每令牌啟用 16/896 專家),並基於 Kimi Delta Attention (KDA)、Attention Residuals (AttnRes) 和 MXFP4 權重,支援高達 100 萬令牌的上下文視窗以及原生視覺能力。
對於 vLLM 而言,Kimi K3 帶來的最大挑戰在於如何將 KDA、MXFP4 MoE、KV 快取管理、預填充/解碼分離、推測性解碼以及長上下文部署方案整合到一個可執行的推理引擎中。為此,vLLM 重新設計了混合字首快取機制,以同時管理 KDA 層的迴圈狀態和全注意力層的分頁 KV。KDA 注意力後端使用 FlashKDA 進行預填充,並在解碼時使用融合 CUDA 核心(或使用 Flash-Linear-Attention/Triton 路徑用於推測性解碼)。混合快取的設計不僅服務於 Kimi K3,也為其他類似架構的模型帶來了收益。
在效能方面,vLLM 在單個使用者請求上實現了最高 370 令牌/秒的速度(使用 DSpark 推測性解碼),相比無推測性解碼時的 118 令牌/秒提升了 3.14 倍。DSpark 演算法使用塊擴散骨幹網路,基於 Kimi K3 的豐富中間狀態並行生成多個推測令牌,並透過低秩馬爾可夫頭和置信度頭提升接受率。在編碼等低熵任務中,每次步驟可接受約 4.73 個令牌;在創意寫作等高熵任務中,約 2.61 個令牌。此外,vLLM 還支援預填充階段的序列並行,透過自定義的 reduce-scatter 和 all-gather 核心減少通訊開銷,相較於 NCCL 實現 1.7 到 4.5 倍的加速。
在生產特性方面,vLLM 支援推測性解碼、預填充/解碼分離、基於 Mooncake 的代理 KV 快取、工具呼叫、推理輸出和結構化輸出,並且在釋出時支援 NVIDIA 和 AMD GPU。Kimi K3 的聊天模板採用 Python 程式而非 Jinja 模板,vLLM 的前端實現了輸入渲染器和流式輸出解析器,並整合了 XGrammar 以約束結構化區域的解碼。
快速開始使用 Kimi K3 的最簡單方式是使用 8 塊 NVIDIA B300 或 AMD MI355X GPU,執行以下命令:
vllm serve moonshotai/Kimi-K3 --tensor-parallel-size 8 --trust-remote-code --load-format fastsafetensors --enable-prefix-caching --enable-auto-tool-choice --tool-call-parser kimi_k3 --reasoning-parser kimi_k3
若要啟用 DSpark 推測性解碼,可新增相應配置。更多細節請參考官方文件。由於複雜的依賴關係,目前僅支援 Docker 映象。