Nodes/comfyui-zimage-sdnq/ZImage SDNQ LoRA Apply
ComfyUI Node

ZImage SDNQ LoRA Apply

Attaching Z-Image LoRAs without ever reloading the model

By GeneralShan·Created 8 months ago·Updated 5 months ago· 1
ZImage SDNQ LoRA Apply
  • pipeline
  • pipeline
lora_name<manual>
strength1.00
enabledtrue
replace_existingtrue
lora_source_custom

In this pack, a LoRA isn't applied at sampling time like a classic ComfyUI LoraLoader feeding a model checkpoint. It's attached live to the already-loaded pipeline. ZImageSDNQLoRAApply takes a pipeline from ZImageSDNQPipelineLoader, splices a LoRA into it, and hands the same pipeline back - no reload, no VRAM spike, instant toggling between runs. That's genuinely the nicest part of this pack's design once you've got a quantized model loaded and don't want to spend a minute reloading it every time you swap a style.

Z-Image's LoRA ecosystem is young but moving fast. Because Turbo was released first and the community started training on day one, most of the LoRAs on CivitAI for this model are Turbo-targeted, and they range from excellent (it's genuinely one of the easier models to train) to rough. Base-trained LoRAs exist too, with the caveat that they often need strength 2.0+ when applied to Turbo. Keep that mismatch in the back of your head - this node gives you the strength range to handle it.

The inputs that matter

  • lora_name - a dropdown of .safetensors files under models/loras/, defaulting to <manual>. Use lora_source_custom to point at a file the scanner missed or a path outside the folder.
  • strength - default 1.0, range −5 to 5. Negative strengths subtract the LoRA's effect, which is occasionally useful for debiasing a style. The classic move for base-trained LoRAs on Turbo is to push this toward 2.0.
  • enabled (default true) - flip to false and the node becomes a pass-through with the LoRA zeroed. Great for A/B testing a LoRA without rebuilding the graph.
  • replace_existing (default true) - this one's the pack-specific gotcha. It controls whether this LoRA node replaces whatever LoRA was previously attached to this pipeline slot, or stacks on top. Because attachment state persists per node across the session, replace_existing=true stops a stale LoRA from a previous run leaking into your current one. If you ever see output that's clearly wearing a LoRA you already removed from the graph, this flag is why.

The output is a pipeline - same type as the input - which feeds straight into ZImageSDNQSamplerT2I, ZImageSDNQSamplerI2I, or another LoRA node.

The honest limits

Multi-LoRA stacking is where Z-Image gets you. The community consensus is blunt: more than one LoRA at a time tends to collapse quality, and stacking characters + styles is the classic failure. LoKR-format LoRAs are the partial exception. So don't treat replace_existing=false as a license to stack three LoRAs and expect magic - it's more useful as "this workflow legitimately needs a concept on top of a character, and I've accepted the trade."

Install

Standard for this pack - Manager (search "Z-Image SDNQ") or:

cd ComfyUI/custom_nodes
git clone https://github.com/GeneralShan/comfyui-zimage-sdnq

restart, and make sure the required diffusers and sdnq packages are present (pip install sdnq diffusers). No extra deps for LoRA use specifically. Drop your LoRAs in models/loras/ and they appear in the dropdown. If a freshly downloaded LoRA doesn't show up, restart ComfyUI so the catalog rescans - the node reads the folder at load time.

CategoryZImage SDNQ/LoRA

Inputs (6)

NameTypeDefaultDescription
pipelineZIMAGE_PIPELINE
lora_nameCOMBO<manual>LoRA file from models/loras. Use <manual> to provide a custom path.
strengthFLOAT1.00-5–5
enabledBOOLEANtrue
replace_existingBOOLEANtrue
lora_source_customoptSTRINGOverrides lora_name when set.

Outputs (1)

NameTypeDescription
pipelineZIMAGE_PIPELINE