Nodes/ComfyUI-QwenImageLoraLoader/Nunchaku Qwen Image LoRA Stack (Legacy)
ComfyUI Node

Nunchaku Qwen Image LoRA Stack (Legacy)

The original multi-LoRA stacker for Nunchaku Qwen

By ussoewwin·Created 9 months ago·Updated 19 days ago· 340
Nunchaku Qwen Image LoRA Stack (Legacy)
  • model
  • MODEL
lora_count3
cpu_offloaddisable
lora_name_1
lora_strength_11.00
lora_name_2
lora_strength_21.00
lora_name_3
lora_strength_31.00
lora_name_4
lora_strength_41.00
lora_name_5
lora_strength_51.00
lora_name_6
lora_strength_61.00
lora_name_7
lora_strength_71.00
lora_name_8
lora_strength_81.00
lora_name_9
lora_strength_91.00
lora_name_10
lora_strength_101.00

This is the stacker that started it all in this pack, and the README labels it "Legacy" for a reason. It does the same core job as the single loader, applying LoRAs to a 4-bit Nunchaku Qwen-Image model, but it packs several into one node so you don't daisy-chain a separate loader per LoRA. If you're building a fresh workflow, the newer V3 is the one I'd point you at. This one is worth understanding because plenty of existing workflows still wire it in, and it's the simplest mental model of how stacking works here.

Fast recap for anyone landing cold: Nunchaku is MIT HAN Lab's SVDQuant engine that runs Alibaba's 20B Qwen-Image in 4-bit so it fits on a normal GPU, and stock ComfyUI LoRA loaders can't patch those quantized weights. This pack (lifted and modified from GavChap's nunchaku fork) is what makes LoRAs work on them at all.

How it works

You set how many LoRA slots you want, fill each with a file and a strength, and the node applies every one in sequence onto the model before it reaches the sampler. It's the exact same key-mapping the single loader does, just run in a loop. The thing to know about this version specifically: it's the plain dynamic-widget design with no per-row on/off toggle and none of the rgthree-style row layout the later versions borrowed. Every slot you spin up is a slot that fires. To disable a LoRA you set its name back to None rather than flicking a switch.

The inputs and outputs that matter

  • model (MODEL) - your Nunchaku Qwen-Image model from the DiT loader.
  • lora_count (1–10, default 3) - how many LoRA rows the node shows. Bump this and the matching name/strength pairs appear.
  • cpu_offload (auto / enable / disable, default disable) - trade a little speed for VRAM headroom. Off by default is fine for most.
  • lora_name_1 … lora_name_10 and lora_strength_1 … lora_strength_10 - one pair per slot. Pick the file, set the strength (default 1.0). Set a name to None to skip that slot.

Output is one patched MODEL for your KSampler. A word of caution that isn't specific to this node but bites here: stacking multiple LoRAs is unpredictable. Add them one at a time on a fixed seed, and if a stack starts throwing black images or NaNs, reorder it with the heavier LoRAs first.

Installing it

Comes with the pack. In ComfyUI Manager, search for it, install, restart. Or clone it:

cd ComfyUI/custom_nodes
git clone https://github.com/ussoewwin/ComfyUI-QwenImageLoraLoader

and restart. As always with this pack, it doesn't bring Nunchaku along, you need the official ComfyUI-nunchaku plugin already installed and a Nunchaku Qwen model downloaded. Nunchaku wants a wheel matched to your PyTorch and CUDA versions, so get that working first. Python 3.11+.

Where people get burned

  • Only Standard and PEFT LoRAs apply. LoKR, LoHa and IA3 get silently skipped on Nunchaku models. If a slot does nothing, check the LoRA's format before touching the node.
  • A lightning/distill LoRA on an already-distilled model = black images. A common real-world screw-up: dropping a 4-step lightning LoRA into the stack when your Nunchaku model already has that lightning bake baked in. Two lots of the same distillation fight each other and you get a black frame. Don't double up.
  • Reach for V3 if you're starting over. This one has no per-row toggle and doesn't get on well with ComfyUI's Nodes 2.0 canvas. The later stackers add clean toggles and Nodes 2.0 support; there's no reason to build a new graph around the legacy one.
CategoryNunchaku

Inputs (23)

NameTypeDefaultDescription
modelMODELThe diffusion model to apply LoRAs to.
lora_countINT31–10Number of LoRA slots to process.
cpu_offloadCOMBOdisableCPU offload setting. 'auto' enables offload when VRAM is low, 'enable' forces offload, 'disable' disables offload.
lora_name_1COMBOThe file name of LoRA 1. Select 'None' to skip this slot.
lora_strength_1FLOAT1.00-100–100Strength for LoRA 1.
lora_name_2COMBOThe file name of LoRA 2. Select 'None' to skip this slot.
lora_strength_2FLOAT1.00-100–100Strength for LoRA 2.
lora_name_3COMBOThe file name of LoRA 3. Select 'None' to skip this slot.
lora_strength_3FLOAT1.00-100–100Strength for LoRA 3.
lora_name_4COMBOThe file name of LoRA 4. Select 'None' to skip this slot.
lora_strength_4FLOAT1.00-100–100Strength for LoRA 4.
lora_name_5COMBOThe file name of LoRA 5. Select 'None' to skip this slot.
lora_strength_5FLOAT1.00-100–100Strength for LoRA 5.
lora_name_6COMBOThe file name of LoRA 6. Select 'None' to skip this slot.
lora_strength_6FLOAT1.00-100–100Strength for LoRA 6.
lora_name_7COMBOThe file name of LoRA 7. Select 'None' to skip this slot.
lora_strength_7FLOAT1.00-100–100Strength for LoRA 7.
lora_name_8COMBOThe file name of LoRA 8. Select 'None' to skip this slot.
lora_strength_8FLOAT1.00-100–100Strength for LoRA 8.
lora_name_9COMBOThe file name of LoRA 9. Select 'None' to skip this slot.
lora_strength_9FLOAT1.00-100–100Strength for LoRA 9.
lora_name_10COMBOThe file name of LoRA 10. Select 'None' to skip this slot.
lora_strength_10FLOAT1.00-100–100Strength for LoRA 10.

Outputs (1)

NameTypeDescription
MODELMODELThe modified diffusion model with all LoRAs applied.