如何為Kimi K3構建Day-0 API
Baseten 為 Kimi K3 提供了 Day-0 支持,這是一個 2.8T 參數的新前沿開放模型。本文介紹了在發佈日前運行該模型所需的技術工作,包括硬件配置、權重加載、推理引擎集成、質量驗證、性能優化和規模化部署。
Baseten 已在其 Model APIs 上為 Kimi K3 提供 Day-0 支持。Kimi K3 是一個全新的 2.8T 參數開放前沿模型,由 Moonshot AI 開發。感謝 Moonshot AI 提前分享權重,以及 Inferact 和 RadixArk 團隊在整個開發過程中的合作。
Kimi K3 今日在 Baseten Model APIs 上可用,支持視覺輸入和完整的 1M 令牌上下文窗口。作為一個 2.8T 參數的模型,它比任何之前的開放模型都大得多,給構建高性能推理 API 帶來了許多挑戰。新的架構技術使 Kimi K3 能夠超越此前開放前沿模型的萬億參數閾值:Kimi Delta Attention (KDA) 和 Attention Residuals (AttnRes) 作為 Kimi 架構的可擴展骨幹;極稀疏的專家,每次僅激活 896 個專家中的 16 個,通過 Stable LatentMoE 組織;以及用於處理圖像輸入並將視覺信息映射到潛在空間的新視覺編碼器。
里程碑 1:生成第一個令牌
在獲得 Moonshot AI 團隊提前訪問 Kimi K3 權重後,首要任務是讓模型運行起來。生成第一個令牌需要:配置硬件——考慮到 Kimi K3 的大小,我們決定在 NVIDIA GB300 NVL72 系統上運行模型;加載權重——在 MXFP4 格式下,Kimi K3 權重超過 1.4TB;啓動推理引擎——我們與 vLLM 和 SGLang 團隊合作,運行預發佈版本的推理引擎。通常,在構建 Day-0 API 時,早期步驟是將權重轉換為 NVFP4 以提高性能。但 Kimi K3 使用原生 MXFP4 權重和 MXFP8 激活,我們可以直接使用這些權重。
我們與 Inferact(vLLM)和 RadixArk(SGLang)緊密合作。在 Baseten Inference Stack 上運行 Kimi K3 之前,我們需要與領先的開源推理引擎建立基線。為模型添加對推理引擎的支持並非易事,需要實現核心建模代碼、為 KDA 等新架構優化內核,以及構建從前端(如分詞和工具調用)到後端的兼容性。vLLM 的早期訪問鏡像幫助我們建立了基本功能完整性、通過初步評估並設定基線性能目標。SGLang 的早期訪問鏡像為 Kimi K3 的快速可靠服務提供了參考。
里程碑 2:驗證推理引擎
Kimi K3 是有史以來最智能的開放模型,必須在推理中真正實現這種智能。質量驗證可以在不同嚴格級別上進行。簡單的完整性檢查(如使用已知提示調用模型或運行輕量級基準)在開發過程中是有用的檢查點。但發佈公共 API 需要更嚴格的基準測試。Moonshot AI 團隊運營的 Kimi Vendor Verifier 幫助推理提供商確保準確、高保真地服務模型權重。通過 Kimi Vendor Verifier 是我們的重要早期里程碑。在服務模型時有很多出錯的機會,但大多數質量問題,尤其是工具調用和其他結構化模型行為,源於推理服務器前端。
里程碑 3:找到正確的配置
推理引擎提供各種配置選項來調整性能。我們發現正確的配置需要對張量並行 (TP) 和專家並行 (EP) 設置、注意力數據並行 (ADP) 切換、批量大小、推測解碼器草稿長度、線性層緩存間隔、路由參數和推理引擎設置進行掃描。運行 Kimi K3 需要八個 NVIDIA GB300 GPU 才能將巨大的模型權重裝入 VRAM。然而,GB300 以四個為一組,但 GB300 NVL72 系統具有足夠快的節點間互連,因此我們可以跨節點運行 TP 和 EP。
里程碑 4:優化性能
一旦模型在優化配置上運行,就有大量推理工程技術可以顯著改善延遲和吞吐量。我們關注推測(使用小草稿模型預測多個令牌)、分離(將預填充和解碼分離到不同工作節點)和緩存(分配內存以保存 KV 緩存和 KDA 狀態)。一項新穎的優化在於分詞器——對於 Kimi K3 這樣的長輸入序列和高 KV 緩存複用率的模型,分詞時間可能變得重要。我們構建了一個自定義分詞器,對於長輸入序列,比 tiktoken 快最多 18 倍。
里程碑 5:規模化部署
對 Kimi K3 的行業熱情高漲,發佈時需求巨大。在 GB300 NVL72 系統上,一個節點是 4 個 GPU,因此有 18 個節點。Kimi K3 實例佔用 2 個節點(8 個 GPU);每個 NVL72 機架可運行 9 個副本。我們在多個區域和雲提供商中服務該模型。前綴緩存命中率是單個副本吞吐量的最關鍵因素,因此我們的 KV 感知路由系統(使用 NVIDIA Dynamo 工具包構建)確保能夠將請求路由到具有熱緩存的副本。
在 Baseten 上使用 Kimi K3 構建
我們很高興通過 Model APIs 提供 Day-0 訪問,並期待繼續優化該模型的實現,以達到性能和可靠性的最高標準。Moonshot AI 團隊的 Kimi K3 公告包括多種有趣的測試,如編碼任務、研究任務和代理任務。7 月 28 日星期二上午 11 點(太平洋時間),我們將與 Baseten 的前沿部署工程負責人 Joey Zwicker 和 Philip Kie 舉辦關於 Kimi K3 用例的高管簡報會。