LoraFcKingLoader
One Node, Five LoRAs, Zero Stacking Headaches
- model
- clip
- MODEL
- CLIP
ComfyUI's core LoraLoader does one LoRA at a time. If you run three at once - which is most real workflows - you chain three LoraLoader nodes in a row, each with its own strength sliders, and the graph gets tall and noisy. LoraFcKingLoader is a stacked multi-LoRA loader from the babydjacNODES pack: one node, up to five LoRAs, per-slot strengths, applied in slot order, with the same MODEL + CLIP outputs you'd get from the chain.
The name is a vibe check - the pack is one person's opinionated utility set - but the node itself is solidly built.
How it works
You feed in a base model and clip (from your checkpoint loader), pick a lora_count (1–5), and each slot has enabled, lora_name, strength_model, and strength_clip. It applies the enabled slots in order through ComfyUI's own comfy.sd.load_lora_for_models, so the math is exactly what the core loader does - no magic, no fork.
Two implementation details make it nicer than a manual chain:
- Weights are cached. Each LoRA file is loaded into memory once (
load_torch_filewith a per-path cache) instead of re-reading from disk on every queue. If you test a lot of LoRA combos, this is a real speed-up. - The UI hides unused slots. A JavaScript extension collapses disabled slots so a 2-LoRA workflow doesn't show you five empty rows.
Order matters, same as chaining loaders: if two LoRAs touch overlapping concepts, the later slot's strength wins the tug-of-war. strength_model and strength_clip can both go negative (-100 to 100) - negative CLIP strength is occasionally useful, negative model strength is a style toy.
The inputs that matter
- model / clip - required inputs from your checkpoint loader.
- lora_count - the number of slots to use (1–5).
- lora_name_N / strength_model_N / strength_clip_N - per slot. The
enabled_Ncheckbox lets you park a LoRA in a slot and toggle it without losing the path. - A note on Flux: Flux LoRAs often only move
strength_model- the CLIP half is T5, and many Flux LoRAs don't touch it. Settingstrength_clipto 0 on a Flux LoRA isn't a bug.
Outputs: MODEL and CLIP, wired into your sampler/encoder exactly like a normal LoraLoader output.
Install
ComfyUI Manager → babydjacNODES, or git clone https://github.com/babydjac/babydjacNODES into ComfyUI/custom_nodes. Restart ComfyUI and hard-refresh the browser (the slot-hiding UI is JS). No extra pip deps.
Gotchas
- Slots apply in fixed order 1→5, skipping disabled ones. If you want LoRA B applied before LoRA A, move B into a lower slot - the node won't reorder for you.
- Zero-strength slots are skipped, which is nice, but so are "None" names - so a slot you thought was active might silently not apply. The enabled checkbox is the one to trust.
- Cache note: the in-memory LoRA cache means hot-reloading a LoRA file you just edited on disk won't pick up the change until you restart ComfyUI. Keep that in mind when iterating on a training job.
For anyone who lives in multi-LoRA territory - style + character + detail at once - this replaces a wall of chained loaders with one tidy node. It's the pack's best "removes friction" play.
Inputs (23)
| Name | Type | Default | Description |
|---|---|---|---|
| model | MODEL | Base diffusion model. | |
| clip | CLIP | Base CLIP model. | |
| lora_count | INT | 11–5 | — |
| enabled_1 | BOOLEAN | true | — |
| lora_name_1 | COMBO | None | 1 options: None |
| strength_model_1 | FLOAT | 1.00-100–100 | — |
| strength_clip_1 | FLOAT | 1.00-100–100 | — |
| enabled_2 | BOOLEAN | false | — |
| lora_name_2 | COMBO | None | 1 options: None |
| strength_model_2 | FLOAT | 1.00-100–100 | — |
| strength_clip_2 | FLOAT | 1.00-100–100 | — |
| enabled_3 | BOOLEAN | false | — |
| lora_name_3 | COMBO | None | 1 options: None |
| strength_model_3 | FLOAT | 1.00-100–100 | — |
| strength_clip_3 | FLOAT | 1.00-100–100 | — |
| enabled_4 | BOOLEAN | false | — |
| lora_name_4 | COMBO | None | 1 options: None |
| strength_model_4 | FLOAT | 1.00-100–100 | — |
| strength_clip_4 | FLOAT | 1.00-100–100 | — |
| enabled_5 | BOOLEAN | false | — |
| lora_name_5 | COMBO | None | 1 options: None |
| strength_model_5 | FLOAT | 1.00-100–100 | — |
| strength_clip_5 | FLOAT | 1.00-100–100 | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| MODEL | MODEL | — |
| CLIP | CLIP | — |