airllm: 一款透過逐層載入方式,在低階 GPU 上執行大型 LLMs 的節省記憶體推論引擎

airllm: 一款透過逐層載入方式,在低階 GPU 上執行大型 LLM 的節省記憶體推論引擎

它解決了什麼問題

AirLLM 讓使用者能在 VRAM 非常有限的消費級硬體上執行龐大的大型語言模型 (LLMs)。它讓像 Llama 3.1 405B 或 DeepSeek-V3 671B 這樣的模型能在僅有 8GB 到 12GB 記憶體的 GPU 上執行,無需昂貴的高階 GPU 或複雜的模型壓縮技術(如蒸餾或剪枝)。

運作原理

AirLLM 不會將整個模型載入到 VRAM 中,而是將模型分解並以層 (layer) 為單位進行儲存。在推論過程中,它一次只在 GPU 上保留模型的一層,這意味著 VRAM 的需求量是由單一層的大小而非模型總體大小決定的。它還支援選用的區塊量化 (block-wise quantization)(4-bit 或 8-bit),以減少磁碟上的權重大小並將載入速度提升高達 3 倍。

適合對象

希望在低階通用電腦或玩家級 GPU 卡上執行最先進的龐大 LLMs,且不願犧牲模型準確度的開發者與研究人員。

重點特色

  • 極致的 VRAM 效率:在 4GB GPU 上執行 70B 模型,在 12GB GPU 上執行 671B 模型。
  • 廣泛的模型支援:透過單一的 AutoModel 介面,相容於 Llama, Qwen, DeepSeek, Mistral, Mixtral, Phi, Gemma 等模型。
  • 無準確度損失:預設情況下運作時不需要量化、蒸餾或剪枝。
  • 跨平台支援:支援 Linux 與 Apple Silicon (MacOS)。
  • 效能優化:包含預取 (prefetching) 技術,讓模型載入與運算能重疊進行,以實現更快的推論速度。

Sources