🚀 svdq-int4-flux.1-fill-dev
svdq-int4-flux.1-fill-dev
是一個圖像生成模型,它是 FLUX.1-Fill-dev
的 INT4 量化版本,可基於文本描述填充現有圖像中的區域,能節省約 4 倍內存,且推理速度比原始 BF16 模型快 2 - 3 倍。
模型信息
屬性 |
詳情 |
開發團隊 |
MIT、NVIDIA、CMU、普林斯頓大學、加州大學伯克利分校、上海交通大學和 Pika Labs |
模型類型 |
INT W4A4 模型 |
模型大小 |
6.64GB |
模型分辨率 |
像素數量需為 65,536 的倍數 |
許可證 |
Apache - 2.0 |

🚀 快速開始
量化方法 -- SVDQuant
SVDQuant 概述。階段 1:最初,激活 X 和權重 W 都包含離群值,這使得 4 位量化具有挑戰性。階段 2:我們將離群值從激活遷移到權重,從而得到更新後的激活和權重。雖然激活變得更容易量化,但權重現在變得更難。階段 3:SVDQuant 進一步使用奇異值分解(SVD)將權重分解為低秩分量和殘差。因此,低秩分支以 16 位精度運行,從而減輕了量化難度。
Nunchaku 引擎設計
(a) 天真地以秩 32 運行低秩分支會由於 Down Projection 中 16 位輸入的額外讀取和 Up Projection 中 16 位輸出的額外寫入而引入 57% 的延遲開銷。Nunchaku 通過內核融合優化了此開銷。(b) Down Projection 和 Quantize 內核使用相同的輸入,而 Up Projection 和 4 - Bit Compute 內核共享相同的輸出。為了減少數據移動開銷,我們將前兩個和後兩個內核融合在一起。
📦 安裝指南
請按照 mit - han - lab/nunchaku 中的說明設置環境。
💻 使用示例
基礎用法
使用 Diffusers
庫運行模型:
import torch
from diffusers import FluxFillPipeline
from diffusers.utils import load_image
from nunchaku.models.transformer_flux import NunchakuFluxTransformer2dModel
image = load_image("https://huggingface.co/mit-han-lab/svdq-int4-flux.1-fill-dev/resolve/main/example.png")
mask = load_image("https://huggingface.co/mit-han-lab/svdq-int4-flux.1-fill-dev/resolve/main/mask.png")
transformer = NunchakuFluxTransformer2dModel.from_pretrained("mit-han-lab/svdq-int4-flux.1-fill-dev")
pipe = FluxFillPipeline.from_pretrained(
"black-forest-labs/FLUX.1-Fill-dev", transformer=transformer, torch_dtype=torch.bfloat16
).to("cuda")
image = pipe(
prompt="A wooden basket of a cat.",
image=image,
mask_image=mask,
height=1024,
width=1024,
guidance_scale=30,
num_inference_steps=50,
max_sequence_length=512,
).images[0]
image.save("flux.1-fill-dev.png")
Comfy UI
開發中,敬請期待!
🔧 技術細節
- 模型運行限制:該模型僅可在具有 sm_86(安培架構:RTX 3090、A6000)、sm_89(阿達架構:RTX 4090)和 sm_80(A100)架構的 NVIDIA GPU 上運行。更多詳細信息請參閱此 issue。
- 細節差異:與 BF16 模型相比,在細節上可能會觀察到一些細微差異。
📄 許可證
該模型使用 Apache - 2.0 許可證。
🔖 引用
如果您發現此模型對您的研究有用或相關,請引用:
@inproceedings{
li2024svdquant,
title={SVDQuant: Absorbing Outliers by Low-Rank Components for 4-Bit Diffusion Models},
author={Li*, Muyang and Lin*, Yujun and Zhang*, Zhekai and Cai, Tianle and Li, Xiuyu and Guo, Junxian and Xie, Enze and Meng, Chenlin and Zhu, Jun-Yan and Han, Song},
booktitle={The Thirteenth International Conference on Learning Representations},
year={2025}
}