Fantastic Lora Loader ๐
The Fantastic Lora Loader
- model
- clip
- model_2
- model_3
- model_4
- model_5
- MODEL
- CLIP
- lora_stack
- MODEL 2
- CLIP 2
- MODEL 3
- CLIP 3
- MODEL 4
- CLIP 4
- MODEL 5
- CLIP 5
The flagship of the Fantastic Loras pack, and the node that started it. The pitch is simple: instead of a daisy-chain of stock LoraLoader nodes - one per LoRA, each a separate drag - you get a single node with twelve slots, and each slot feeds up to five separate MODEL outputs at strengths you set per model. The author's launch post makes the origin story obvious: he'd collected hundreds of LoRAs into tidy subfolders and was sick of hunting for them. That's the whole vibe of this pack, and the loader is its most finished expression.
Why you'd reach for it
Three things it genuinely does that stock loaders and most stackers don't:
- Folder filtering. If your
lorasdirectory holds a folder per model or per style, the FOLDERS bar narrows the picker (and the randomizer) to just the folders you're working with. - Per-model strength. This is the split-model killer feature. Ideogram4 and Wan 2.2 run two model pipelines, and if a LoRA came as a paired high/low set you used to load it twice and keep both strengths in your head. Here you add a chain, toggle routing per model, and give each model its own strength - your detail LoRA at 1.0 on the base pass, 0.4 on the refiner, all in one slot's โ menu.
- Presets and a randomizer. Save a whole stack (LoRAs, order, strengths, folder filter, model count) to disk at
ComfyUI/user/fantastic-loras/presets/and reload or merge it later. Randomizer slots roll a different LoRA per queue, which is a surprisingly good way to rediscover your own collection.
How it actually works
The Python side is thin, which is why it's reliable. The whole stack lives as JSON in a hidden lora_data widget on the node - that's how it serializes into a workflow. At execution it parses that blob and applies each LoRA through ComfyUI's own comfy.sd.load_lora_for_models, the exact path the stock loader uses, with files cached per path. Each model chain gets an independent copy of the base model, so patching chain 2 never leaks into chain 1. It also emits a lora_stack output - a standard LORA_STACK list of (name, model_strength, clip_strength) tuples - which is how other nodes, including the pack's own Fantastic Lora Mimic, consume the same selection.
Inputs and outputs that matter
The required inputs are model and the hidden lora_data (managed entirely by the UI - ignore it). Two things a beginner actually sets:
clip(optional) - only connect it if your LoRAs carry text-encoder weights. For models where LoRAs touch only the diffusion model, leaving it unplugged is fine and it stays optional on every chain.model_2throughmodel_5(optional) - each one you connect activates an extra chain, giving you aMODEL 2/CLIP 2output pair (and so on up to 5).
Outputs are exactly what they say on the tin: MODEL, CLIP, lora_stack, then MODEL 2โMODEL 5 with their CLIP 2โCLIP 5 partners. Wire MODEL into your sampler and CLIP into your text encoder, same as any loader. One tip: the footer at the bottom of the node prints exactly what each model output will receive, in order - glance at it before queueing and you'll catch a misrouted LoRA without tracing wires.
Install
ComfyUI Manager is the easy path: Install Custom Nodes โ search "Fantastic Loras" โ Install โ restart. Manual:
cd ComfyUI/custom_nodes
git clone https://github.com/Adudeguyman/comfyui_fantastic-loras
Then restart ComfyUI and hard-refresh the browser (Ctrl+Shift+R). There are no Python dependencies - the pack ships with an empty requirements.txt, and that's a feature. Two ready-made workflows (including an Ideogram4 one) live in example_workflows/ if you want a working starting point.
Common issues
- A node renders blank or buttons do nothing. Your browser cached the old frontend code. Hard-refresh, and if that fails, restart ComfyUI - presets and favourites need the server routes that register at startup.
- Missing LoRA. A workflow referencing a deleted file still runs - the node skips it and prints a console note. A preset load will tell you what's gone.
- A new folder won't appear. Open the FOLDERS picker; it re-reads the disk on open, and an explicit selection needs the new folder ticked.
- v1 โ v2 upgrade. The old single-model loader is gone; swap it for this node and your LoRA list, strengths, and folder filter carry over. Browser-side favourites and theme don't migrate - re-star your regulars once.
One honest caveat: it's a young, fast-moving pack, and the author is transparent that it's partly "vibe coded" with an LLM. The loader itself is well-received and stable in practice, but treat newer features like the Mimic with more skepticism. For stacking and split-model work, this is the one I'd actually reach for.
Inputs (7)
| Name | Type | Default | Description |
|---|---|---|---|
| model | MODEL | โ | |
| lora_data | STRING | {} | Managed by the Fantastic Lora Loader UI. |
| clipopt | CLIP | โ | |
| model_2opt | MODEL | โ | |
| model_3opt | MODEL | โ | |
| model_4opt | MODEL | โ | |
| model_5opt | MODEL | โ |
Outputs (11)
| Name | Type | Description |
|---|---|---|
| MODEL | MODEL | โ |
| CLIP | CLIP | โ |
| lora_stack | LORA_STACK | โ |
| MODEL 2 | MODEL | โ |
| CLIP 2 | CLIP | โ |
| MODEL 3 | MODEL | โ |
| CLIP 3 | CLIP | โ |
| MODEL 4 | MODEL | โ |
| CLIP 4 | CLIP | โ |
| MODEL 5 | MODEL | โ |
| CLIP 5 | CLIP | โ |