Nodes/ComfyUI-PM-Manager/PM LoRA Loader
ComfyUI Node

PM LoRA Loader

Stack six LoRAs, drag to reorder, toggle them mid-flight

By pixel-magician·Created 7 months ago·Updated 4 months ago· 0
PM LoRA Loader
  • model
  • clip
  • lora_stack
  • model
  • clip
  • lora_stack

This is the flagship node of the PM Manager pack - the README leads with it, and it's easy to see why. The core "Load LoRA" node handles exactly one LoRA, which means the moment you want a style LoRA plus a character LoRA plus a detail enhancer, you're stacking nodes and hoping the math comes out right. PM LoRA Loader collapses all of that into one node with a list: add several LoRAs, give each its own model strength and CLIP strength, drag them to reorder, and toggle individual ones on or off without rebuilding anything. That last bit is the killer feature - being able to A/B a LoRA by flicking a switch instead of rewiring is exactly the workflow that keeps people in ComfyUI.

How it works

The UI maintains a stack, and each entry carries its own strength (model strength) and clipStrength plus an active flag. On execution the node applies every active LoRA in order via comfy.sd.load_lora_for_models - the same function the core loader uses - so order genuinely matters. LoRAs are multiplicative patches; stacking A then B is not the same as B then A, and the pack lets you drag to reorder precisely because that ordering changes the result.

It also has a second personality: the lora_stack input and output. A stack is just a list of (lora_path, model_strength, clip_strength) tuples - the author's own tooltip says so. You can feed a stack in from elsewhere, or leave model and clip disconnected entirely and use the node purely to build and pass along a stack for another loader to consume. And because every applied LoRA is appended to the output stack, you get an honest record of what actually went into the generation.

Inputs and outputs

  • model, clip - both optional. Leave them disconnected if you only want to produce a stack.
  • lora_stack - optional * input: a list of (path, model_strength, clip_strength) tuples to merge in.
  • model, clip - outputs, the modified versions after all LoRAs are applied. Wire into your KSampler and CLIP Text Encode.
  • lora_stack - the full applied stack, for chaining or recording.

The LoRA files themselves are picked in the UI, not typed as a path - the pack looks them up in models/loras, including subfolders.

Installing it

Everything in this pack installs the same way:

cd ComfyUI/custom_nodes
git clone https://github.com/pixel-magician/ComfyUI-PM-Manager.git
# restart ComfyUI

Or ComfyUI Manager, searching for ComfyUI-PM-Manager. No model downloads - it reads the LoRAs you already have in models/loras.

Common issues

Since stacking is order-dependent, the classic surprise is "same LoRAs, different image" after a reorder - that's physics, not a bug, and it's exactly what the drag-to-reorder UI is for. If a LoRA file is missing or fails to load, the node logs a warning and skips it, continuing with the rest of the stack - convenient, but easy to miss if you never read the console. And the pack-wide rule stands: it's built on ComfyUI's newer extension API, so if the node never appears, update ComfyUI before reinstalling anything.

CategoryPM Manager

Inputs (3)

NameTypeDefaultDescription
modeloptMODEL
clipoptCLIP
lora_stackopt*LoRA stack input: list of (lora_path, model_strength, clip_strength) tuples

Outputs (3)

NameTypeDescription
modelMODEL
clipCLIP
lora_stack*LoRA stack output: list of (lora_path, model_strength, clip_strength) tuples