EasyLoraStack
Stack up to 10 LoRAs in one node, toggle the lot
- optional_lora_stack
- lora_stack
Chaining LoRA loaders one after another gets ugly fast - five LoRAs means five nodes and ten wires. easy loraStack collapses that into a single node: pick up to 10 LoRAs, set each one's strength, and it outputs one tidy LORA_STACK you apply in one place. There's a master toggle to switch the whole stack on and off without unplugging anything, and you can chain stacks together. If you run more than a LoRA or two, this is the node that keeps your graph readable.
Why stack LoRAs at all
A LoRA is a small adapter that patches a checkpoint to add a character, style, or concept without a full fine-tune, and mixing a few is standard practice - a style LoRA plus a character LoRA plus a detail LoRA, each dialed to taste. The catch everyone learns once: LoRAs are architecture-bound. An SDXL LoRA does nothing on Flux, and even Pony, Illustrious and vanilla SDXL LoRAs cross over unreliably despite sharing plumbing. So every LoRA in one stack should target the same base model. Get that wrong and you don't get an error so much as an image that just ignores the LoRA.
The inputs and outputs that matter
toggle- the master on/off for the whole stack. Flip it off to A/B "with vs. without LoRAs" in one click.mode-simplegives each LoRA a single strength;advancedsplits it into separate model and clip strengths, for when you want the visual effect without dragging the LoRA's trigger words into your prompt (or vice versa).num_loras- how many LoRA slots to show (1–10). The node grows to match.lora_N_nameandlora_N_strength(pluslora_N_model_strength/lora_N_clip_strengthin advanced mode) - pick the file and set the weight per slot.
Optional optional_lora_stack lets you feed in another stack to extend it - that's how you go past 10 or combine stacks from different parts of your graph. The single output is lora_stack (LORA_STACK), which you feed into a stack-applier (like easy loraStackApply) or an Easy-Use loader that accepts a stack. Note this node builds the stack; it doesn't patch your model by itself - applying it is a separate step.
Installing it
Ships with the pack. Install ComfyUI-Easy-Use via ComfyUI Manager (search ComfyUI Easy Use, restart) or:
cd ComfyUI/custom_nodes
git clone https://github.com/yolain/ComfyUI-Easy-Use
Install requirements, restart. It reads whatever LoRAs are already in your models/loras folder.
Where it bites
On strength: the old 0.5–0.8 rule of thumb is SDXL-era advice and doesn't travel. Stacking several LoRAs near 1.0 stomps on each other and blows out the image - pull each one down when you combine them. On newer bases the numbers flip; on Z-Image, for instance, people run 1.0 and above because dropping it costs the likeness. So don't copy strengths across architectures; tune per base.
The other trap is forgetting the stack does nothing until it's applied. If your LoRAs seem to have no effect, check that the lora_stack output is actually feeding an applier or a loader - a stack that outputs into thin air is the most common "why isn't my LoRA working" here. And keep every LoRA in the stack on the same base model; mixed architectures are the quiet failure that eats an afternoon.
Inputs (44)
| Name | Type | Default | Description |
|---|---|---|---|
| toggle | BOOLEAN | — | |
| mode | COMBO | 2 options: simple, advanced | |
| num_loras | INT | 11–10 | — |
| optional_lora_stackopt | LORA_STACK | — | |
| lora_1_nameopt | COMBO | None | 1 options: None |
| lora_1_strengthopt | FLOAT | 1.00-10–10 | — |
| lora_1_model_strengthopt | FLOAT | 1.00-10–10 | — |
| lora_1_clip_strengthopt | FLOAT | 1.00-10–10 | — |
| lora_2_nameopt | COMBO | None | 1 options: None |
| lora_2_strengthopt | FLOAT | 1.00-10–10 | — |
| lora_2_model_strengthopt | FLOAT | 1.00-10–10 | — |
| lora_2_clip_strengthopt | FLOAT | 1.00-10–10 | — |
| lora_3_nameopt | COMBO | None | 1 options: None |
| lora_3_strengthopt | FLOAT | 1.00-10–10 | — |
| lora_3_model_strengthopt | FLOAT | 1.00-10–10 | — |
| lora_3_clip_strengthopt | FLOAT | 1.00-10–10 | — |
| lora_4_nameopt | COMBO | None | 1 options: None |
| lora_4_strengthopt | FLOAT | 1.00-10–10 | — |
| lora_4_model_strengthopt | FLOAT | 1.00-10–10 | — |
| lora_4_clip_strengthopt | FLOAT | 1.00-10–10 | — |
| lora_5_nameopt | COMBO | None | 1 options: None |
| lora_5_strengthopt | FLOAT | 1.00-10–10 | — |
| lora_5_model_strengthopt | FLOAT | 1.00-10–10 | — |
| lora_5_clip_strengthopt | FLOAT | 1.00-10–10 | — |
| lora_6_nameopt | COMBO | None | 1 options: None |
| lora_6_strengthopt | FLOAT | 1.00-10–10 | — |
| lora_6_model_strengthopt | FLOAT | 1.00-10–10 | — |
| lora_6_clip_strengthopt | FLOAT | 1.00-10–10 | — |
| lora_7_nameopt | COMBO | None | 1 options: None |
| lora_7_strengthopt | FLOAT | 1.00-10–10 | — |
| lora_7_model_strengthopt | FLOAT | 1.00-10–10 | — |
| lora_7_clip_strengthopt | FLOAT | 1.00-10–10 | — |
| lora_8_nameopt | COMBO | None | 1 options: None |
| lora_8_strengthopt | FLOAT | 1.00-10–10 | — |
| lora_8_model_strengthopt | FLOAT | 1.00-10–10 | — |
| lora_8_clip_strengthopt | FLOAT | 1.00-10–10 | — |
| lora_9_nameopt | COMBO | None | 1 options: None |
| lora_9_strengthopt | FLOAT | 1.00-10–10 | — |
| lora_9_model_strengthopt | FLOAT | 1.00-10–10 | — |
| lora_9_clip_strengthopt | FLOAT | 1.00-10–10 | — |
| lora_10_nameopt | COMBO | None | 1 options: None |
| lora_10_strengthopt | FLOAT | 1.00-10–10 | — |
| lora_10_model_strengthopt | FLOAT | 1.00-10–10 | — |
| lora_10_clip_strengthopt | FLOAT | 1.00-10–10 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| lora_stack | LORA_STACK | — |