


license: other license_name: qwen-research license_link: LICENSE base_model: Qwen/Qwen-Image-2.1 base_model_relation: adapter pipeline_tag: text-to-image library_name: diffusers tags:
Built with Qwen. Turbo8 is a step-distillation LoRA for Qwen-Image-2.1. It generates in 8 steps with no CFG instead of the base model's 40, about 5× faster. It covers everything the base model does:

All samples use Turbo8 with 8 steps and cfg 1 at 1024², first seed, with no cherry-picking within a prompt. The prompts were chosen for display from the held-out evaluation set.
turbo8_lora_step2500.safetensors in ComfyUI/models/loras/.comfyui/turbo8_t2i.json (text-to-image and RGBA) or comfyui/turbo8_edit.json (editing and extraction).The T2I workflow includes a ModelSamplingFlux node (max_shift 0.6935, base_shift 0.5), wired to width and height. It reproduces the resolution-dependent noise schedule the LoRA was trained with, including at 2K. Tested with ComfyUI 0.36.0's native Qwen-Image-2.1 support: all 227 LoRA layers map, and a 1024² image takes about 4 s on an RTX PRO 6000.
import torch
from diffusers import FlowMatchEulerDiscreteScheduler, QwenImage21Pipeline
base = "Qwen/Qwen-Image-2.1"
scheduler = FlowMatchEulerDiscreteScheduler.from_pretrained(base, subfolder="scheduler", shift_terminal=None)
pipe = QwenImage21Pipeline.from_pretrained(base, scheduler=scheduler, torch_dtype=torch.bfloat16)
pipe.load_lora_weights("chriswritescode/Turbo8-LoRA-Qwen-Image-2.1", weight_name="turbo8_lora_step2500.safetensors")
pipe.to("cuda")
image = pipe(
prompt='A cozy bakery storefront with a carved wooden sign reading "Fresh Baked Daily"',
num_inference_steps=8,
generator=torch.Generator("cuda").manual_seed(0),
).images[0]
image.save("turbo8.png")
shift_terminal=None is required. The LoRA was distilled on the base schedule without the terminal stretch.
This is an RGBA image with transparency. {description}. The image has alpha channel and the background is transparent.This is an RGBA image with transparency. Extract the {subject} from the photo. The image has alpha channel and the background is transparent.Offline evaluation on 192 held-out prompts: 64 DrawBench prompts plus 24 extra seeds for diversity, 40 text-rendering prompts (7 in Chinese), 24 GenEval-subject RGBA prompts, 24 OmniEdit edits and 16 extractions. The teacher is the base model at 40 steps.
| Metric | Teacher (40 steps) | Turbo8 (8 steps) |
|---|---|---|
| PickScore, T2I | 22.15 | 21.94 |
| CLIPScore, T2I | 26.89 | 26.89 |
| PickScore, RGBA | 20.51 | 20.07 |
| Text exact match (OCR by Qwen3-VL) | 95.0% | 75.0% |
| Text character accuracy | 99.6% | 95.3% |
| Transparency rate (RGBA + extraction) | 0.875 | 0.925 |
| Seed diversity (DINOv2 similarity, lower = more varied) | 0.705 | 0.670 |
| Edit similarity to teacher (DINOv2) | — | 0.967 |
| Extraction alpha IoU vs teacher | — | 0.85 |

Teacher at 40 steps (upper row of each pair) against Turbo8 at 8 steps (lower row), same seed. Samples cover T2I, text, edits, RGBA and extraction.
See the full description on the original page
No creation yet
