Nodes/AAA Metadata System/Multi-LoRA Loader (Flux)
ComfyUI Node

Multi-LoRA Loader (Flux)

Eight Flux LoRAs at once, with trigger words handled for you

By EricRollei·Created 10 months ago·Updated 9 months ago· 13
Multi-LoRA Loader (Flux)
  • model
  • clip
  • model
  • clip
  • prompt
  • prompt_with_triggers
  • loaded_loras_info
  • all_trigger_words
  • filter_info
  • filtered_loras_list
prompt
search_filename
search_categoryAny
search_trigger_word
min_rating0
refresh_listsfalse
query_civitaifalse
force_civitai_fetchfalse
trigger_positionfront
trigger_separator,
lora_1_enablefalse
lora_1_nameNone
lora_1_strength0.80
lora_1_clip_strength1.00
lora_2_enablefalse
lora_2_nameNone
lora_2_strength0.80
lora_2_clip_strength1.00
lora_3_enablefalse
lora_3_nameNone
lora_3_strength0.80
lora_3_clip_strength1.00
lora_4_enablefalse
lora_4_nameNone
lora_4_strength0.80
lora_4_clip_strength1.00
lora_5_enablefalse
lora_5_nameNone
lora_5_strength0.80
lora_5_clip_strength1.00
lora_6_enablefalse
lora_6_nameNone
lora_6_strength0.80
lora_6_clip_strength1.00
lora_7_enablefalse
lora_7_nameNone
lora_7_strength0.80
lora_7_clip_strength1.00
lora_8_enablefalse
lora_8_nameNone
lora_8_strength0.80
lora_8_clip_strength1.00

Stacking LoRAs in ComfyUI means chaining LoraLoaderModelOnly nodes end to end - one per LoRA, each with its own strength. Run three or four at once and your graph starts looking like a ladder. This node does the chaining for you: one box, up to eight LoRA slots, each with its own model strength and CLIP strength, plus search filters and automatic trigger-word injection on top.

Multi-LoRA Loader (Flux) is the Flux-specific member of the AAA Metadata System pack's loader family. It's built for the FLUX.1 / Flux 2 line: it takes a model and a clip (Flux needs the CLIP for prompt encoding, unlike the video loaders in the same pack), applies up to eight LoRAs, and hands back the patched model, clip and prompt.

How it works

The loader scans your LoRA folders and filters down to the Flux subdirectory - it's hardcoded to look under something like Lora\Flux in your models folder. That's the catch baked into the whole family: it assumes you keep platform LoRAs in named subfolders. If your Flux LoRAs are scattered loose in the root LoRA directory, this node's dropdown will be empty until you sort them into a Flux folder.

Each of the eight slots (lora_1_enable through lora_8_clip_strength) is an independent enable/name/strength trio. Enable the slot, pick the LoRA from the dropdown, set model strength and CLIP strength. It then calls ComfyUI's normal load_lora_for_models under the hood, in order, so you can chain eight without a single extra node.

The interesting part is the metadata layer. The pack ships a local database (lora_tester_db.json) of LoRA categories, quality ratings and trigger words, and it can fetch trigger words from the Civitai API when it doesn't have them. Turn on query_civitai (and force_civitai_fetch if you want to ignore the cache), and the loader will prepend or append each LoRA's trigger word to your prompt automatically. search_trigger_word filters by those same words, min_rating filters by the DB's 0–5 rating, and search_filename does a comma-separated substring match on filenames.

Outputs

The useful ones for a beginner:

  • model and clip - wire these into your sampler/conditioning, exactly like a chained LoraLoader.
  • prompt_with_triggers - your original prompt with trigger words injected (position and separator controlled by trigger_position and trigger_separator). Feed this to your text encoder.
  • filter_info / filtered_loras_list - text reports of what the filters actually selected, for when the dropdown and the filter fields seem to disagree.
  • prompt, all_trigger_words, loaded_loras_info - your raw prompt back, every trigger word found, and per-LoRA load details.

Installing it

cd ComfyUI/custom_nodes
git clone https://github.com/EricRollei/AAA_Metadata_System.git
cd AAA_Metadata_System
pip install -r requirements.txt

Restart ComfyUI, or search "AAA Metadata System" in ComfyUI Manager. No models to download; the pack is CC BY-NC licensed (commercial use needs a paid license from the author).

Common issues

  • Empty LoRA dropdown - your Flux LoRAs aren't in a Flux subfolder. Fix the folder layout, then toggle refresh_lists (or restart) to rescan.
  • Filter fields don't change the dropdown - by design. The dropdown is built at node-creation time; the search filters run at execution and report in filter_info. Toggle refresh_lists to rescan.
  • No trigger words injected - the DB has no entry and query_civitai is off. Either enable it (needs internet) or set the trigger manually in your prompt.
  • Wrong-strength defaults - note the Flux loader defaults model strength to 0.8, not 1.0, which is a sensible Flux habit. Check each slot before running.

One honest caveat: LoRAs are architecture-locked, so this node only makes sense for Flux models - and the author's directory assumption is the real friction point. Sort your folders once and it's a genuinely pleasant way to stack LoRAs.

Categoryloaders/multi-lora/flux

Inputs (44)

NameTypeDefaultDescription
modelMODEL
clipCLIP
promptSTRING
search_filenameSTRINGSearch in LoRA filenames. Use commas to separate multiple terms.
search_categoryCOMBOAnyFilter by LoRA category
search_trigger_wordSTRINGSearch in trigger words from database.
min_ratingINT00–5Minimum quality rating from database (0 = show all)
refresh_listsBOOLEANfalseToggle to refresh LoRA list
query_civitaiBOOLEANfalseAutomatically query Civitai for trigger words
force_civitai_fetchBOOLEANfalseForce fetch from Civitai even if tags exist
trigger_positionCOMBOfront2 options: front, back
trigger_separatorSTRING,
lora_1_enableBOOLEANfalse
lora_1_nameCOMBONone1 options: None
lora_1_strengthFLOAT0.80-10–10
lora_1_clip_strengthFLOAT1.00-10–10
lora_2_enableBOOLEANfalse
lora_2_nameCOMBONone1 options: None
lora_2_strengthFLOAT0.80-10–10
lora_2_clip_strengthFLOAT1.00-10–10
lora_3_enableBOOLEANfalse
lora_3_nameCOMBONone1 options: None
lora_3_strengthFLOAT0.80-10–10
lora_3_clip_strengthFLOAT1.00-10–10
lora_4_enableBOOLEANfalse
lora_4_nameCOMBONone1 options: None
lora_4_strengthFLOAT0.80-10–10
lora_4_clip_strengthFLOAT1.00-10–10
lora_5_enableBOOLEANfalse
lora_5_nameCOMBONone1 options: None
lora_5_strengthFLOAT0.80-10–10
lora_5_clip_strengthFLOAT1.00-10–10
lora_6_enableBOOLEANfalse
lora_6_nameCOMBONone1 options: None
lora_6_strengthFLOAT0.80-10–10
lora_6_clip_strengthFLOAT1.00-10–10
lora_7_enableBOOLEANfalse
lora_7_nameCOMBONone1 options: None
lora_7_strengthFLOAT0.80-10–10
lora_7_clip_strengthFLOAT1.00-10–10
lora_8_enableBOOLEANfalse
lora_8_nameCOMBONone1 options: None
lora_8_strengthFLOAT0.80-10–10
lora_8_clip_strengthFLOAT1.00-10–10

Outputs (8)

NameTypeDescription
modelMODEL
clipCLIP
promptSTRING
prompt_with_triggersSTRING
loaded_loras_infoSTRING
all_trigger_wordsSTRING
filter_infoSTRING
filtered_loras_listSTRING