How good is FLUX.3 Klein at editing? A 12-task comparison that surprised me
>Behold, prompt paragons!
All we've been hearing for the last few days is how FLUX.3 Klein didn't live up to expectations when it comes to text-to-image.
But since it's an edit model, are the claims really fair? How does it perform with actual edit prompts compared to other models?
To find out, I tested it with 12 common tasks and compared it with its most popular direct competitors (i.e. 9B parameters or less), so Krea 2 + Edit LoRA, H3 ref2vid and Qwen Image Edit were deliberately left out.
Before you start: no AI was used to write this article ;)
TL;DR
Want to know the verdict straight away? Expand the spoiler below:
>!Despite being the smallest model, FLUX.3 Klein did very well in many edit tasks, staying only 1 point behind Qwen Image 2.1. In third place, FLUX.2 Klein showed that it still holds up thanks to its well-established ecosystem.!<
The method
Here are the models under test and their parameters:
- FLUX.3 Klein (F3K)
- 5.6B model released on 16 Oct 2026
- Base model + Kijai's Step Distilled LoRA at 0.8 strength
- er_sde + beta
- 20 steps, CFG 1
- Using the Create Bounding Boxes node, a single bounding box covering the entire reference was fed to the prompt upsampler, which is known to help with character consistency and texture sharpness.
- Qwen Image 2.1 (QI2)
- 7B model released on 21 Sep 2026
- Base model + Turbo 8-step LoRA at 1.0 strength
- er_sde + beta
- 8 steps, CFG 1
- Texture fix VAE
- FLUX.2 Klein 9B (F2K)
- 9B model released on 16 Jan 2026
- Distilled model
- er_sde + Flux2Scheduler
- 4 steps, CFG 1
The parameters above are believed to offer a good quality x speed ratio, based on official documentation and recommendations found on Reddit, Discord, Civitai and huggingface. Apart from that, workflows were as close to ComfyUI templates as possible, and only native nodes were used.
Unless specified, all reference images and outputs were configured to 1.5MP resolution.
int8 convrot quantization was used for all models and their respective text encoders. For a fair comparison, no additional LoRAs were used.
For each task, the best out of 8 seeds was cherry-picked. Then I gave each result a 0-5 score (5 = close to perfection, 0 = failed the task completely) based on:
- Prompt adherence: did it do what was asked?
- Preservation: did it keep identity and consistency, and leave untouched areas intact?
- Quality: was it free of artifacts, and produced detailed or convincing texture?
Prompt upsampling was enabled for F3K and QI2 as per their official recommendation. User prompts were adapted to follow the models' official guidelines e.g. Picture 1 for F2K, <image1> for QI2, <ref_image_0> for F3K.
Task 01 - Basic edits
How well it can add, remove and modify elements in the image.
Remove the umbrella above the subject. Add a tourist boat on the canal. Change the astronaut suit color to orange.
Score:
- FLUX.3 Klein - 5/5: Did great. Gloves stayed white and helmet still reflects the removed umbrella, but that's just me being too picky.
- Qwen Image 2.1 - 5/5: All edits completed. Like F3K, here the helmet is also reflecting the removed umbrella, but not a big deal.
- FLUX.2 Klein 9B - 5/5: No obvious flaws, just not as sharp as the others. Notice how well the surroundings react to the orange suit.
Conclusion: They all nailed it apart from very minor mistakes. Not necessarily a tough task, but it's a sneak peek at each model's strengths and weaknesses.
Task 02 - Character sheet
How well it keeps identity consistent across different poses, angles and a head close-up (which is also a glimpse into its upscale capabilities).
Note: For this task, resolution was set to 4 MP so the models could handle small details better.
Create a photorealistic live-action reference sheet on a neutral grey background, showing the same subject in three poses while retaining the face identity. The left part features a head closeup shot, where the subject faces forward with a neutral expression. The middle part features a front view full body shot. The right part features a side view full body shot.
Score:
- FLUX.3 Klein - 3/5: Consistency is OK, but standing poses lack definition and sometimes the anatomy isn't good enough. Texts look fine though.
- Qwen Image 2.1 - 3/5: Great consistency, although the expression was too similar to the original reference. The subject should be closer up in the left panel. All texts are correct.
- FLUX.2 Klein 9B - 2/5: It might look OK at a glance, but it doesn't retain identity very well - I got a slightly different person with each seed. A consistency helper LoRA can fix it though. This was the only model that got the eye colors right, by the way. The extra text gibberish can be easily removed.
Conclusion: Results can probably improve with better workflows. QI2 was the only model that could keep good quality even at 1.5 MP in a separate test, and the lightx2v LoRA can make it even more detailed.
Task 03 - Change location
How well it changes the background and lighting.
Change the background to a dark spaceship interior. The only light sources are the neon lights on the wall. The subject is seated on a futuristic chair.
Score:
- FLUX.3 Klein - 4/5: Preserved the identity, background is not bad in this particular example, lighting was almost correctly adapted (you can still see the wrong reflection on the helmet).
- Qwen Image 2.1 - 4/5: Great consistency, though the table was present in all seeds, and helmet is also reflecting the cafeteria.
- FLUX.2 Klein 9B - 5/5: Was not afraid to adapt the lighting on the subject. Even the helmet reflections were properly rendered.
Conclusion: Every model did well, but F2K is still the king for this kind of task IMO.
Task 04 - Transfer pose
How well it transfers the pose from one subject to another.
Change the pose of the person from Picture 2 to match the pose in Picture 1.
Score:
- FLUX.3 Klein - 3/5: Anatomy (fingers, toes) was so consistently bad that I actually ran the workflow again without the step distill LoRA at the default 50 steps, but had the exact same issue. It didn't follow the head angle, but identity looks great and quality is good enough.
- Qwen Image 2.1 - 4/5: Copied the pose correctly most of the time while keeping near-perfect anatomy and great consistency.
- FLUX.2 Klein 9B - 3/5: The only one that consistently nailed the entire pose in most seeds, but identity wasn't preserved as well as the others. Also, it lacked texture sharpness/definition.
Conclusion: A bit disappointed with F3K, the rumours about its poor anatomy seem to be true unfortunately. The good news is that they all basically have "ControlNet" built-in.
Task 05 - Head swap
How it handles head swap while keeping the original body, pose and expression.
Replace the subject's head from Picture 1 with the subject's head from Picture 2. Retain expression, body shape, pose, background and lighting from Picture 1. Retain the head, hair, eye color and facial features of the subject from Picture 2.
Score:
- FLUX.3 Klein: 3/5: Most of the time it doesn't look like the same person, but it managed to copy the pose and expression. Head is too small though.
- Qwen Image 2.1: 1/5: Copied the original head too literally, and consistently failed to scale it to fit the body - same issue with base model without distilled LoRAs at high step count. Also, it looks like it was pasted without blending in.
- FLUX.2 Klein 9B: 3/5: The only one that produced a proportional head, but unhappy with the identity and expression preservation.
Conclusion: I'm surprised how challenging this task was, especially given its demand. Luckily we have the amazing BFS LoRAs to help with it.
Task 06 - Style transfer
How well it can transfer style from one image to another.
Transfer art style from Picture 2 to Picture 1.
Score:
- FLUX.3 Klein: 2/5: Not great, but at least it tried to reproduce the dark aspect of a chiaroscuro artwork.
- Qwen Image 2.1: 3/5: Despite being a cool style, the brushstrokes and yellow tint are too strong compared to the reference style.
- FLUX.2 Klein 9B: 2/5: Aesthetics aren't so bad, but the furthest from the reference.
Conclusion: Not surprisingly, the most challenging task. It shows how IPAdapter was ahead of its time back in 2023. I keep seeing new tools trying to address this though, so there's still hope.
Task 07 - Text rendering
How it replaces and writes text.
Write the title \"SUPERNOVA MAGAZINE\" at the top in a bold futuristic font with a brushed-metal texture. At the bottom left, write \"EDIT MODELS\" in a red font over a yellow rectangle. Below it, write \"Comparing the most popular ones\" in a white serif font with a thin black outline. Replace the text \"Supernova Tech\" on her suit with \"Behold!\". Add a vignette to the image.
Score:
- FLUX.3 Klein: 4/5: Did well but failed a few seeds. Also, I didn't like how it couldn't blend "Behold!" into the suit.
- Qwen Image 2.1: 5/5: High success rate with text rendering, almost no fails across the different seeds.
- FLUX.2 Klein 9B: 3/5: This cherry-picked result did OK, particularly the top and center texts, but it produced garbled words in almost all seeds.
Conclusion: There's still a long way to go before the results are consistently good. Fortunately this function is getting better with every new model release.
Task 08 - Virtual try-on
How well it changes outfits.
Replace the clothing of the subject from Picture 1 with the outfit from Picture 2.
Score:
- FLUX.3 Klein: 3/5: Looks OK, but the clothes lack detail and texture. Not even the base model at 50 steps fixed it.
- Qwen Image 2.1: 3/5: Not terrible, but same problem as F3K. Swapping the Turbo LoRA for the lightx2v Lightning LoRA can improve the result by a lot.
- FLUX.2 Klein 9B: 4/5: Good consistency, but the colors don't always match.
Conclusion: After all the tasks so far, this one was rather predictable. There are LoRAs to help with this if you need them.
Task 09 - Turn into real photo
What it looks like when an illustration is converted to a photo.
Turn this image into a live-action photograph.
Score:
- FLUX.3 Klein: 4/5: Background and clothing could look more real, but subjects are spot-on.
- Qwen Image 2.1: 4/5: Aesthetically nice, but skin looks way too polished.
- FLUX.2 Klein 9B: 3/5: Subjects look realistic, but background and lighting could be better (looks like daytime instead of nighttime) - easy to fix with a follow-up prompt.
Conclusion: Some models are harder to prompt than others, but nothing that LoRAs can't fix.
Task 10 - Turn into anime
What it looks like when a photo is converted to anime.
Change this image into a cute anime illustration style while retaining her facial expression.
Score:
- FLUX.3 Klein: 4/5: Nailed the anime style, but I'm not sure if it copied the awkward smile completely.
- Qwen Image 2.1: 4/5: Good style (is it cute enough though?), but it has that classic ChatGPT yellow tint to it (easily fixable). Also unsure about the expression preservation.
- FLUX.2 Klein 9B: 3/5: A bit too bright for my taste but it's certainly the cutest style of them all. Unfortunately it failed to copy the expression, and it insists on making the subject look toward the camera.
Conclusion: I thought this would be easier out of the box, but clearly they all struggle to preserve the expression. The art style should be easy to fix with LoRAs.
Task 11 - Remove watermarks
How well it removes watermarks.
Remove watermarks.
Score:
- FLUX.3 Klein: 5/5: Completed the task without obvious flaws or compromises.
- Qwen Image 2.1: 5/5: Same.
- FLUX.2 Klein 9B: 5/5: Same.
Conclusion: This was one of the easiest tasks to complete, so props to all models.
Task 12 - Restore photo
How much improvement can be done on an old photo.
Restore the old photo by removing paper damage and stains. Turn it into a professional colored photo.
Score:
- FLUX.3 Klein: 4/5: Great consistency, but it lacks texture and color - easy to fix with follow-up prompts.
- Qwen Image 2.1: 4/5: Best texture, restored the photo well, preserved pretty much everything. A bit too pale, but easy to fix in post prod.
- FLUX.2 Klein 9B: 3/5: Identity is almost perfect, but failed to remove some damage. Skin looks too artificial. Should be easy to solve with consistency LoRAs though.
Conclusion: I thought all models would get perfect scores, but it seems each one has its own pros and cons. Probably a good idea to mix and match to get the best of each.
The verdict
🥉3rd place (41/60): FLUX.2 Klein 9B Distilled
- Still holds up against modern edit models.
- The fastest model on my PC despite being the biggest.
- Before choosing the workflow parameters, I also experimented with a higher step count (6) but it did more harm than good to the results.
- PSA: the model would've performed better with the help of a consistency LoRA at >= 0.5 strength, but I'm unsure whether it would be a fair comparison since the community had more time to work with F2K.
🥈2nd place (44/60): FLUX.3 Klein
- Impressive editing capabilities for its size - only 1 point behind the winner.
- Anatomy is indeed its greatest weakness, hence its bad reputation with text-to-image.
- Before choosing the workflow parameters, I also experimented with 8 steps and CFG 3, but in general it produced less detailed results. Sometimes I would also try with 50 steps and CFG 1, but improvements weren't clear.
- PSA: in most cases (not all), consistency and quality can be improved if you provide bounding boxes with the Create Bounding Boxes node. So before giving up on a task, I recommend you do that, even if it means covering the whole image with a single bbox.
🥇1st place (45/60): Qwen Image 2.1
- Provided the best consistency out of the box.
- Sometimes it tries too hard to be consistent, which harmed some of the results.
- Before choosing the workflow parameters, I also experimented with the lightx2v Lightning 4-step LoRA, but despite producing sharper results at the fastest speed, it shifted the images to the left too much, getting worse with higher step count.
- PSA: Low resolution references hurt its results more than any other models, so make sure to use high quality images.
My opinion
FLUX.3 Klein probably wouldn't be so criticized had it been appropriately advertised as an "edit-first" model. The results show it is good at that. And like any other small edit model that came before it, it struggles a lot with text-to-image - Flux.1 Kontext, Qwen Image Edit, F2K, and even the recent QI 2.1... they all suffer from similar issues, so I feel like the backlash was exaggerated partly due to unrealistic expectations too.
I do understand the frustration, it might not look like the progress we've been eagerly waiting for after so many months - a long time in the generative AI scene - but in my opinion the progress is there, so personally I won't be ditching F3K just yet. Remember that it's a "mere" 5.6B model that went head-to-head with 7B and 9B models in most tasks.
One thing I've learned from experimenting with image generation since 2022 is that it's better to take advantage of each model's strengths - it's not uncommon to mix them to achieve a goal. And for as long as that remains true, I believe that the more open and local options we have, the better. Don't you agree?
What do you think?
- Did the results surprise you, or do they match your findings?
- Was this a fair comparison, or should I have used helper LoRAs for each model?
- Do you know better workflow settings that can be shared with the community?
- Should I have included edit models with more parameters (Krea 2 Turbo + Edit LoRA, H3 ref2vid, Qwen Image Edit, other)?
Let me know so I can share better comparisons in the future.
>Until the next Supernova! [End transmission.]
142 points · 79 comments
Qwen-Image-2.1-Turbo Isn't 7B: The VRAM You Actually Need to Run It Locally
Qwen-Image-2.1-Turbo gets called a "7B" model everywhere. Before you try to run it locally, know that the Hugging Face repo is 32.4 GB, the bundled text encoder is bigger than the image model, and the license rules out anything you get paid for.
Qwen released Qwen-Image-2.1-Turbo on 2026-10-09, 19 days after the base Qwen-Image-2.1. It's an accelerated checkpoint that generates and edits images in 8 denoising steps. The base model's default is 40. I'll cover what changed, how much VRAM it really needs, how to run it with diffusers and ComfyUI, and two config gotchas, one of which has already started a "poor results in comfy" thread.
What changed from Qwen-Image-2.1
Not much in the architecture. The model card says Turbo "uses the same 7B visual generation architecture" and loads with the same QwenImage21Pipeline. The differences:
- 8 steps instead of the base default of 40 (GitHub README).
- The schedule is baked in: model_index.json carries a fixed sample_sigmas list, 1.0, 0.978453, 0.95418, 0.926626, 0.89508, 0.845148, 0.704534, 0.414568.
- CFG=1 by default, so there's one forward pass per step.
- Features are unchanged: text-to-image, editing with reference images, RGBA transparency output, and the same 2K-level resolution presets (2048×2048 at 1:1, 2752×1536 at 16:9).
So you're doing a fifth of the denoising work. Qwen publishes no Turbo speed numbers or quality benchmarks, either on the card or in the README, so everything you'll read about Turbo being "just as good" comes from showcase images Qwen picked themselves.
For scale, here are base-model numbers from LightX2V's RTX 5090 table: 5.586 s at 1024×1024 and 30.333 s at 2048×2048, both at 40 steps with CFG disabled. Turbo should come in well under that, but I couldn't find a Turbo figure on NVIDIA hardware. The one real-hardware Turbo number I found comes from the author of a native Mac port (HF discussion #5): about 120 s at 1024² on an M1 Pro with 16 GB.
The "7B" number hides most of the download
My research machine has no GPU, so I couldn't time generations. I did read the safetensors headers of every component straight from the Hub (range requests, no full download) and added up the parameters:
| Component | Params | BF16 file size |
|---|---|---|
| Transformer (DiT, 32 layers) | 7.115B | 14.23 GB |
| Text encoder (Qwen3-VL 8B) | 8.767B | 17.53 GB |
| VAE | 0.338B | 0.68 GB |
| Total | 16.22B | 32.44 GB |
The "7B" is the denoiser alone. The full pipeline has 16.2B parameters, and over half of them are a vision-language model that encodes your prompt and reference images. That's also why VRAM estimates for this model are all over the place.
vLLM-Omni's recipe measured the base model, which has the same architecture, at 34.0 GB peak on a GB300 at 1024×1024 in BF16. That's more than a 32 GB RTX 5090 holds, unless you offload something.
How much VRAM you need at each precision
The text encoder runs once per prompt, while the DiT runs every step. So you can offload the encoder or quantize it hard and lose very little.
Here are weight totals for the practical combinations, using file sizes from Comfy-Org/Qwen-Image-2.1 and unsloth/Qwen-Image-2.1-Turbo-GGUF:
| Setup | DiT | Text encoder | VAE | Weights total |
|---|---|---|---|---|
| Full BF16 (diffusers default) | 14.23 GB | 17.53 GB | 0.68 GB | 32.44 GB |
| ComfyUI INT8 DiT + INT8 encoder | 7.26 GB | 9.35 GB | 0.68 GB | 17.29 GB |
| ComfyUI INT8 DiT + W4A8 encoder | 7.26 GB | 6.31 GB | 0.68 GB | 14.25 GB |
| GGUF Q8_0 + W4A8 encoder | 7.64 GB | 6.31 GB | 0.68 GB | 14.63 GB |
| GGUF Q4_K_M + W4A8 encoder | 4.20 GB | 6.31 GB | 0.68 GB | 11.19 GB |
These are weight sizes, not measured peaks. Activations come on top, and at native 2K they get big. ComfyUI and diffusers offload both swap models in and out, so the number that matters on a small card is roughly DiT plus activations.
My rough guide:
- 40 GB+ cards: run everything in BF16 and keep it resident.
- 24–32 GB: BF16 DiT with the text encoder offloaded, or the INT8 Comfy files.
- 12–16 GB: GGUF Q4_K_M to Q8_0 for the DiT, a 4-bit encoder, and offloading.
- Apple silicon, 16 GB: the Siliconed app (Swift/Metal) supports the full weights, Comfy's int8, or Q4_K_M.
On quant quality: Unsloth published LPIPS against the BF16 Turbo transformer (lower is better). Q8_0 scores 0.036, Q4_K_M 0.153, and Q2_K 0.374. They recommend Q4_K_M for most GPUs and warn that the 2- and 3-bit files "drift visibly from bf16 at 8 steps." Few-step models have less room to absorb quantization error than a 40-step model does, so I'd treat Q4_K_M as the floor.
How to run it with diffusers
Turbo needs a diffusers build with pipeline-configured sigmas (PR #14950) and a recent transformers. The card tells you to install diffusers from source:
pip install git+https://github.com/huggingface/diffusers.git
pip install "transformers>=5.17.0" accelerate pillow
That PR also shipped in the diffusers 0.41.0 release on PyPI (2026-10-06), so pip install "diffusers>=0.41.0" works too.
This is the card's example with a shorter prompt, 1024×1024 instead of the card's 1680×2512, and CPU offload added, which is what most people on a single consumer GPU will want:
import torch
from diffusers import QwenImage21Pipeline
pipe = QwenImage21Pipeline.from_pretrained(
"Qwen/Qwen-Image-2.1-Turbo",
dtype=torch.bfloat16,
)
pipe.enable_model_cpu_offload() # drop this and use .to("cuda") if you have ~40 GB
image = pipe(
prompt="A hand-lettered chemistry study poster titled \"Chemical Reactions and Equations\"",
width=1024,
height=1024,
use_kv_cache=True,
generator=torch.Generator("cpu").manual_seed(42),
).images[0]
image.save("t2i.png")
Gotcha number one: num_inference_steps does nothing on its own here. The card is explicit: "Setting num_inference_steps alone does not override" the saved schedule. To try other step counts you have to pass sigmas= explicitly, and Qwen says other schedules "have not been evaluated." If you tried 4 steps and the output didn't change, that's why.
For editing, pass image=load_image(...).convert("RGBA") to the same pipeline. The prefix KV cache (use_kv_cache=True) encodes the prompt and reference images once and reuses them across all 8 steps.
How to run it in ComfyUI without getting mush
ComfyUI has supported Qwen-Image-2.1 natively since day 0. Put these files from Comfy-Org/Qwen-Image-2.1 in your models/ folders:
- diffusion_models/qwen_image_2.1_turbo_bf16.safetensors (or _int8_convrot)
- text_encoders/qwen3vl_8b_bf16.safetensors (or _int8_convrot / _w4a8)
- vae/qwen_image_2.1_vae_bf16.safetensors
Start from the official text-to-image workflow.
Gotcha number two: a plain KSampler at 8 steps doesn't reproduce Turbo's schedule. The fix in discussion #4 ("For anyone getting poor results in comfy") is to switch to SamplerCustomAdvanced with a ManualSigmas node set to:
1.0, 0.978453, 0.95418, 0.926626, 0.89508, 0.845148, 0.704534, 0.414568, 0.0
Use euler and CFG 1. Save that node as a subgraph so you don't have to retype it every time.
If you already have the base model, Comfy-Org also ships qwen_image_2.1_turbo_lora_avg_rank_178_bf16.safetensors (0.91 GB), a LoRA extracted from Turbo. You can apply it to the base DiT instead of downloading a second 14 GB checkpoint.
The license is the actual headline
The original Qwen-Image from August 2025 was Apache-2.0. Qwen-Image-2.1 and Turbo use the Qwen Research License Agreement, which grants rights "FOR NON-COMMERCIAL PURPOSES ONLY" and defines non-commercial as "for research or evaluation purposes only." For commercial use you email model-business@notice.qwencloud.com and ask. Disputes go to courts in Hangzhou under Chinese law.
On the same day the Turbo weights went up, Qwen also launched paid Pro and Turbo APIs on Alibaba Cloud Model Studio. Planned or not, that's how it works out: you can run it at home for free, and if you want to put it in a product you pay Alibaba.
So, can it replace Midjourney? For personal work and experiments, an 8-step model with good text rendering, native transparency and multi-image references is a strong offer. For client work, read the license before you cancel anything.
Is Qwen-Image-2.1-Turbo worth running locally?
If you have 16 GB or more of VRAM and you want to try text-heavy posters, UI mockups or transparent assets, yes. Get Q8_0 or INT8 and set the sigmas correctly. If you need clean commercial rights, the Apache-licensed Qwen-Image from 2025 is still the one you're allowed to ship with.
Has Turbo at 8 steps actually replaced a paid image service for you, or does the non-commercial license rule it out before image quality even matters? Post your GPU, quant and seconds per image in the comments. I haven't found proper Turbo benchmarks anywhere yet, so yours would be among the first.
Sources
- Qwen/Qwen-Image-2.1-Turbo model card and LICENSE
- QwenLM/Qwen-Image-2.1 GitHub README
- Comfy-Org/Qwen-Image-2.1 repackaged weights
- unsloth/Qwen-Image-2.1-Turbo-GGUF
- vLLM-Omni Qwen-Image-2.1 recipe
- LightX2V Qwen-Image-2.1 scripts
- HF discussion #4: ComfyUI sigmas fix
- HF discussion #5: Siliconed Mac port
Mentions
Workflowのリンクが途中で切れていました 以下からDLできます github.com/Comfy-Org/workflow_templates/blob/main…
@VitalDatch Weights: huggingface.co Workflow: github.com/Comfy-Org/workflow_templates/blob/main…
ComfyUI 用户可以拿 MOSS 的框选模板做菜单:店名放顶部、菜名放左侧、杯子放右下,每块分别填文字或物体描述。 连线已搭好。子图里的 enable_prompt_upsampler 设为 false,避免自动改写丢掉布局。改框、改文字,就能开始做自己的菜单。 模板:github.com/Comfy-Org/workflow_templates/blob/main…
for those needing a FastH3 Omni WF, you can literally use the comfy template for Ref2V in comfy or at this link! just swap out the minimax model for the fasth3 model and your good to go. i also have GGUF encoders for minimax in my minimax repo on HF! github.com/Comfy-Org/workflow_templates/blob/main…
How good is FLUX.3 Klein at editing? A 12-task comparison that surprised me >Behold, prompt paragons! All we've been hearing for the last few days is how FLUX.3 Klein didn't live up to expectations when it comes to text-to-image. But since it's an edit model, are the claims really fair? How does it perform with actual edit prompts compared to other models? To find out, I tested it with 12 common tasks and compared it with its most popular direct competitors (i.e. 9B parameters or less), so Krea 2 + Edit LoRA, H3 ref2vid and Qwen Image Edit were deliberately left out. Before you start: no AI was used to write this article ;) TL;DR Want to know the verdict straight away? Expand the spoiler below: >!Despite being the smallest model, FLUX.3 Klein did very well in many edit tasks, staying only 1 point behind Qwen Image 2.1. In third place, FLUX.2 Klein showed that it still holds up thanks to its well-established ecosystem.!< The method Here are the models under test and their parameters: - FLUX.3 Klein (F3K) - 5.6B model released on 16 Oct 2026 - Base model + Kijai's Step Distilled LoRA at 0.8 strength - er_sde + beta - 20 steps, CFG 1 - Using the Create Bounding Boxes node, a single bounding box covering the entire reference was fed to the prompt upsampler, which is known to help with character consistency and texture sharpness. - Qwen Image 2.1 (QI2) - 7B model released on 21 Sep 2026 - Base model + Turbo 8-step LoRA at 1.0 strength - er_sde + beta - 8 steps, CFG 1 - Texture fix VAE - FLUX.2 Klein 9B (F2K) - 9B model released on 16 Jan 2026 - Distilled model - er_sde + Flux2Scheduler - 4 steps, CFG 1 The parameters above are believed to offer a good quality x speed ratio, based on official documentation and recommendations found on Reddit, Discord, Civitai and huggingface. Apart from that, workflows were as close to ComfyUI templates as possible, and only native nodes were used. Unless specified, all reference images and outputs were configured to 1.5MP resolution. int8 convrot quantization was used for all models and their respective text encoders. For a fair comparison, no additional LoRAs were used. For each task, the best out of 8 seeds was cherry-picked. Then I gave each result a 0-5 score (5 = close to perfection, 0 = failed the task completely) based on: - Prompt adherence: did it do what was asked? - Preservation: did it keep identity and consistency, and leave untouched areas intact? - Quality: was it free of artifacts, and produced detailed or convincing texture? Prompt upsampling was enabled for F3K and QI2 as per their official recommendation. User prompts were adapted to follow the models' official guidelines e.g. Picture 1 for F2K, <image1> for QI2, <ref_image_0> for F3K. Task 01 - Basic edits How well it can add, remove and modify elements in the image. Remove the umbrella above the subject. Add a tourist boat on the canal. Change the astronaut suit color to orange. Score: - FLUX.3 Klein - 5/5: Did great. Gloves stayed white and helmet still reflects the removed umbrella, but that's just me being too picky. - Qwen Image 2.1 - 5/5: All edits completed. Like F3K, here the helmet is also reflecting the removed umbrella, but not a big deal. - FLUX.2 Klein 9B - 5/5: No obvious flaws, just not as sharp as the others. Notice how well the surroundings react to the orange suit. Conclusion: They all nailed it apart from very minor mistakes. Not necessarily a tough task, but it's a sneak peek at each model's strengths and weaknesses. Task 02 - Character sheet How well it keeps identity consistent across different poses, angles and a head close-up (which is also a glimpse into its upscale capabilities). Note: For this task, resolution was set to 4 MP so the models could handle small details better. Create a photorealistic live-action reference sheet on a neutral grey background, showing the same subject in three poses while retaining the face identity. The left part features a head closeup shot, where the subject faces forward with a neutral expression. The middle part features a front view full body shot. The right part features a side view full body shot. Score: - FLUX.3 Klein - 3/5: Consistency is OK, but standing poses lack definition and sometimes the anatomy isn't good enough. Texts look fine though. - Qwen Image 2.1 - 3/5: Great consistency, although the expression was too similar to the original reference. The subject should be closer up in the left panel. All texts are correct. - FLUX.2 Klein 9B - 2/5: It might look OK at a glance, but it doesn't retain identity very well - I got a slightly different person with each seed. A consistency helper LoRA can fix it though. This was the only model that got the eye colors right, by the way. The extra text gibberish can be easily removed. Conclusion: Results can probably improve with better workflows. QI2 was the only model that could keep good quality even at 1.5 MP in a separate test, and the lightx2v LoRA can make it even more detailed. Task 03 - Change location How well it changes the background and lighting. Change the background to a dark spaceship interior. The only light sources are the neon lights on the wall. The subject is seated on a futuristic chair. Score: - FLUX.3 Klein - 4/5: Preserved the identity, background is not bad in this particular example, lighting was almost correctly adapted (you can still see the wrong reflection on the helmet). - Qwen Image 2.1 - 4/5: Great consistency, though the table was present in all seeds, and helmet is also reflecting the cafeteria. - FLUX.2 Klein 9B - 5/5: Was not afraid to adapt the lighting on the subject. Even the helmet reflections were properly rendered. Conclusion: Every model did well, but F2K is still the king for this kind of task IMO. Task 04 - Transfer pose How well it transfers the pose from one subject to another. Change the pose of the person from Picture 2 to match the pose in Picture 1. Score: - FLUX.3 Klein - 3/5: Anatomy (fingers, toes) was so consistently bad that I actually ran the workflow again without the step distill LoRA at the default 50 steps, but had the exact same issue. It didn't follow the head angle, but identity looks great and quality is good enough. - Qwen Image 2.1 - 4/5: Copied the pose correctly most of the time while keeping near-perfect anatomy and great consistency. - FLUX.2 Klein 9B - 3/5: The only one that consistently nailed the entire pose in most seeds, but identity wasn't preserved as well as the others. Also, it lacked texture sharpness/definition. Conclusion: A bit disappointed with F3K, the rumours about its poor anatomy seem to be true unfortunately. The good news is that they all basically have "ControlNet" built-in. Task 05 - Head swap How it handles head swap while keeping the original body, pose and expression. Replace the subject's head from Picture 1 with the subject's head from Picture 2. Retain expression, body shape, pose, background and lighting from Picture 1. Retain the head, hair, eye color and facial features of the subject from Picture 2. Score: - FLUX.3 Klein: 3/5: Most of the time it doesn't look like the same person, but it managed to copy the pose and expression. Head is too small though. - Qwen Image 2.1: 1/5: Copied the original head too literally, and consistently failed to scale it to fit the body - same issue with base model without distilled LoRAs at high step count. Also, it looks like it was pasted without blending in. - FLUX.2 Klein 9B: 3/5: The only one that produced a proportional head, but unhappy with the identity and expression preservation. Conclusion: I'm surprised how challenging this task was, especially given its demand. Luckily we have the amazing BFS LoRAs to help with it. Task 06 - Style transfer How well it can transfer style from one image to another. Transfer art style from Picture 2 to Picture 1. Score: - FLUX.3 Klein: 2/5: Not great, but at least it tried to reproduce the dark aspect of a chiaroscuro artwork. - Qwen Image 2.1: 3/5: Despite being a cool style, the brushstrokes and yellow tint are too strong compared to the reference style. - FLUX.2 Klein 9B: 2/5: Aesthetics aren't so bad, but the furthest from the reference. Conclusion: Not surprisingly, the most challenging task. It shows how IPAdapter was ahead of its time back in 2023. I keep seeing new tools trying to address this though, so there's still hope. Task 07 - Text rendering How it replaces and writes text. Write the title \"SUPERNOVA MAGAZINE\" at the top in a bold futuristic font with a brushed-metal texture. At the bottom left, write \"EDIT MODELS\" in a red font over a yellow rectangle. Below it, write \"Comparing the most popular ones\" in a white serif font with a thin black outline. Replace the text \"Supernova Tech\" on her suit with \"Behold!\". Add a vignette to the image. Score: - FLUX.3 Klein: 4/5: Did well but failed a few seeds. Also, I didn't like how it couldn't blend "Behold!" into the suit. - Qwen Image 2.1: 5/5: High success rate with text rendering, almost no fails across the different seeds. - FLUX.2 Klein 9B: 3/5: This cherry-picked result did OK, particularly the top and center texts, but it produced garbled words in almost all seeds. Conclusion: There's still a long way to go before the results are consistently good. Fortunately this function is getting better with every new model release. Task 08 - Virtual try-on How well it changes outfits. Replace the clothing of the subject from Picture 1 with the outfit from Picture 2. Score: - FLUX.3 Klein: 3/5: Looks OK, but the clothes lack detail and texture. Not even the base model at 50 steps fixed it. - Qwen Image 2.1: 3/5: Not terrible, but same problem as F3K. Swapping the Turbo LoRA for the lightx2v Lightning LoRA can improve the result by a lot. - FLUX.2 Klein 9B: 4/5: Good consistency, but the colors don't always match. Conclusion: After all the tasks so far, this one was rather predictable. There are LoRAs to help with this if you need them. Task 09 - Turn into real photo What it looks like when an illustration is converted to a photo. Turn this image into a live-action photograph. Score: - FLUX.3 Klein: 4/5: Background and clothing could look more real, but subjects are spot-on. - Qwen Image 2.1: 4/5: Aesthetically nice, but skin looks way too polished. - FLUX.2 Klein 9B: 3/5: Subjects look realistic, but background and lighting could be better (looks like daytime instead of nighttime) - easy to fix with a follow-up prompt. Conclusion: Some models are harder to prompt than others, but nothing that LoRAs can't fix. Task 10 - Turn into anime What it looks like when a photo is converted to anime. Change this image into a cute anime illustration style while retaining her facial expression. Score: - FLUX.3 Klein: 4/5: Nailed the anime style, but I'm not sure if it copied the awkward smile completely. - Qwen Image 2.1: 4/5: Good style (is it cute enough though?), but it has that classic ChatGPT yellow tint to it (easily fixable). Also unsure about the expression preservation. - FLUX.2 Klein 9B: 3/5: A bit too bright for my taste but it's certainly the cutest style of them all. Unfortunately it failed to copy the expression, and it insists on making the subject look toward the camera. Conclusion: I thought this would be easier out of the box, but clearly they all struggle to preserve the expression. The art style should be easy to fix with LoRAs. Task 11 - Remove watermarks How well it removes watermarks. Remove watermarks. Score: - FLUX.3 Klein: 5/5: Completed the task without obvious flaws or compromises. - Qwen Image 2.1: 5/5: Same. - FLUX.2 Klein 9B: 5/5: Same. Conclusion: This was one of the easiest tasks to complete, so props to all models. Task 12 - Restore photo How much improvement can be done on an old photo. Restore the old photo by removing paper damage and stains. Turn it into a professional colored photo. Score: - FLUX.3 Klein: 4/5: Great consistency, but it lacks texture and color - easy to fix with follow-up prompts. - Qwen Image 2.1: 4/5: Best texture, restored the photo well, preserved pretty much everything. A bit too pale, but easy to fix in post prod. - FLUX.2 Klein 9B: 3/5: Identity is almost perfect, but failed to remove some damage. Skin looks too artificial. Should be easy to solve with consistency LoRAs though. Conclusion: I thought all models would get perfect scores, but it seems each one has its own pros and cons. Probably a good idea to mix and match to get the best of each. The verdict 🥉3rd place (41/60): FLUX.2 Klein 9B Distilled - Still holds up against modern edit models. - The fastest model on my PC despite being the biggest. - Before choosing the workflow parameters, I also experimented with a higher step count (6) but it did more harm than good to the results. - PSA: the model would've performed better with the help of a consistency LoRA at >= 0.5 strength, but I'm unsure whether it would be a fair comparison since the community had more time to work with F2K. 🥈2nd place (44/60): FLUX.3 Klein - Impressive editing capabilities for its size - only 1 point behind the winner. - Anatomy is indeed its greatest weakness, hence its bad reputation with text-to-image. - Before choosing the workflow parameters, I also experimented with 8 steps and CFG 3, but in general it produced less detailed results. Sometimes I would also try with 50 steps and CFG 1, but improvements weren't clear. - PSA: in most cases (not all), consistency and quality can be improved if you provide bounding boxes with the Create Bounding Boxes node. So before giving up on a task, I recommend you do that, even if it means covering the whole image with a single bbox. 🥇1st place (45/60): Qwen Image 2.1 - Provided the best consistency out of the box. - Sometimes it tries too hard to be consistent, which harmed some of the results. - Before choosing the workflow parameters, I also experimented with the lightx2v Lightning 4-step LoRA, but despite producing sharper results at the fastest speed, it shifted the images to the left too much, getting worse with higher step count. - PSA: Low resolution references hurt its results more than any other models, so make sure to use high quality images. My opinion FLUX.3 Klein probably wouldn't be so criticized had it been appropriately advertised as an "edit-first" model. The results show it is good at that. And like any other small edit model that came before it, it struggles a lot with text-to-image - Flux.1 Kontext, Qwen Image Edit, F2K, and even the recent QI 2.1... they all suffer from similar issues, so I feel like the backlash was exaggerated partly due to unrealistic expectations too. I do understand the frustration, it might not look like the progress we've been eagerly waiting for after so many months - a long time in the generative AI scene - but in my opinion the progress is there, so personally I won't be ditching F3K just yet. Remember that it's a "mere" 5.6B model that went head-to-head with 7B and 9B models in most tasks. One thing I've learned from experimenting with image generation since 2022 is that it's better to take advantage of each model's strengths - it's not uncommon to mix them to achieve a goal. And for as long as that remains true, I believe that the more open and local options we have, the better. Don't you agree? What do you think? - Did the results surprise you, or do they match your findings? - Was this a fair comparison, or should I have used helper LoRAs for each model? - Do you know better workflow settings that can be shared with the community? - Should I have included edit models with more parameters (Krea 2 Turbo + Edit LoRA, H3 ref2vid, Qwen Image Edit, other)? Let me know so I can share better comparisons in the future. >Until the next Supernova! [End transmission.]
@wassollichhier @ssstylusss so theyre on this link, and in comfy natively, just update! Comfy-Org/workflow_templates
Qwen-Image-2.1-Turbo Isn't 7B: The VRAM You Actually Need to Run It Locally Qwen-Image-2.1-Turbo gets called a "7B" model everywhere. Before you try to run it locally, know that the Hugging Face repo is 32.4 GB, the bundled text encoder is bigger than the image model, and the license rules out anything you get paid for. Qwen released Qwen-Image-2.1-Turbo on 2026-10-09, 19 days after the base Qwen-Image-2.1. It's an accelerated checkpoint that generates and edits images in 8 denoising steps. The base model's default is 40. I'll cover what changed, how much VRAM it really needs, how to run it with diffusers and ComfyUI, and two config gotchas, one of which has already started a "poor results in comfy" thread. What changed from Qwen-Image-2.1 Not much in the architecture. The model card says Turbo "uses the same 7B visual generation architecture" and loads with the same QwenImage21Pipeline. The differences: - 8 steps instead of the base default of 40 (GitHub README). - The schedule is baked in: model_index.json carries a fixed sample_sigmas list, 1.0, 0.978453, 0.95418, 0.926626, 0.89508, 0.845148, 0.704534, 0.414568. - CFG=1 by default, so there's one forward pass per step. - Features are unchanged: text-to-image, editing with reference images, RGBA transparency output, and the same 2K-level resolution presets (2048×2048 at 1:1, 2752×1536 at 16:9). So you're doing a fifth of the denoising work. Qwen publishes no Turbo speed numbers or quality benchmarks, either on the card or in the README, so everything you'll read about Turbo being "just as good" comes from showcase images Qwen picked themselves. For scale, here are base-model numbers from LightX2V's RTX 5090 table: 5.586 s at 1024×1024 and 30.333 s at 2048×2048, both at 40 steps with CFG disabled. Turbo should come in well under that, but I couldn't find a Turbo figure on NVIDIA hardware. The one real-hardware Turbo number I found comes from the author of a native Mac port (HF discussion #5): about 120 s at 1024² on an M1 Pro with 16 GB. The "7B" number hides most of the download My research machine has no GPU, so I couldn't time generations. I did read the safetensors headers of every component straight from the Hub (range requests, no full download) and added up the parameters: | Component | Params | BF16 file size | |---|---|---| | Transformer (DiT, 32 layers) | 7.115B | 14.23 GB | | Text encoder (Qwen3-VL 8B) | 8.767B | 17.53 GB | | VAE | 0.338B | 0.68 GB | | Total | 16.22B | 32.44 GB | The "7B" is the denoiser alone. The full pipeline has 16.2B parameters, and over half of them are a vision-language model that encodes your prompt and reference images. That's also why VRAM estimates for this model are all over the place. vLLM-Omni's recipe measured the base model, which has the same architecture, at 34.0 GB peak on a GB300 at 1024×1024 in BF16. That's more than a 32 GB RTX 5090 holds, unless you offload something. How much VRAM you need at each precision The text encoder runs once per prompt, while the DiT runs every step. So you can offload the encoder or quantize it hard and lose very little. Here are weight totals for the practical combinations, using file sizes from Comfy-Org/Qwen-Image-2.1 and unsloth/Qwen-Image-2.1-Turbo-GGUF: | Setup | DiT | Text encoder | VAE | Weights total | |---|---|---|---|---| | Full BF16 (diffusers default) | 14.23 GB | 17.53 GB | 0.68 GB | 32.44 GB | | ComfyUI INT8 DiT + INT8 encoder | 7.26 GB | 9.35 GB | 0.68 GB | 17.29 GB | | ComfyUI INT8 DiT + W4A8 encoder | 7.26 GB | 6.31 GB | 0.68 GB | 14.25 GB | | GGUF Q8_0 + W4A8 encoder | 7.64 GB | 6.31 GB | 0.68 GB | 14.63 GB | | GGUF Q4_K_M + W4A8 encoder | 4.20 GB | 6.31 GB | 0.68 GB | 11.19 GB | These are weight sizes, not measured peaks. Activations come on top, and at native 2K they get big. ComfyUI and diffusers offload both swap models in and out, so the number that matters on a small card is roughly DiT plus activations. My rough guide: - 40 GB+ cards: run everything in BF16 and keep it resident. - 24–32 GB: BF16 DiT with the text encoder offloaded, or the INT8 Comfy files. - 12–16 GB: GGUF Q4_K_M to Q8_0 for the DiT, a 4-bit encoder, and offloading. - Apple silicon, 16 GB: the Siliconed app (Swift/Metal) supports the full weights, Comfy's int8, or Q4_K_M. On quant quality: Unsloth published LPIPS against the BF16 Turbo transformer (lower is better). Q8_0 scores 0.036, Q4_K_M 0.153, and Q2_K 0.374. They recommend Q4_K_M for most GPUs and warn that the 2- and 3-bit files "drift visibly from bf16 at 8 steps." Few-step models have less room to absorb quantization error than a 40-step model does, so I'd treat Q4_K_M as the floor. How to run it with diffusers Turbo needs a diffusers build with pipeline-configured sigmas (PR #14950) and a recent transformers. The card tells you to install diffusers from source: pip install git+https://github.com/huggingface/diffusers.git pip install "transformers>=5.17.0" accelerate pillow That PR also shipped in the diffusers 0.41.0 release on PyPI (2026-10-06), so pip install "diffusers>=0.41.0" works too. This is the card's example with a shorter prompt, 1024×1024 instead of the card's 1680×2512, and CPU offload added, which is what most people on a single consumer GPU will want: import torch from diffusers import QwenImage21Pipeline pipe = QwenImage21Pipeline.from_pretrained( "Qwen/Qwen-Image-2.1-Turbo", dtype=torch.bfloat16, ) pipe.enable_model_cpu_offload() # drop this and use .to("cuda") if you have ~40 GB image = pipe( prompt="A hand-lettered chemistry study poster titled \"Chemical Reactions and Equations\"", width=1024, height=1024, use_kv_cache=True, generator=torch.Generator("cpu").manual_seed(42), ).images[0] image.save("t2i.png") Gotcha number one: num_inference_steps does nothing on its own here. The card is explicit: "Setting num_inference_steps alone does not override" the saved schedule. To try other step counts you have to pass sigmas= explicitly, and Qwen says other schedules "have not been evaluated." If you tried 4 steps and the output didn't change, that's why. For editing, pass image=load_image(...).convert("RGBA") to the same pipeline. The prefix KV cache (use_kv_cache=True) encodes the prompt and reference images once and reuses them across all 8 steps. How to run it in ComfyUI without getting mush ComfyUI has supported Qwen-Image-2.1 natively since day 0. Put these files from Comfy-Org/Qwen-Image-2.1 in your models/ folders: - diffusion_models/qwen_image_2.1_turbo_bf16.safetensors (or _int8_convrot) - text_encoders/qwen3vl_8b_bf16.safetensors (or _int8_convrot / _w4a8) - vae/qwen_image_2.1_vae_bf16.safetensors Start from the official text-to-image workflow. Gotcha number two: a plain KSampler at 8 steps doesn't reproduce Turbo's schedule. The fix in discussion #4 ("For anyone getting poor results in comfy") is to switch to SamplerCustomAdvanced with a ManualSigmas node set to: 1.0, 0.978453, 0.95418, 0.926626, 0.89508, 0.845148, 0.704534, 0.414568, 0.0 Use euler and CFG 1. Save that node as a subgraph so you don't have to retype it every time. If you already have the base model, Comfy-Org also ships qwen_image_2.1_turbo_lora_avg_rank_178_bf16.safetensors (0.91 GB), a LoRA extracted from Turbo. You can apply it to the base DiT instead of downloading a second 14 GB checkpoint. The license is the actual headline The original Qwen-Image from August 2025 was Apache-2.0. Qwen-Image-2.1 and Turbo use the Qwen Research License Agreement, which grants rights "FOR NON-COMMERCIAL PURPOSES ONLY" and defines non-commercial as "for research or evaluation purposes only." For commercial use you email model-business@notice.qwencloud.com and ask. Disputes go to courts in Hangzhou under Chinese law. On the same day the Turbo weights went up, Qwen also launched paid Pro and Turbo APIs on Alibaba Cloud Model Studio. Planned or not, that's how it works out: you can run it at home for free, and if you want to put it in a product you pay Alibaba. So, can it replace Midjourney? For personal work and experiments, an 8-step model with good text rendering, native transparency and multi-image references is a strong offer. For client work, read the license before you cancel anything. Is Qwen-Image-2.1-Turbo worth running locally? If you have 16 GB or more of VRAM and you want to try text-heavy posters, UI mockups or transparent assets, yes. Get Q8_0 or INT8 and set the sigmas correctly. If you need clean commercial rights, the Apache-licensed Qwen-Image from 2025 is still the one you're allowed to ship with. Has Turbo at 8 steps actually replaced a paid image service for you, or does the non-commercial license rule it out before image quality even matters? Post your GPU, quant and seconds per image in the comments. I haven't found proper Turbo benchmarks anywhere yet, so yours would be among the first. Sources - Qwen/Qwen-Image-2.1-Turbo model card and LICENSE - QwenLM/Qwen-Image-2.1 GitHub README - Comfy-Org/Qwen-Image-2.1 repackaged weights - unsloth/Qwen-Image-2.1-Turbo-GGUF - vLLM-Omni Qwen-Image-2.1 recipe - LightX2V Qwen-Image-2.1 scripts - HF discussion #4: ComfyUI sigmas fix - HF discussion #5: Siliconed Mac port