Nodes/Powder Nodes/Powder Lora Loader
ComfyUI Node

Powder Lora Loader

Stack or compare LoRAs without the spaghetti

By E2GO·Created 7 months ago·Updated 4 months ago· 0
Powder Lora Loader
  • model
  • clip
  • MODEL
  • CLIP
  • prompt
  • negative_prompt
  • lora_info
mode
combination_order
lora_config[]
disable_cliptrue
trigger_position
prompt
negative_prompt

If you've ever built a LoRA comparison grid in stock ComfyUI, you know the pain: a row of LoraLoaders, a row of prompts, and a maze of wires to cross them into every combination. The Powder Lora Loader exists to kill that. It loads up to 20 LoRAs on one node, applies them in two distinct modes, carries trigger words along for the ride, and outputs everything a batch workflow needs - model, CLIP, and the prompts themselves.

This is the node the whole E2GO "Powder" pack is built around, and it's the one worth installing the pack for even if you never touch the rest.

How it works

Two operating modes, chosen by the mode combo:

  • Stack (all enabled) - every enabled LoRA is applied sequentially to a single model. You get one patched model, repeated for each prompt. This is your "load my usual 3-4 LoRAs and generate" mode.
  • Single - each enabled LoRA gets its own copy of the model. The output is N_loras × N_prompts combinations. This is the comparison-grid mode, and it's the star feature here.

The combination_order combo controls how those combinations come out - LoRAs-first or prompts-first - which just changes the ordering you'll see when the results land in a grid. The disable_clip toggle skips CLIP weights when applying LoRAs, which makes test runs noticeably faster and is on by default; flip it off when you're doing real style comparison where the CLIP part of the LoRA matters.

Each dynamic slot has the settings you'd expect: Enabled, the LoRA file picker, Model Str / Clip Str strength, and trigger handling. The trigger nicety that puts this ahead of the stock loader: the trigger text auto-loads from a .txt file sitting next to the LoRA (same base name), and a Use Trigger toggle controls whether it's added to the prompt. So your LoRA folder becomes both weights and the prompt text that activates them.

The inputs and outputs that matter

Beyond model and clip (wire in from your UNETLoader/CLIPLoader), the important ones:

  • mode - Stack vs Single. This decides everything about how the outputs are shaped.
  • disable_clip - skip CLIP weights for faster testing.
  • trigger_position - where the LoRA trigger lands in the assembled prompt.

Outputs:

  • MODEL / CLIP - the patched models, as lists in Single mode.
  • prompt / negative_prompt - STRING lists, one prompt per combination. This is what makes batch prompting work without a separate prompt-mixing node.
  • lora_info - a JSON blob describing LoRA names, strengths, triggers, and order. Wire this into Powder Conditioner for automatic trigger assembly, and into Powder Grid Saver for labels.

Installation

One install covers all eight nodes in the pack:

cd ComfyUI/custom_nodes
git clone https://github.com/E2GO/e2go-comfyui-nodes.git e2go_nodes

Restart ComfyUI, or search e2go_nodes / E2GO in ComfyUI Manager. No extra Python dependencies - pure Python on ComfyUI's runtime, verified against ComfyUI 0.17+.

Common issues

The caching here is aggressive and mostly invisible: raw safetensors are cached for 30 minutes and patchers are cached per model+CLIP pair, so repeated comparisons with the same LoRAs are fast. The flip side is the classic stale-result trap - if you change a LoRA file on disk and the loader keeps giving you old behavior, clear the caches (see Powder Cache Stats and Powder Clear Conditioning Cache).

The other gotcha is trigger handling. If a LoRA has no .txt next to it, the trigger slot stays empty - nothing is invented for you, and without trigger text some LoRAs quietly do much less than they should. Drop a .txt with the trigger words next to each LoRA and the loader picks it up automatically. And if your comparison grid suddenly has way more outputs than you expected, you're in Single mode with multiple prompts - that N_loras × N_prompts multiplication is doing its job, and the grid saver is where that becomes readable.

Categorye2go_nodes

Inputs (9)

NameTypeDefaultDescription
modelMODEL
clipCLIP
modeCOMBO2 options: Stack (all enabled), Single
combination_orderCOMBO2 options: Loras first, Prompts first
lora_configSTRING[]
disable_clipBOOLEANtrue
trigger_positionCOMBO2 options: After prompt, Before prompt
promptoptSTRING
negative_promptoptSTRING

Outputs (5)

NameTypeDescription
MODELMODEL
CLIPCLIP
promptSTRING
negative_promptSTRING
lora_infoSTRING