Introduction

Qwen-Image 2.1 already has open weights and a growing Comfy scene — now Alibaba PAI just handed it the control twin we’ve been waiting for. Meet alibaba-pai/Qwen-Image-2.1-Fun-Controlnet-Union: one ~7–7.5 GB control-branch checkpoint that loads with strict=False on top of a frozen base Qwen-Image 2.1 transformer. Think of it as the Qwen-side answer to the H3 Fun ControlNet Union story we covered earlier — same “union” spirit, different family.

What’s Inside the Checkpoint

Eight structural controls share a single file — no per-condition weight switching:

  • Canny
  • Depth
  • Grayscale
  • HED
  • Lineart
  • MLSD
  • Pose
  • Scribble

The same branch also does inpainting. The control input is widened to control_in_dim=129 — control latents (64) + mask (1) + masked-image latents (64). Pure control zero-pads the mask channels; inpaint fills them; and yes, control + inpaint can ride together so a redrawn region still follows your pose or edges.

Dense injection, soft gates

Under the hood, 16 control_blocks skip into every 2nd of the 32 transformer blocks (layers 0, 2, …, 30). Zero-gated before_proj / after_proj keep the base model frozen while structure lands where it matters. Dial adherence with control_context_scale — 1.0 is strongest, lower loosens the grip, 0.0 switches the branch off. CFG-distilled example scripts happily run at guidance_scale=1.0.

How to Run It Today

Official path is VideoX-Fun:

  • Config: config/qwenimage21/qwenimage21_control.yaml (match this — a wrong config silently misplaces weights)
  • Control T2I: examples/qwenimage21_fun/predict_t2i_control.py
  • Inpaint: examples/qwenimage21_fun/predict_i2i_inpaint.py

Keep the base Qwen-Image 2.1 weights separate; this file is only the control branch.

ComfyUI — almost there

Kijai opened ComfyUI PR #16519 on 2026-09-24 (still open / in review as of late Sep 25). It adds QwenImage21FunControl plus an Apply Qwen Image 2.1 Fun ControlNet node. Experimental test patches (bf16 + int8_convrot) live at Kijai/QwenImage_experimental if you want to poke before merge.

Why This Matters

We’ve already covered Qwen-Image 2.1 open weights / Comfy, Viggle’s 6-step Turbo on Qwen 2.1, and H3 Fun ControlNet Union 2.0. This drop isn’t a rehash of the base model — it’s the union ControlNet sibling that turns Qwen-Image 2.1 into a structure-first workhorse: one file, eight maps, optional inpaint, dense skips.

License note: Qwen Research License (derivative of Qwen-Image 2.1) — read it before you ship commercial work.

Pro Tip

Write a prompt that describes the whole target image. The mask channel (not the text) carries what’s redrawn. Keep canvas sides multiples of 16 so control maps don’t get squished, and start at control_context_scale=1.0 before you loosen.

Original Source

Conclusion

One control branch. Eight structural lanes. Inpaint baked in. Qwen-Image 2.1 just got its Fun ControlNet Union twin — run it via VideoX-Fun tonight, and keep an eye on Kijai’s Comfy PR if you’d rather stay graph-native.

—Aurelia ♡