Nodes/ComfyUI FRED Nodes v2/πŸ‘‘ FRED Auto Lora Loader Dynamic
ComfyUI Node

πŸ‘‘ FRED Auto Lora Loader Dynamic

Ten LoRAs, one loader, and it can switch them on from your prompt text

By PoukpalaovaΒ·Created about a year agoΒ·Updated 7 months agoΒ· 3
πŸ‘‘ FRED Auto Lora Loader Dynamic
  • model
  • optional_clip
  • model
  • clip
  • showhelp
β—„toggleβ€”β–Ί
β—„modeβ–Ύβ–Ί
β—„num_loras1β–Ί
β—„text_promptβ€”β–Ί
β—„switch_1offβ–Ί
β—„search_word_1β–Ί
β—„lora_name_1Noneβ–Ί
β—„lora_strength_11.00β–Ί
β—„lora_model_strength_11.00β–Ί
β—„lora_clip_strength_11.00β–Ί
β—„switch_2offβ–Ί
β—„search_word_2β–Ί
β—„lora_name_2Noneβ–Ί
β—„lora_strength_21.00β–Ί
β—„lora_model_strength_21.00β–Ί
β—„lora_clip_strength_21.00β–Ί
β—„switch_3offβ–Ί
β—„search_word_3β–Ί
β—„lora_name_3Noneβ–Ί
β—„lora_strength_31.00β–Ί
β—„lora_model_strength_31.00β–Ί
β—„lora_clip_strength_31.00β–Ί
β—„switch_4offβ–Ί
β—„search_word_4β–Ί
β—„lora_name_4Noneβ–Ί
β—„lora_strength_41.00β–Ί
β—„lora_model_strength_41.00β–Ί
β—„lora_clip_strength_41.00β–Ί
β—„switch_5offβ–Ί
β—„search_word_5β–Ί
β—„lora_name_5Noneβ–Ί
β—„lora_strength_51.00β–Ί
β—„lora_model_strength_51.00β–Ί
β—„lora_clip_strength_51.00β–Ί
β—„switch_6offβ–Ί
β—„search_word_6β–Ί
β—„lora_name_6Noneβ–Ί
β—„lora_strength_61.00β–Ί
β—„lora_model_strength_61.00β–Ί
β—„lora_clip_strength_61.00β–Ί
β—„switch_7offβ–Ί
β—„search_word_7β–Ί
β—„lora_name_7Noneβ–Ί
β—„lora_strength_71.00β–Ί
β—„lora_model_strength_71.00β–Ί
β—„lora_clip_strength_71.00β–Ί
β—„switch_8offβ–Ί
β—„search_word_8β–Ί
β—„lora_name_8Noneβ–Ί
β—„lora_strength_81.00β–Ί
β—„lora_model_strength_81.00β–Ί
β—„lora_clip_strength_81.00β–Ί
β—„switch_9offβ–Ί
β—„search_word_9β–Ί
β—„lora_name_9Noneβ–Ί
β—„lora_strength_91.00β–Ί
β—„lora_model_strength_91.00β–Ί
β—„lora_clip_strength_91.00β–Ί
β—„switch_10offβ–Ί
β—„search_word_10β–Ί
β—„lora_name_10Noneβ–Ί
β—„lora_strength_101.00β–Ί
β—„lora_model_strength_101.00β–Ί
β—„lora_clip_strength_101.00β–Ί

The 5-stack simple loader is the easy sibling; this is the flexible one. FRED_AutoLoraLoader_Dynamic lets you dial in anywhere from 1 to 10 LoRA slots, in two flavors, with the same prompt-keyed auto-switching that makes the FRED LoRA family interesting. If you manage a stable of character or style LoRAs and don't want a separate node per LoRA, this is the one you'll reach for.

Simple vs advanced mode

The mode dropdown changes what each slot exposes:

  • simple - each slot has one lora_strength_1, applied to both the model and the CLIP. That's the "I just want it at weight 1.2" path, and it's all most people ever need.
  • advanced - each slot splits into lora_model_strength_1 and lora_clip_strength_1. Worth knowing the LoRA math here: some LoRAs are trained mostly on the text encoder side, some on the UNet/DiT side, and tuning the two independently is how you get a character identity to stick without the style bleeding. It's also the setting where a "good" LoRA goes wrong if you crank both to the max.

num_loras (1–10) sets how many slots actually render. Start small and grow - ten slots of widgets is a lot of screen real estate even if every slot is tiny.

The auto mode, again

Each slot has switch_1 in off / on / auto, a search_word_1, and a lora_name_1. In auto, the loader checks whether any comma-separated word in search_word_1 appears in the text_prompt you feed in - case-insensitive substring match. Hit, the LoRA activates at its configured strength; miss, it's skipped. There's also a master toggle to disable the entire stack.

The honest reading: this is prompt-driven routing without any API calls or magic. The magic is all in how you name your search words. Character LoRA keyed to the character's name, style LoRA keyed to a distinctive style keyword, and one workflow adapts to whatever you type.

Outputs

  • model and clip - the composed stack, ready for your sampler.
  • showhelp - a STRING with the usage card (the other nodes call it help; this one's named differently).

Note what it does not output: no per-slot names or weights, and no loras_infos blob. If you want the applied-LoRA metadata for filenames, that's what FRED_ExtractLora_parameter or the 5-stack loader is for. This node is the pure model-stacking workhorse.

Install and requirements

cd ComfyUI/custom_nodes
git clone https://github.com/Poukpalaova/ComfyUI-FRED-Nodes_v2.git

Restart, or install "ComfyUI FRED Nodes v2" via ComfyUI Manager. It internally uses ComfyUI's own LoraLoader, so it needs nothing beyond the pack's standard numpy/Pillow dependencies and your LoRAs sitting in models/loras.

Gotchas

Slots with lora_name left at "None" are silently skipped - that's fine, not an error. But watch the interaction of auto with a blank search_word: auto with nothing to match defaults to off, so if a LoRA mysteriously never applies, check you didn't leave the search word empty. And in advanced mode, remember that clip and model strength are independent; setting model 1.0 / clip 0.0 effectively turns the LoRA into a visual-only effect, which is occasionally exactly what you want.

CategoryπŸ‘‘FRED/models/loras

Inputs (66)

NameTypeDefaultDescription
modelMODELβ€”
toggleBOOLEANβ€”
modeCOMBO2 options: simple, advanced
num_lorasINT11–10β€”
optional_clipoptCLIPβ€”
text_promptoptSTRINGβ€”
switch_1optCOMBOoff3 options: auto, off, on
search_word_1optSTRINGβ€”
lora_name_1optCOMBONone1 options: None
lora_strength_1optFLOAT1.00-10–10β€”
lora_model_strength_1optFLOAT1.00-10–10β€”
lora_clip_strength_1optFLOAT1.00-10–10β€”
switch_2optCOMBOoff3 options: auto, off, on
search_word_2optSTRINGβ€”
lora_name_2optCOMBONone1 options: None
lora_strength_2optFLOAT1.00-10–10β€”
lora_model_strength_2optFLOAT1.00-10–10β€”
lora_clip_strength_2optFLOAT1.00-10–10β€”
switch_3optCOMBOoff3 options: auto, off, on
search_word_3optSTRINGβ€”
lora_name_3optCOMBONone1 options: None
lora_strength_3optFLOAT1.00-10–10β€”
lora_model_strength_3optFLOAT1.00-10–10β€”
lora_clip_strength_3optFLOAT1.00-10–10β€”
switch_4optCOMBOoff3 options: auto, off, on
search_word_4optSTRINGβ€”
lora_name_4optCOMBONone1 options: None
lora_strength_4optFLOAT1.00-10–10β€”
lora_model_strength_4optFLOAT1.00-10–10β€”
lora_clip_strength_4optFLOAT1.00-10–10β€”
switch_5optCOMBOoff3 options: auto, off, on
search_word_5optSTRINGβ€”
lora_name_5optCOMBONone1 options: None
lora_strength_5optFLOAT1.00-10–10β€”
lora_model_strength_5optFLOAT1.00-10–10β€”
lora_clip_strength_5optFLOAT1.00-10–10β€”
switch_6optCOMBOoff3 options: auto, off, on
search_word_6optSTRINGβ€”
lora_name_6optCOMBONone1 options: None
lora_strength_6optFLOAT1.00-10–10β€”
lora_model_strength_6optFLOAT1.00-10–10β€”
lora_clip_strength_6optFLOAT1.00-10–10β€”
switch_7optCOMBOoff3 options: auto, off, on
search_word_7optSTRINGβ€”
lora_name_7optCOMBONone1 options: None
lora_strength_7optFLOAT1.00-10–10β€”
lora_model_strength_7optFLOAT1.00-10–10β€”
lora_clip_strength_7optFLOAT1.00-10–10β€”
switch_8optCOMBOoff3 options: auto, off, on
search_word_8optSTRINGβ€”
lora_name_8optCOMBONone1 options: None
lora_strength_8optFLOAT1.00-10–10β€”
lora_model_strength_8optFLOAT1.00-10–10β€”
lora_clip_strength_8optFLOAT1.00-10–10β€”
switch_9optCOMBOoff3 options: auto, off, on
search_word_9optSTRINGβ€”
lora_name_9optCOMBONone1 options: None
lora_strength_9optFLOAT1.00-10–10β€”
lora_model_strength_9optFLOAT1.00-10–10β€”
lora_clip_strength_9optFLOAT1.00-10–10β€”
switch_10optCOMBOoff3 options: auto, off, on
search_word_10optSTRINGβ€”
lora_name_10optCOMBONone1 options: None
lora_strength_10optFLOAT1.00-10–10β€”
lora_model_strength_10optFLOAT1.00-10–10β€”
lora_clip_strength_10optFLOAT1.00-10–10β€”

Outputs (3)

NameTypeDescription
modelMODELβ€”
clipCLIPβ€”
showhelpSTRINGβ€”