Qwen-Image is one of the more capable open-weight image models you can run yourself, and it is also one of the heaviest. This covers the files a working ComfyUI graph needs, the two levers that bring it inside consumer VRAM, and the settings that change when you pull those levers.
The arithmetic problem first
Qwen-Image is a diffusion transformer in the 20B-parameter class, released under Apache 2.0 with weights on Hugging Face. At bf16, 20B parameters is roughly 40GB of weights before you load a text encoder or a VAE alongside them. No consumer card holds that.
So running it locally is not really a question of whether your GPU is supported. It is a question of how much precision you are willing to trade, and where. There are two independent levers:
- Quantization shrinks the weights, at some cost to fidelity.
- Step-reduction LoRAs shrink the number of denoising passes, at some cost to variety and fine detail.
They stack. Most people running this model on a desktop card are using both.
What a working graph actually loads
Unlike an SD 1.5 or SDXL checkpoint, this is not one file. ComfyUI loads the pieces separately, which is a nuisance the first time and useful afterwards, because you can swap any one of them independently.
| Component | What it does | Where it goes |
|---|---|---|
| Diffusion model | The transformer that does the denoising | models/diffusion_models |
| Text encoder | A large language model that reads your prompt | models/text_encoders |
| VAE | Decodes latents into pixels | models/vae |
| LoRA (optional) | Step reduction or style | models/loras |
If your ComfyUI install is reasonably current, the fastest way to get a correct graph is to load the bundled template for the model rather than wiring nodes by hand — the node names and the expected file locations change often enough that a stale tutorial graph is a common source of red nodes.
Assembling it
- Update ComfyUI first. Support for this model family lives in the core nodes, and an old install will simply not have them.
- Download the three required files into the folders above. Match the text encoder and VAE that the model card specifies; mixing a text encoder from another model family produces images that look plausible but ignore half your prompt.
- Load the model template, or wire it manually: diffusion model loader → CLIP text encode (positive) → sampler → VAE decode → save image.
- Generate one image at default settings before changing anything. You want a known-good baseline to compare against once you start quantizing.
- Only then add a LoRA or swap to a quantized build.
Lever one: quantization
Two formats dominate in practice. GGUF conversions let you pick a bit depth against your VRAM budget and load through GGUF loader nodes. Nunchaku builds apply 4-bit weight quantization with a runtime designed for diffusion transformers, and buy speed as well as memory.
The practical guidance is the same either way: go down in bit depth until quality visibly breaks, then step back up one. What breaks first is small detail — text glyphs, fine textures, hands at small scale — long before overall composition suffers. If your work involves rendered text, test quantization on a text prompt specifically, because a build that looks fine on landscapes can mangle letterforms.
You can also trade speed for memory without touching precision at all. ComfyUI will offload weights to system RAM when VRAM runs out; it is slow, but it is the difference between a long generation and an out-of-memory error.
Lever two: step-reduction LoRAs
Distilled step-reduction LoRAs, published for this model family under the Lightning name, cut a generation from the usual few dozen steps to a handful. They are the single biggest wall-clock improvement available.
Two settings change when you attach one:
- Steps drop to the count the LoRA was distilled for. Running more steps than it expects does not improve the image and often degrades it.
- CFG goes to 1.0. Distilled LoRAs bake guidance into the weights. Leaving CFG at a normal value produces burnt, over-saturated output — this is the most common failure report, and it is a settings problem, not a bad download.
What you give up is subtle: less variation between seeds, slightly flatter micro-detail, and less responsiveness to long tail-end prompt clauses. For iteration that trade is obviously worth it. For a final render, it is worth generating your chosen seed once more without the LoRA at full steps to see what you were leaving on the table.
A prompt worth testing the setup with
Portraits with strong background separation are a good stress test: they exercise skin gradients, bokeh rendering, and colour handling in low light, all of which degrade visibly under aggressive quantization. This one suits Qwen-Image and transfers to other prose-friendly models such as FLUX.
Candid night-time portrait of a young Latina woman, her face illuminated by a single soft, colorful light source that creates gentle gradients across her skin. Behind her, a vibrant blur of neon signs at a festival fair forms an abstract bokeh tapestry. Captured with a wide-aperture lens for extreme shallow depth of field, smooth background separation, and natural falloff. Subtle cinematic film grain, clean color contrast, refined highlights, high-resolution portrait photography.
Run it at your baseline settings, then again after each change. Comparing the same prompt and seed across configurations tells you more about what your setup costs you than any general benchmark will.
Common failures and what causes them
| Symptom | Usual cause |
|---|---|
| Red nodes on load | ComfyUI out of date, or a graph built for a different node set |
| Blown-out, over-saturated images | CFG left above 1.0 with a distilled step-reduction LoRA |
| Out of memory partway through | Full-precision weights; move to a quantized build or enable offloading |
| Prompt largely ignored | Wrong text encoder for the model family |
| Mangled text in the image | Quantization too aggressive for glyph detail |
Practical takeaways
- Treat quantization and step reduction as separate dials and change one at a time.
- Keep a baseline image from an unquantized, full-step run so you can see what each trade costs.
- Set CFG to 1.0 whenever a distilled LoRA is attached.
- Match text encoder and VAE to the model card; mismatches fail quietly rather than loudly.
- Use the bundled workflow template over a copied graph from a tutorial — node sets drift.



Top comments (0)