🚀 ⚡ 快速擴散:FlashPixart ⚡
Flash Diffusion是Jasper Research的Clément Chadebec、Onur Tasar、Eyal Benaroche和Benjamin Aubin在論文Flash Diffusion: Accelerating Any Conditional Diffusion Model for Few Steps Image Generation中提出的一種擴散蒸餾方法。該模型是Pixart-α模型的一個6650萬參數的LoRA蒸餾版本,能夠在4步內生成1024x1024的圖像。查看我們的即時演示和官方Github倉庫。
🚀 快速開始
本模型可以直接使用diffusers
庫中的PixArtAlphaPipeline
。它可以將所需的採樣步驟減少到4步。
基礎用法
import torch
from diffusers import PixArtAlphaPipeline, Transformer2DModel, LCMScheduler
from peft import PeftModel
transformer = Transformer2DModel.from_pretrained(
"PixArt-alpha/PixArt-XL-2-1024-MS",
subfolder="transformer",
torch_dtype=torch.float16
)
transformer = PeftModel.from_pretrained(
transformer,
"jasperai/flash-pixart"
)
pipe = PixArtAlphaPipeline.from_pretrained(
"PixArt-alpha/PixArt-XL-2-1024-MS",
transformer=transformer,
torch_dtype=torch.float16
)
pipe.scheduler = LCMScheduler.from_pretrained(
"PixArt-alpha/PixArt-XL-2-1024-MS",
subfolder="scheduler",
timestep_spacing="trailing",
)
pipe.to("cuda")
prompt = "A raccoon reading a book in a lush forest."
image = pipe(prompt, num_inference_steps=4, guidance_scale=0).images[0]
🔧 技術細節
該模型在4個H100 GPU上進行了40k次迭代訓練(約188小時)。更多參數細節請參考論文。
評估指標
屬性 |
詳情 |
FID-10k |
29.30 (4 NFE) |
CLIP Score |
0.303 (4 NFE) |
📚 詳細文檔
引用
如果您覺得這項工作有用或在研究中使用了它,請考慮引用我們:
@misc{chadebec2024flash,
title={Flash Diffusion: Accelerating Any Conditional Diffusion Model for Few Steps Image Generation},
author={Clement Chadebec and Onur Tasar and Eyal Benaroche and Benjamin Aubin},
year={2024},
eprint={2406.02347},
archivePrefix={arXiv},
primaryClass={cs.CV}
}
📄 許可證
該模型遵循知識共享署名-非商業性使用許可協議(Creative Commons BY-NC license)。