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

Multi-LoRA Loader v02 (Filtered)

The filtered eight-slot LoRA stacker for CLIP models

By EricRollei·Created 11 months ago·Updated 10 months ago· 14
Multi-LoRA Loader v02 (Filtered)
  • model
  • clip
  • model
  • clip
  • prompt
  • prompt_with_triggers
  • loaded_loras_info
  • all_trigger_words
  • filter_info
  • filtered_loras_list
◄prompt►
◄search_directory►
◄search_filename►
◄search_categoryAny►
◄search_trigger_word►
◄filter_architectureAny►
◄min_rating0►
◄refresh_listsfalse►
◄query_civitaifalse►
◄force_civitai_fetchfalse►
◄trigger_positionfront►
◄trigger_separator, ►
◄lora_1_enablefalse►
◄lora_1_nameNone►
◄lora_1_strength1.00►
◄lora_1_clip_strength1.00►
◄lora_2_enablefalse►
◄lora_2_nameNone►
◄lora_2_strength1.00►
◄lora_2_clip_strength1.00►
◄lora_3_enablefalse►
◄lora_3_nameNone►
◄lora_3_strength1.00►
◄lora_3_clip_strength1.00►
◄lora_4_enablefalse►
◄lora_4_nameNone►
◄lora_4_strength1.00►
◄lora_4_clip_strength1.00►
◄lora_5_enablefalse►
◄lora_5_nameNone►
◄lora_5_strength1.00►
◄lora_5_clip_strength1.00►
◄lora_6_enablefalse►
◄lora_6_nameNone►
◄lora_6_strength1.00►
◄lora_6_clip_strength1.00►
◄lora_7_enablefalse►
◄lora_7_nameNone►
◄lora_7_strength1.00►
◄lora_7_clip_strength1.00►
◄lora_8_enablefalse►
◄lora_8_nameNone►
◄lora_8_strength1.00►
◄lora_8_clip_strength1.00►

If your model speaks CLIP - SD1.5, SDXL, Pony, Illustrious, that whole world - and you want to stack LoRAs with real filtering, this is the loader to grab. Multi-LoRA Loader v02 (Filtered) is the CLIP-aware generalist of the AAA Metadata System pack: one node, a model plus a clip in, up to eight LoRAs applied with separate model and CLIP strengths, and a search/filter panel that's the most complete in the family.

The "Filtered" in the display name is doing real work. Where the platform-specific loaders assume your LoRAs live in tidy subfolders, v02 assumes nothing - it lists everything and lets you carve the list down with filters. It's the closest thing to "Multi-LoRA Loader Model Only, but with CLIP," and if you run SDXL or Flux-class CLIP models it's arguably the one you should just use.

How it works

It scans your full LoRA library and gives you the master search controls:

  • search_directory and search_filename - comma-separated substring matches on paths and filenames.
  • search_category - style, character, pose, clothing, effect, and two dozen more.
  • search_trigger_word - match against trigger words in the pack's local LoRA database.
  • filter_architecture - SD1.5, SDXL, Flux, Pony, Illustrious, Noobai, SD3.5, HiDream, Stable Cascade and others, guessed from filenames and paths.
  • min_rating - 0–5, from the database's quality ratings.

Then eight slots, each with lora_N_enable, lora_N_name, lora_N_strength and lora_N_clip_strength. The CLIP strength matters for models where the text encoder is trained alongside - on SDXL/Pony a clip strength under 1.0 is often what keeps a style LoRA from overpowering the prompt.

Trigger words work like the rest of the family: query_civitai pulls them from the Civitai API when the DB has none, force_civitai_fetch bypasses the cache, and trigger_position/trigger_separator control injection into your prompt.

Outputs

  • model and clip - both patched, into your conditioning and sampler.
  • prompt_with_triggers - your prompt with trigger words injected.
  • prompt - your original prompt, passed through.
  • filter_info / filtered_loras_list - what your filters matched, in text form.
  • all_trigger_words / loaded_loras_info - all triggers 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 install "AAA Metadata System" via ComfyUI Manager. No model downloads. License: CC BY-NC non-commercial; commercial use needs a paid license from the author.

Common issues

  • Filters don't change the dropdown - expected, and the refresh_lists tooltip says so: "Filters are applied during execution - check filter_info output to see results." The dropdown is fixed at node creation; toggle refresh_lists to rescan the folder.
  • filter_architecture feels unreliable - it's a name/path heuristic; badly named files land in "Unknown" and only match Any. Treat it as a convenience, not a guarantee.
  • LoRA effects too strong even at low model strength - drop clip_strength too; on CLIP models the text encoder is often where style leaks in.

There are slicker LoRA managers out there with prettier UIs, but v02 is the solid workhorse: filters that don't require you to reorganize your folder tree, eight slots, and trigger-word help if you want it. For daily SDXL/Pony stacking, it earns its place in a default graph.

Categoryloaders/multi-lora

Inputs (46)

NameTypeDefaultDescription
modelMODEL—
clipCLIP—
promptSTRING—
search_directorySTRINGSearch in directory/path names. Use commas to separate multiple terms.
search_filenameSTRINGSearch in LoRA filenames. Use commas to separate multiple terms.
search_categoryCOMBOAny26 options: Any, unknown, style, character, concept, pose, +20
search_trigger_wordSTRINGSearch in trigger words from database. Use commas to separate multiple terms.
filter_architectureCOMBOAny14 options: Any, Unknown, SD1.5, SDXL, Flux, Pony, +8
min_ratingINT00–5Minimum quality rating from database (0 = show all)
refresh_listsBOOLEANfalseToggle to refresh. Filters are applied during execution - check filter_info output to see results.
query_civitaiBOOLEANfalseAutomatically query Civitai for trigger words when LoRA has none
force_civitai_fetchBOOLEANfalseForce fetch from Civitai even if tags already exist
trigger_positionCOMBOfront2 options: front, back
trigger_separatorSTRING, —
lora_1_enableBOOLEANfalse—
lora_1_nameCOMBONone1 options: None
lora_1_strengthFLOAT1.00-10–10—
lora_1_clip_strengthFLOAT1.00-10–10—
lora_2_enableBOOLEANfalse—
lora_2_nameCOMBONone1 options: None
lora_2_strengthFLOAT1.00-10–10—
lora_2_clip_strengthFLOAT1.00-10–10—
lora_3_enableBOOLEANfalse—
lora_3_nameCOMBONone1 options: None
lora_3_strengthFLOAT1.00-10–10—
lora_3_clip_strengthFLOAT1.00-10–10—
lora_4_enableBOOLEANfalse—
lora_4_nameCOMBONone1 options: None
lora_4_strengthFLOAT1.00-10–10—
lora_4_clip_strengthFLOAT1.00-10–10—
lora_5_enableBOOLEANfalse—
lora_5_nameCOMBONone1 options: None
lora_5_strengthFLOAT1.00-10–10—
lora_5_clip_strengthFLOAT1.00-10–10—
lora_6_enableBOOLEANfalse—
lora_6_nameCOMBONone1 options: None
lora_6_strengthFLOAT1.00-10–10—
lora_6_clip_strengthFLOAT1.00-10–10—
lora_7_enableBOOLEANfalse—
lora_7_nameCOMBONone1 options: None
lora_7_strengthFLOAT1.00-10–10—
lora_7_clip_strengthFLOAT1.00-10–10—
lora_8_enableBOOLEANfalse—
lora_8_nameCOMBONone1 options: None
lora_8_strengthFLOAT1.00-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—