---
title: Qwen-Image-2.1-Turbo
canonical_url: "https://www.modelscope.cn/models/Wuli-Art/Qwen-Image-2.1-Turbo"
md_url: "https://www.modelscope.cn/models/Wuli-Art/Qwen-Image-2.1-Turbo.md"
repository: Wuli-Art/Qwen-Image-2.1-Turbo
last_updated: 2026-10-27
license: other
base_model:
  - Qwen/Qwen-Image-2.1
base_model_relation: finetune
parameters: 64.0B
tensor_type:
  - BF16
  - F32
  - I8
  - F8_E4M3
library_name:
  - pytorch
  - safetensors
  - diffusers
frameworks:
  - pytorch
language:
  - en
  - zh
downloads: 74
stars: 0
tags:
  - Qwen
  - Turbo
  - Qwen-Image-2.1
  - comfyui
  - fp8
  - int8
  - quantized
  - few-step
  - rgba
---

# Qwen-Image-2.1-Turbo

> Qwen-Image-2.1-Turbo - Wuli-Art 在 ModelScope 开源的模型。Wuli Qwen-Image-2.1 Turbo — 2 / 4 / 8 Steps

Wuli-Art/Qwen-Image-2.1-Turbo 是 ModelScope 魔搭社区上的 64.0B 参数机器学习模型，采用 other 许可，基于 Qwen/Qwen-Image-2.1 构建。

- **Repository**: Wuli-Art/Qwen-Image-2.1-Turbo
- **License**: other
- **Parameters**: 64.0B
- **Base model**: Qwen/Qwen-Image-2.1
- **Tags**: Qwen, Turbo, Qwen-Image-2.1, comfyui, fp8, int8, quantized, few-step, rgba
- **Downloads**: 74
- **Stars**: 0
- **Last updated**: 2026-10-27

Source: https://www.modelscope.cn/models/Wuli-Art/Qwen-Image-2.1-Turbo

---

<div style="container-type: inline-size; width: 100%;">
  <h1 align="center" class="text-5xl font-extrabold" style="font-size: clamp(14px, 5cqw, 48px); line-height: 1.2; font-weight: 800; letter-spacing: -0.02em; white-space: nowrap;">Wuli Qwen-Image-2.1 Turbo — 2 / 4 / 8 Steps</h1>
</div>

<div class="w-full overflow-x-auto" style="width:100%; overflow-x:auto;">
  <div class="mx-auto flex w-max flex-nowrap items-center gap-2" style="display:flex; flex-wrap:nowrap; align-items:center; gap:8px; width:max-content; margin:0 auto;">
    <a href="https://www.modelscope.cn/models/Wuli-Art/Qwen-Image-2.1-Turbo" class="block shrink-0" style="display:block; flex:0 0 auto;">
      <img src="https://img.shields.io/badge/ModelScope-624AFF?style=for-the-badge" alt="ModelScope" height="33" class="block max-w-none m-0" style="display:block; height:33px; width:auto; max-width:none; margin:0;" />
    </a>
    <a href="https://github.com/wuli-art/Qwen-Image-2.1-Turbo-ComfyUI" class="block shrink-0" style="display:block; flex:0 0 auto;">
      <img src="assets/comfyui-badge.svg" alt="ComfyUI: BF16 / FP8 / INT8, 2 / 4 / 8 steps" width="216" height="33" class="block max-w-none m-0" style="display:block; height:33px; width:auto; max-width:none; margin:0;" />
    </a>
    <a href="https://huggingface.co/Wuli-art/Qwen-Image-2.1-Turbo" class="block shrink-0" style="display:block; flex:0 0 auto;">
      <img src="https://img.shields.io/badge/Hugging%20Face-FFD21E?style=for-the-badge&amp;logo=huggingface&amp;logoColor=black" alt="Hugging Face" height="33" class="block max-w-none m-0" style="display:block; height:33px; width:auto; max-width:none; margin:0;" />
    </a>
  </div>
</div>

<p align="center">
  <img src="https://img.alicdn.com/imgextra/i4/O1CN011xTzi6280yXyGmk9b_!!6000000007871-0-tps-3072-938.jpg" width="300" alt="Wuli Qwen-Image-2.1 Turbo">
</p>

A few-step derivative of Qwen-Image-2.1 for text-to-image generation and image editing, available in BF16, FP8 and INT8 with transparent RGBA output.

## Showcase

Click any image to open its full comparison in a new tab ↗.

| Qwen base · 40 steps | **Wuli · 8 steps · BF16** | **Wuli · 4 steps · BF16** | **Wuli · 2 steps · BF16** | Qwen official Turbo · 8 steps |
|:---:|:---:|:---:|:---:|:---:|
| <a href="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/index.html#case=8&amp;ours=8step-bf16&amp;other=official8" target="_blank" rel="noopener noreferrer" title="Click to open the full comparison in a new tab"><img src="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/thumbnails/53fd1e3b5332a4054ec4a633e0f43e9573a19c39ee0b92b37093512906fa70a9.webp" width="200" alt="Qwen base · 40 steps"></a> | <a href="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/index.html#case=8&amp;ours=8step-bf16&amp;other=official8" target="_blank" rel="noopener noreferrer" title="Click to open the full comparison in a new tab"><img src="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/thumbnails/05fe6efbc01fe7bd3a8b7e3dd22858db60b200195b1d767386cd8a782d7320a9.webp" width="200" alt="Wuli · 8 steps · BF16"></a> | <a href="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/index.html#case=8&amp;ours=4step-bf16&amp;other=official8" target="_blank" rel="noopener noreferrer" title="Click to open the full comparison in a new tab"><img src="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/thumbnails/bdec335d20ac13bdb648134226a4a30c94fe6d72de74724f8c3b5e5f78f47ae9.webp" width="200" alt="Wuli · 4 steps · BF16"></a> | <a href="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/index.html#case=8&amp;ours=2step-bf16&amp;other=official8" target="_blank" rel="noopener noreferrer" title="Click to open the full comparison in a new tab"><img src="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/thumbnails/72ac78ea8daf28f4cb9f0e6fa2df824247c331ec8f252f2891e46d6d703301ea.webp" width="200" alt="Wuli · 2 steps · BF16"></a> | <a href="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/index.html#case=8&amp;ours=8step-bf16&amp;other=official8" target="_blank" rel="noopener noreferrer" title="Click to open the full comparison in a new tab"><img src="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/thumbnails/6e7ee4f68780d75cfdf1d982f82ee8c720c3396b44c58e2d7118a00d5b8afa3f.webp" width="200" alt="Qwen official Turbo · 8 steps"></a> |
| <a href="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/index.html#case=19&amp;ours=8step-bf16&amp;other=official8" target="_blank" rel="noopener noreferrer" title="Click to open the full comparison in a new tab"><img src="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/thumbnails/babf553e27e15beb675859a255a661d3d6001199305eedd5f757d713a161fc41.webp" width="200" alt="Qwen base · 40 steps"></a> | <a href="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/index.html#case=19&amp;ours=8step-bf16&amp;other=official8" target="_blank" rel="noopener noreferrer" title="Click to open the full comparison in a new tab"><img src="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/thumbnails/d676cd7e18edf84146253fc5dcd946e96ed22e822563dda6c725838a331307ed.webp" width="200" alt="Wuli · 8 steps · BF16"></a> | <a href="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/index.html#case=19&amp;ours=4step-bf16&amp;other=official8" target="_blank" rel="noopener noreferrer" title="Click to open the full comparison in a new tab"><img src="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/thumbnails/cf87291d0c597dcdbf2c537d9b17380177d73e3b24c7218575a9a4e0701293c3.webp" width="200" alt="Wuli · 4 steps · BF16"></a> | <a href="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/index.html#case=19&amp;ours=2step-bf16&amp;other=official8" target="_blank" rel="noopener noreferrer" title="Click to open the full comparison in a new tab"><img src="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/thumbnails/b24f37c79b79e3206a25dd8a49449b89f9344a0d4acd3a8ef70ced78bd0120a9.webp" width="200" alt="Wuli · 2 steps · BF16"></a> | <a href="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/index.html#case=19&amp;ours=8step-bf16&amp;other=official8" target="_blank" rel="noopener noreferrer" title="Click to open the full comparison in a new tab"><img src="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/thumbnails/9205e8f0436334309e1eee73a546ea6ed321ed92d1d66c3af082da60b100a065.webp" width="200" alt="Qwen official Turbo · 8 steps"></a> |
| <a href="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/index.html#case=20&amp;ours=8step-bf16&amp;other=official8" target="_blank" rel="noopener noreferrer" title="Click to open the full comparison in a new tab"><img src="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/thumbnails/f88a7b99216537bb5ba902d0251111fa4b8fd27ca03e974336f92a4247216dcc.webp" width="200" alt="Qwen base · 40 steps"></a> | <a href="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/index.html#case=20&amp;ours=8step-bf16&amp;other=official8" target="_blank" rel="noopener noreferrer" title="Click to open the full comparison in a new tab"><img src="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/thumbnails/89b03c65963bbbce12bc4fd8e64256b18ff3f51fa7a6d42186833d436ee720bb.webp" width="200" alt="Wuli · 8 steps · BF16"></a> | <a href="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/index.html#case=20&amp;ours=4step-bf16&amp;other=official8" target="_blank" rel="noopener noreferrer" title="Click to open the full comparison in a new tab"><img src="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/thumbnails/65ff7f7a0aff0395725076d92b489add4eefae6f317d1c46cdc735fc5badae72.webp" width="200" alt="Wuli · 4 steps · BF16"></a> | <a href="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/index.html#case=20&amp;ours=2step-bf16&amp;other=official8" target="_blank" rel="noopener noreferrer" title="Click to open the full comparison in a new tab"><img src="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/thumbnails/74b00898690ba900006ed2cd2a504780d84c0f3df833be390c38351cd3b131e8.webp" width="200" alt="Wuli · 2 steps · BF16"></a> | <a href="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/index.html#case=20&amp;ours=8step-bf16&amp;other=official8" target="_blank" rel="noopener noreferrer" title="Click to open the full comparison in a new tab"><img src="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/thumbnails/8b743c2222b1a9c0d5ab35ec66c10b49ace8b11a7f5d233c7fa38a1b2b994a2f.webp" width="200" alt="Qwen official Turbo · 8 steps"></a> |
| <a href="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/index.html#case=30&amp;ours=8step-bf16&amp;other=official8" target="_blank" rel="noopener noreferrer" title="Click to open the full comparison in a new tab"><img src="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/thumbnails/03e593362b3bb1e0925487c3b2035025932897d3f8e927701f05c6dd72dc843c.webp" width="200" alt="Qwen base · 40 steps"></a> | <a href="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/index.html#case=30&amp;ours=8step-bf16&amp;other=official8" target="_blank" rel="noopener noreferrer" title="Click to open the full comparison in a new tab"><img src="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/thumbnails/9469a351ac8697e2617633e866423c687e1a6139f64500422a779d1ad03772c6.webp" width="200" alt="Wuli · 8 steps · BF16"></a> | <a href="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/index.html#case=30&amp;ours=4step-bf16&amp;other=official8" target="_blank" rel="noopener noreferrer" title="Click to open the full comparison in a new tab"><img src="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/thumbnails/634541ae06e93ff93278191765523975ddc3209e089953ed47eafbf670e42c9b.webp" width="200" alt="Wuli · 4 steps · BF16"></a> | <a href="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/index.html#case=30&amp;ours=2step-bf16&amp;other=official8" target="_blank" rel="noopener noreferrer" title="Click to open the full comparison in a new tab"><img src="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/thumbnails/0e1e5c0f77f550e1cf2fca1c95d2747f291890a2a1aae2532298059eac8c55dd.webp" width="200" alt="Wuli · 2 steps · BF16"></a> | <a href="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/index.html#case=30&amp;ours=8step-bf16&amp;other=official8" target="_blank" rel="noopener noreferrer" title="Click to open the full comparison in a new tab"><img src="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/thumbnails/73d3f168ac2b186d4e833bf613ea3b06d500422bbc140d2b952345df73856ce0.webp" width="200" alt="Qwen official Turbo · 8 steps"></a> |

## Interactive Demo

<p><a href="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/index.html" target="_blank" rel="noopener noreferrer"><strong>Click to compare Wuli results side by side with Qwen-Image-2.1, official Qwen-Image-2.1 Turbo, LightX2V Lightning, Alibaba PAI Fun-Acc (PDD), Viggle v0.3, and MFD v0.5 — opens in a new tab ↗</strong></a></p>

<a href="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/index.html" target="_blank" rel="noopener noreferrer" title="Click to open the interactive comparison in a new tab"><img src="https://cdn.wuli.art/image/qwen-image21-turbo/comparison/assets/model-card-preview-94c55a980ee6872a.jpg" width="1200" alt="Click to open the interactive comparison in a new tab"></a>

## Model variants

| Steps | BF16 | FP8 | INT8 |
|---|---|---|---|
| 2 | [2step-bf16](./2step-bf16/diffusion_pytorch_model.safetensors) | [2step-fp8](./2step-fp8/) | [2step-int8](./2step-int8/) |
| 4 | [4step-bf16](./4step-bf16/diffusion_pytorch_model.safetensors) | [4step-fp8](./4step-fp8/) | [4step-int8](./4step-int8/) |
| 8 | [8step-bf16](./8step-bf16/diffusion_pytorch_model.safetensors) | [8step-fp8](./8step-fp8/) | [8step-int8](./8step-int8/) |

The INT8 variants use optimized W8A8 quantization and the included CUDA loader. Matrix weights use INT8 with FP32 per-channel scales; time embeddings, modulation, normalization and input/output projections retain BF16.

## ComfyUI

Choose an integration for the checkpoints in this repository:

| Integration | Precisions | Steps |
|---|---|---|
| Official ComfyUI workflows | BF16 | 2 / 4 / 8 |
| [Wuli ComfyUI node](https://github.com/wuli-art/Qwen-Image-2.1-Turbo-ComfyUI) | BF16 / FP8 / INT8 | 2 / 4 / 8 |

### Official ComfyUI — BF16 only

Download a single-file BF16 checkpoint from the table above and place it in `ComfyUI/models/diffusion_models`. Select it in `UNETLoader` in the official [text-to-image workflow](https://raw.githubusercontent.com/Comfy-Org/workflow_templates/main/templates/image_qwen_image_2_1_turbo_t2i.json) or [image editing workflow](https://raw.githubusercontent.com/Comfy-Org/workflow_templates/main/templates/image_qwen_image_2_1_turbo_image_edit.json). Keep the official text encoder and VAE.

Use **CFG 1.0** and set `ManualSigmas` to the selected schedule, including the final zero:

**2 steps**

```text
1.0, 0.8, 0.0
```

**4 steps**

```text
1.0, 0.9177013039588928, 0.787998616695404, 0.5533687472343445, 0.0
```

**8 steps**

```text
1.0, 0.962988555431366, 0.9177013039588928, 0.8610130548477173, 0.787998616695404, 0.6904187798500061, 0.5533687472343445, 0.3468291163444519, 0.0
```

The FP8 and INT8 checkpoints in this repository require the custom node below.

### Wuli ComfyUI node — BF16 / FP8 / INT8

Our [ComfyUI node](https://github.com/wuli-art/Qwen-Image-2.1-Turbo-ComfyUI) supports all nine variants for text-to-image generation and reference-image editing, with automatic model downloads and CPU offload.

**Install** using the Python environment that runs ComfyUI:

```bash
cd ComfyUI/custom_nodes
git clone https://github.com/wuli-art/Qwen-Image-2.1-Turbo-ComfyUI.git
cd Qwen-Image-2.1-Turbo-ComfyUI
python -m pip install -r requirements.txt
```

For Windows Portable, install dependencies from the portable installation's root:

```powershell
.\python_embeded\python.exe -m pip install -r .\ComfyUI\custom_nodes\Qwen-Image-2.1-Turbo-ComfyUI\requirements.txt
```

Restart ComfyUI, then load a workflow:

- [Text-to-image workflow](https://raw.githubusercontent.com/wuli-art/Qwen-Image-2.1-Turbo-ComfyUI/main/example_workflows/text_to_image.json)
- [Reference-image editing workflow](https://raw.githubusercontent.com/wuli-art/Qwen-Image-2.1-Turbo-ComfyUI/main/example_workflows/image_reference.json)

Leave `model_path` and `base_model_path` empty, select `variant` (for example, `8step-fp8`, `4step-int8` or `2step-bf16`), enter a prompt and run. For editing, also select a reference image in **Load Image**. The node applies the selected checkpoint's saved sampling schedule and CFG automatically.

The first run downloads the selected Turbo weights and the text encoder, processor and VAE from `Qwen/Qwen-Image-2.1`. Later runs reuse the cache, and base components are shared across variants. Use the default `cpu_offload` mode to reduce VRAM usage, or `gpu` if you have enough VRAM.

See the [node README](https://github.com/wuli-art/Qwen-Image-2.1-Turbo-ComfyUI#readme) for local paths, cache settings and other options.

## Requirements

Python 3.11+ with CUDA-enabled PyTorch. Download the helpers and install the pinned Diffusers revision:

```bash
python -m pip install huggingface-hub
python -c 'from huggingface_hub import snapshot_download; snapshot_download("Wuli-art/Qwen-Image-2.1-Turbo", allow_patterns=["*.py", "requirements-*.txt"], local_dir="qwen21-turbo")'
cd qwen21-turbo
python -m pip install -r requirements-diffusers.txt
```

The examples download the selected DiT and reuse the text encoder, VAE and processor from `Qwen/Qwen-Image-2.1`.

## Code Example

### For BF16

```python
import sys
from pathlib import Path

import torch
from diffusers import FlowMatchEulerDiscreteScheduler, QwenImage21Pipeline, QwenImage21Transformer2DModel
from huggingface_hub import snapshot_download

variant = "8step-bf16"
snapshot = Path(snapshot_download(
    "Wuli-art/Qwen-Image-2.1-Turbo", allow_patterns=[f"{variant}/*", "*.py"],
))
sys.path.insert(0, str(snapshot))
from model_utils import read_config, resolve_base

dit_path = snapshot / variant
sampling = read_config(dit_path)[0]
transformer = QwenImage21Transformer2DModel.from_pretrained(str(dit_path), torch_dtype=torch.bfloat16)
pipe = QwenImage21Pipeline.from_pretrained(
    str(resolve_base()), transformer=transformer, torch_dtype=torch.bfloat16,
)
pipe.scheduler = FlowMatchEulerDiscreteScheduler.from_pretrained(str(dit_path))
pipe.to("cuda")
image = pipe(
    prompt="A red ceramic teapot on a wooden table, soft daylight",
    width=1024, height=1024, true_cfg_scale=1.0,
    num_inference_steps=sampling["num_inference_steps"], sigmas=sampling["sample_sigmas"],
    generator=torch.Generator(device="cuda").manual_seed(42),
).images[0]
image.save("teapot-bf16.png")
```

### For FP8

```python
import sys
from pathlib import Path

import torch
from diffusers import FlowMatchEulerDiscreteScheduler, QwenImage21Pipeline
from huggingface_hub import snapshot_download

variant = "8step-fp8"
snapshot = Path(snapshot_download(
    "Wuli-art/Qwen-Image-2.1-Turbo", allow_patterns=[f"{variant}/*", "*.py"],
))
sys.path.insert(0, str(snapshot))
from load_fp8 import load_fp8_transformer
from model_utils import read_config, resolve_base

dit_path = snapshot / variant
sampling = read_config(dit_path)[0]
transformer = load_fp8_transformer(dit_path, device="cpu")
pipe = QwenImage21Pipeline.from_pretrained(
    str(resolve_base()), transformer=transformer, torch_dtype=torch.bfloat16,
)
pipe.scheduler = FlowMatchEulerDiscreteScheduler.from_pretrained(str(dit_path))
pipe.to("cuda")
image = pipe(
    prompt="A red ceramic teapot on a wooden table, soft daylight",
    width=1024, height=1024, true_cfg_scale=1.0,
    num_inference_steps=sampling["num_inference_steps"], sigmas=sampling["sample_sigmas"],
    generator=torch.Generator(device="cuda").manual_seed(42),
).images[0]
image.save("teapot-fp8.png")
```

### For INT8

Download the helpers with the command in **Requirements**, then run:

```bash
python infer_int8.py --variant 8step-int8 \
  --prompt "A red ceramic teapot on a wooden table, soft daylight" \
  --width 1024 --height 1024 --seed 42 --output teapot-int8.png
```

Select `2step-int8` or `4step-int8` for the other schedules. Add `--reference input.png` for editing; repeat the option for multiple reference images. To download from ModelScope, add `--source modelscope`.

For **vLLM-Omni**, use a separate environment and run from the downloaded helper directory:

```bash
python -m pip install -r requirements-omni.txt
python infer_omni.py --variant 8step-fp8 \
  --prompt "A red ceramic teapot on a wooden table, soft daylight" \
  --edit-prompt "Make the teapot blue. Preserve its shape and the wooden table." \
  --seed 42 --output omni-teapot.png
```

## Acknowledgement

Thanks to the Qwen team for Qwen-Image-2.1. Built with Qwen. Distributed under the [Qwen Research License](https://huggingface.co/Wuli-art/Qwen-Image-2.1-Turbo/blob/main/LICENSE).
