Multi-LoRA Loader (Z-Image)
Z-Image LoRAs, four at a time, triggers included
- model
- clip
- model
- clip
- prompt
- prompt_with_triggers
- loaded_loras_info
Z-Image is the 6B model that made near-Flux quality run on 12GB cards, and its LoRA ecosystem exploded fast - partly because Base released with real seed diversity, partly because it's small enough that fine-tunes are cheap. If you've stacked a few Z-Image LoRAs, you already know the drill: chained loader nodes, one per LoRA. This node does the chaining for the Z-Image case specifically.
Multi-LoRA Loader (Z-Image) is the Z-Image member of the AAA Metadata System pack's loader family, and it's the trimmed-down one: four slots instead of eight, named lora_1 through lora_4, each with its own strength_N and clip_strength_N. It takes model and clip (Z-Image routes text through a Qwen3 text encoder, but ComfyUI's Z-Image support still hands you a CLIP object to patch), applies the LoRAs, and returns the patched pair plus a trigger-word-aware prompt.
How it works
Same base engine as the other loaders, with a directory filter pinned to a Z_Image subfolder - the source scans Lora\Z_Image under your LoRA path. So yes, folder layout matters again: Z-Image LoRAs in the root directory won't show up. Sort them into a Z_Image folder and the dropdown fills itself with exactly your Z-Image collection.
The four slots take a name plus model strength and CLIP strength each. That CLIP strength matters on Z-Image: its text encoder is a real language model, and as with any LoRA that touches the text side, dialing clip strength down is often the difference between "style applied" and "prompt ignored."
The search toolbox is deliberately smaller than the general loaders - just the trigger machinery, because the node assumes the directory already did the filtering for you. query_civitai fetches trigger words from the Civitai API when the pack's local LoRA database has none; trigger_position (front/back) and trigger_separator control how the words get injected into prompt_with_triggers.
Outputs
modelandclip- both patched, into your sampler and conditioning.prompt_with_triggers- your prompt with trigger words injected.prompt- your original prompt, passed through.loaded_loras_info- a per-LoRA summary of what got loaded.
Installing it
cd ComfyUI/custom_nodes
git clone https://github.com/EricRollei/AAA_Metadata_System.git
cd AAA_Metadata_System
pip install -r requirements.txt
Restart ComfyUI, or install "AAA Metadata System" via ComfyUI Manager. No model downloads. License: CC BY-NC for non-commercial use; commercial use needs a paid license from the author.
Common issues
- Empty dropdown - Z-Image LoRAs not in the
Z_Imagesubfolder. Fix the layout; the loader rescans when you reconnect or restart. - No
force_civitai_fetchfield - right, this node doesn't have it.query_civitaiis the only Civitai toggle here, so if you already fetched and the result is stale, clear the pack'scivitai_cache.jsonor check back later. - Trigger words missing - DB entry absent and
query_civitaioff. Enable it (needs internet) or type the trigger manually. - Four slots isn't enough - that's the design; if you habitually stack more than four Z-Image LoRAs, the general Model-Only loader in the same pack is the escape hatch.
Z-Image LoRA culture is young and moving fast, so trigger words change as creators update cards - run query_civitai on a fresh download. Four slots, tidy folder, and this becomes the node you stop thinking about.
Inputs (18)
| Name | Type | Default | Description |
|---|---|---|---|
| model | MODEL | — | |
| clip | CLIP | — | |
| prompt | STRING | — | |
| lora_1 | COMBO | None | First LoRA to load |
| strength_1 | FLOAT | 1.00-10–10 | — |
| clip_strength_1 | FLOAT | 1.00-10–10 | — |
| lora_2 | COMBO | None | Second LoRA to load |
| strength_2 | FLOAT | 1.00-10–10 | — |
| clip_strength_2 | FLOAT | 1.00-10–10 | — |
| lora_3 | COMBO | None | Third LoRA to load |
| strength_3 | FLOAT | 1.00-10–10 | — |
| clip_strength_3 | FLOAT | 1.00-10–10 | — |
| lora_4 | COMBO | None | Fourth LoRA to load |
| strength_4 | FLOAT | 1.00-10–10 | — |
| clip_strength_4 | FLOAT | 1.00-10–10 | — |
| trigger_position | COMBO | front | 2 options: front, back |
| trigger_separator | STRING | , | — |
| query_civitai | BOOLEAN | false | Automatically query Civitai for trigger words |
Outputs (5)
| Name | Type | Description |
|---|---|---|
| model | MODEL | — |
| clip | CLIP | — |
| prompt | STRING | — |
| prompt_with_triggers | STRING | — |
| loaded_loras_info | STRING | — |