ktransformers: 為超大型 MoE 模型優化的 CPU-GPU 混合推理與微調框架

ktransformers: 為超大型 MoE 模型優化的 CPU-GPU 混合推理與微調框架

它解決了什麼問題

KTransformers 解決了運行超大型混合專家模型 (MoE) 的硬體限制。它透過利用 CPU-GPU 異質運算,讓使用者能夠在消費級硬體上進行高效能推理與微調,從而減少對大量昂貴 GPU VRAM 的依賴。

運作原理

該框架採用混合運算方法,將工作負載分配在 GPU 與 CPU 之間。關鍵技術實作包括:

  • 異質專家配置 (Heterogeneous Expert Placement):將「熱」專家保留在 GPU 以確保速度,而將「冷」專家卸載到 CPU。
  • CPU 優化核心 (CPU-Optimized Kernels):使用 Intel AMX 與 AVX512/AVX2 優化的核心來加速 CPU 上的 INT4/INT8 量化推理。
  • 記憶體管理:針對 MoE 推理實作了 NUMA 感知記憶體管理,以及一個三層 (GPU-CPU-Disk) 前綴快取重用系統。
  • SFT 整合:與 LLaMA-Factory 整合,使其能夠以比傳統 ZeRO-Offload 方法快得多的速度對大型 MoE 模型進行微調。

對象是誰

  • 缺乏企業級 GPU 集群,但正在研究或開發超大型 MoE 模型 (例如 DeepSeek-V3/R1) 的研究人員與開發者。
  • 想要在消費級硬體 (例如 RTX 4090s) 上運行尖端 LLM 的使用者。
  • 尋找使用 CPU/GPU 混合記憶體來高效微調大型模型的機器學習工程師。

重點亮點

  • 混合推理:支援 CPU-GPU 異質運算,可在有限的 VRAM 上運行龐大模型。
  • 廣泛的硬體支援:相容於 NVIDIA GPUs、AMD GPUs (ROCm)、Intel Arc GPUs 以及 Ascend NPUs。
  • 量化:在 CPU 上支援 INT4/INT8,在 GPU 上支援 GPTQ/FP8。
  • 微調速度:與 ZeRO-Offload 相比,針對 MoE SFT 工作負載提供 6-12 倍的訓練加速。
  • 框架整合:提供乾淨的 Python API,以便與 SGLang 整合。

Sources