Visual Generation Models
Collection
23 items • Updated • 1
How to use BiliSakura/AFM-diffusers with Diffusers:
pip install -U diffusers transformers accelerate
import torch
from diffusers import DiffusionPipeline
# switch to "mps" for apple devices
pipe = DiffusionPipeline.from_pretrained("BiliSakura/AFM-diffusers", dtype=torch.bfloat16, device_map="cuda")
prompt = "Astronaut in a jungle, cold color palette, muted colors, detailed, 8k"
image = pipe(prompt).images[0]Self-contained Adversarial Flow Models checkpoints for Hugging Face diffusers.
Converted from ByteDance-Seed/Adversarial-Flow-Models using libs/AFM-diffusers/scripts/convert_afm_to_diffusers.py.
All models use LDM (Rombach et al., 2022) latent space with sd-vae-ft-mse. Guidance abbreviations: CG = classifier guidance (Dhariwal & Nichol, 2021), DA = data augmentation (Karras et al., 2020a).
AFM-XL-2-2NFE-noguide — class 207 (golden retriever), seed 0, 2 NFE:
Each variant folder includes demo.png generated with the same prompt settings.
| Model | Params | Guidance | NFE | FID | sFID | IS | Prec. | Recall | Checkpoint |
|---|---|---|---|---|---|---|---|---|---|
| AFM-B/2 | 130M | None | 1 | 6.07 | 5.31 | 169.51 | 0.72 | 0.49 | AFM-B-2-1NFE-noguide/ |
| AFM-M/2 | 306M | None | 1 | 5.21 | 5.60 | 178.48 | 0.75 | 0.54 | AFM-M-2-1NFE-noguide/ |
| AFM-L/2 | 457M | None | 1 | 4.36 | 5.39 | 186.21 | 0.77 | 0.53 | AFM-L-2-1NFE-noguide/ |
| AFM-XL/2 | 673M | None | 1 | 3.98 | 5.40 | 201.85 | 0.78 | 0.52 | AFM-XL-2-1NFE-noguide/ |
| AFM-XL/2 | 673M | None | 2 | 2.36 | 4.35 | 235.77 | 0.81 | 0.52 | AFM-XL-2-2NFE-noguide/ |
| AFM-B/2 | 130M | CG+DA | 1 | 3.05 | 5.32 | 269.18 | 0.81 | 0.51 | AFM-B-2-1NFE-guided/ |
| AFM-M/2 | 306M | CG+DA | 1 | 2.82 | 5.20 | 279.12 | 0.81 | 0.50 | AFM-M-2-1NFE-guided/ |
| AFM-L/2 | 457M | CG+DA | 1 | 2.63 | 5.10 | 277.96 | 0.81 | 0.52 | AFM-L-2-1NFE-guided/ |
| AFM-XL/2 | 673M | CG+DA | 1 | 2.38 | 4.87 | 284.18 | 0.81 | 0.52 | AFM-XL-2-1NFE-guided/ |
| AFM-XL/2 | 675M | CG+DA | 2 | 2.11 | 4.33 | 273.84 | 0.82 | 0.55 | AFM-XL-2-2NFE-guided/ |
| AFM-XL/2 (2× deep, 56-layer) | 675M | CG+DA | 1 | 2.08 | 4.79 | 298.33 | 0.79 | 0.56 | AFM-XL-2-56layer-1NFE-guided/ |
| AFM-XL/2 | 675M | CG+DA | 4 | 2.03 | 4.59 | 259.66 | 0.78 | 0.59 | AFM-XL-2-4NFE-guided/ |
| AFM-XL/2 (4× deep, 112-layer) | 675M | CG+DA | 1 | 1.94 | 4.54 | 292.20 | 0.79 | 0.56 | AFM-XL-2-112layer-1NFE-guided/ |
| Variant | Model | Steps | Guidance |
|---|---|---|---|
AFM-B-2-1NFE-guided/ |
AFM-B/2 | 1 | guided |
AFM-B-2-1NFE-noguide/ |
AFM-B/2 | 1 | noguide |
AFM-M-2-1NFE-guided/ |
AFM-M/2 | 1 | guided |
AFM-M-2-1NFE-noguide/ |
AFM-M/2 | 1 | noguide |
AFM-L-2-1NFE-guided/ |
AFM-L/2 | 1 | guided |
AFM-L-2-1NFE-noguide/ |
AFM-L/2 | 1 | noguide |
AFM-XL-2-1NFE-guided/ |
AFM-XL/2 | 1 | guided |
AFM-XL-2-1NFE-noguide/ |
AFM-XL/2 | 1 | noguide |
AFM-XL-2-2NFE-guided/ |
AFM-XL/2 | 2 | guided |
AFM-XL-2-2NFE-noguide/ |
AFM-XL/2 | 2 | noguide |
AFM-XL-2-4NFE-guided/ |
AFM-XL/2 | 4 | guided |
AFM-XL-2-56layer-1NFE-guided/ |
AFM-XL/2 | 1 | guided |
AFM-XL-2-112layer-1NFE-guided/ |
AFM-XL/2 | 1 | guided |
from pathlib import Path
import torch
from diffusers import DiffusionPipeline
model_dir = Path("./AFM-XL-2-1NFE-guided")
pipe = DiffusionPipeline.from_pretrained(
str(model_dir),
local_files_only=True,
custom_pipeline=str(model_dir / "pipeline.py"),
trust_remote_code=True,
torch_dtype=torch.bfloat16,
).to("cuda")
image = pipe(class_labels="golden retriever", num_inference_steps=1).images[0]