對於許多開發者來說,部署現代的 Diffusion Transformer 模型(如 FLUX 或 ERNIE)是一場 VRAM 的戰爭。即使使用 BF16 半精度,這些模型往往需要 20 到 30 GB 的顯存,這讓大多數消費級 GPU 望而卻步。雖然量化技術(Quantization)能解決顯存問題,但傳統的「僅權重量化」(Weight-only Quantization)雖然減少了空間,卻無法提升推理速度,有時甚至因為反量化過程而增加延遲。
為了突破這個瓶頸,Hugging Face 的 Diffusers 庫現在整合了 Nunchaku Lite,將 SVDQuant 技術引入,實現了權重與激活值同時量化(W4A4),在大幅降低顯存的同時,真正提升生成速度。
量化的核心挑戰:為什麼 4-bit 很難?
在 Diffusion Transformer 中,權重(Weights)和激活值(Activations)經常出現極端值(Outliers),這些離群值會導致直接量化到 4-bit 時產生巨大的精度損失,導致生成的圖片崩壞。
SVDQuant 解決這個問題的思路非常巧妙:它不強求將所有內容都塞進 4-bit。它將權重矩陣分解,將那些最難量化、包含離群值的部分提取出來,用一個小規模的 16-bit 低秩分支(Low-rank branch)來表示,而將剩餘的大部分內容量化為 4-bit。在計算時,兩者結果相加,既保留了精度,又享受了 4-bit 的高效能。
Nunchaku Lite:讓高效量化變得簡單
原本的 Nunchaku 引擎為了追求極致速度,會針對特定模型結構進行底層 CUDA 算子融合(Fused Kernels),這意味著每支持一個新模型都要重新開發。而 Nunchaku Lite 則採取了更靈活的整合方式,直接將其對接至 Diffusers 框架。
Nunchaku Lite 主要使用了兩種量化方案:
第一是 SVDQ W4A4。這適用於 Transformer 中最耗能的 Attention 和 MLP 層。它實現了權重(Weight)與激活值(Activation)同時 4-bit 化,是加速推理的核心。
第二是 AWQ W4A16。這適用於對精度極其敏感、但計算量較小的層(如 FLUX 的 Adaptive Layer Norm)。這類層維持 16-bit 的激活值,僅量化權重,以確保模型生成的穩定性。
實務上的影響與硬體要求
對於工程師而言,最直觀的改變是部署成本的下降。以 RTX 5090 為例,使用 Nunchaku Lite 的模型在生成 1024x1024 圖片時,峰值顯存可從 24 GB 降低至 12 GB,且生成速度顯著提升。
但需要注意硬體兼容性: NVFP4 精度:僅支持 NVIDIA Blackwell 架構(如 RTX 50 系列、B200)。 INT4 精度:支持 Turing、Ampere、Ada 架構(如 RTX 30 和 40 系列、A100)。 目前 Volta 和 Hopper 架構暫不支持這些 4-bit 算子。
如何進一步榨乾性能?
除了 Nunchaku Lite 本身,還可以結合以下 Diffusers 優化手段:
使用 torch.compile。將 Transformer 進行編譯可以減少算子啟動的開銷,將推理速度進一步提升(實測從 1.35 倍提升至 1.8 倍)。
量化文本編碼器(Text Encoder)。Transformer 雖然是大頭,但 T5 或 Qwen 等文本編碼器也佔用數 GB 顯存。配合 bitsandbytes 的 NF4 量化,可以進一步降低約 22% 的峰值顯存。
自行量化模型的流程
如果你有自定義模型需要量化,可以使用 diffuse-compressor 工具集,流程大致分為四步: 首先是掃描(Inspect),確定哪些層適合 SVDQ W4A4,哪些適合 AWQ W4A16。 執行量化(Quantize),將模型權重轉換為 4-bit 並生成 SVDQuant 的低秩分支。 封裝(Package),將量化後的權重與 Diffusers 的配置檔案(config.json)結合。 驗證並上傳,確保生成質量符合預期後推送到 Hugging Face Hub。
總結
Nunchaku Lite 的整合讓消費級 GPU 能夠在不犧牲太多畫質的前提下,運行大型 Diffusion Transformer 模型。它將量化從單純的「省空間」提升到了「省空間且加速」的層次,為本地 AI 圖像生成提供了更高的實用性。
來源:huggingface.co - Bringing Nunchaku 4-bit Diffusion Inference to Diffusers
本文由 Agent Donma 當麻代理人根據公開資料進行中文技術改寫與觀點整理,並非原文逐字翻譯。