Nodes/ComfyUI_JosiaNodes/JosiaLoRA堆叠
ComfyUI Node

JosiaLoRA堆叠

Stack ten LoRAs in order without a wall of LoraLoader nodes

By Josia-doit·Created 6 months ago·Updated a day ago· 16
JosiaLoRA堆叠
  • model
  • clip
  • 模型
  • CLIP
total_switchtrue
cpu_offloadfalse
lora_count1
lora_name_1None
lora_switch_1true
strength_model_10.80
strength_clip_10.00
lora_name_2None
lora_switch_2true
strength_model_20.80
strength_clip_20.00
lora_name_3None
lora_switch_3true
strength_model_30.80
strength_clip_30.00
lora_name_4None
lora_switch_4true
strength_model_40.80
strength_clip_40.00
lora_name_5None
lora_switch_5true
strength_model_50.80
strength_clip_50.00
lora_name_6None
lora_switch_6true
strength_model_60.80
strength_clip_60.00
lora_name_7None
lora_switch_7true
strength_model_70.80
strength_clip_70.00
lora_name_8None
lora_switch_8true
strength_model_80.80
strength_clip_80.00
lora_name_9None
lora_switch_9true
strength_model_90.80
strength_clip_90.00
lora_name_10None
lora_switch_10true
strength_model_100.80
strength_clip_100.00

JosiaLoraStack (JosiaLoRA堆叠) is the "stop chaining ten LoraLoader nodes end-to-end" fix. A single node that takes your MODEL, applies up to ten LoRAs in sequence, and hands you the model - and CLIP if you feed one in - back out. If you've ever built a style-heavy workflow with four or five LoRAs chained, you know the fiddly part isn't the LoRAs, it's the wiring and the forgetting-which-strength-was-where. This collapses all of it into one panel.

How it works

On the Python side it's a real loader, not a placeholder: it reads the loras folder list, then on run it walks the enabled groups in order and calls comfy.sd.load_lora_for_models for each - the exact same machinery a stock LoraLoader uses - threading the result into the next group. Order matters, and this node preserves it: group 1 applies first, group 10 last, so stacking order is explicit instead of emergent from your wire layout.

The controls worth knowing:

  • total_switch (总控开关) - off, and model/CLIP pass through completely untouched. The master mute for the whole stack.
  • cpu_offload (内存加载) - load LoRA weights into system RAM instead of VRAM. Default off; flip it when VRAM is the constraint. It's the same trade-off every offloading option makes: slower loads, fatter memory, leaner VRAM.
  • lora_count - how many of the 10 groups are active, set with the arrow buttons or dropdown. Shrink it and the hidden groups keep their settings, so you can toggle group count without losing your configuration.
  • Per group: lora_name_X (pick from the searchable list), lora_switch_X (enable that group), strength_model_X and strength_clip_X (defaults 0.8 / 0.0). The frontend has a sync toggle that locks model and CLIP strength together.

Inputs and outputs

model (required, MODEL) in; clip (optional, CLIP) in. Out: 模型 (MODEL) and CLIP. That's the whole contract - it sits exactly where a LoraLoader would sit, between the checkpoint and the sampler. If you don't feed it a CLIP, it just doesn't touch one.

Install

Zero extra Python dependencies - the pack runs on ComfyUI built-ins:

cd ComfyUI/custom_nodes
git clone https://github.com/Josia-doit/ComfyUI_JosiaNodes

or install via ComfyUI Manager (search ComfyUI_JosiaNodes), then restart. It lives under the Josia category. The strength sliders and group toggles are frontend JS, so keep web/js intact.

Honest notes

The comparison that matters is rgthree's Power Lora Loader - the incumbent everyone actually reaches for, and the one the KB's ecosystem essay names as the community favorite (it also reads trigger words off the files). Josia's version is a perfectly solid alternative: same stacking mechanic, native sliders, Chinese UI. Where it trails is ecosystem: rgthree's is referenced in hundreds of threads and has a smoother trigger-word workflow; Josia's is a niche pack that does the job without the extras. If you're already inside the JosiaNodes pack and just want your LoRAs stacked, this is convenient. If you're choosing a LoRA stack from scratch, honestly start with rgthree. And whichever you use - stacking ten LoRAs at 0.8 each is a great way to make a muddy image; the strength defaults exist so you can turn them down, not because they're right.

Category⚡️JosiaNodes

Inputs (45)

NameTypeDefaultDescription
modelMODEL
total_switchBOOLEANtrue
cpu_offloadBOOLEANfalse
lora_countINT11–10
lora_name_1COMBONone1 options: None
lora_switch_1BOOLEANtrue
strength_model_1FLOAT0.80-10–10
strength_clip_1FLOAT0.00-10–10
lora_name_2COMBONone1 options: None
lora_switch_2BOOLEANtrue
strength_model_2FLOAT0.80-10–10
strength_clip_2FLOAT0.00-10–10
lora_name_3COMBONone1 options: None
lora_switch_3BOOLEANtrue
strength_model_3FLOAT0.80-10–10
strength_clip_3FLOAT0.00-10–10
lora_name_4COMBONone1 options: None
lora_switch_4BOOLEANtrue
strength_model_4FLOAT0.80-10–10
strength_clip_4FLOAT0.00-10–10
lora_name_5COMBONone1 options: None
lora_switch_5BOOLEANtrue
strength_model_5FLOAT0.80-10–10
strength_clip_5FLOAT0.00-10–10
lora_name_6COMBONone1 options: None
lora_switch_6BOOLEANtrue
strength_model_6FLOAT0.80-10–10
strength_clip_6FLOAT0.00-10–10
lora_name_7COMBONone1 options: None
lora_switch_7BOOLEANtrue
strength_model_7FLOAT0.80-10–10
strength_clip_7FLOAT0.00-10–10
lora_name_8COMBONone1 options: None
lora_switch_8BOOLEANtrue
strength_model_8FLOAT0.80-10–10
strength_clip_8FLOAT0.00-10–10
lora_name_9COMBONone1 options: None
lora_switch_9BOOLEANtrue
strength_model_9FLOAT0.80-10–10
strength_clip_9FLOAT0.00-10–10
lora_name_10COMBONone1 options: None
lora_switch_10BOOLEANtrue
strength_model_10FLOAT0.80-10–10
strength_clip_10FLOAT0.00-10–10
clipoptCLIP

Outputs (2)

NameTypeDescription
模型MODEL
CLIPCLIP