Nodes/ComfyUI-Lora-Manager/LoRA Text Loader (LoraManager)
ComfyUI Node

LoRA Text Loader (LoraManager)

Drive LoRA loading from a plain string

By willmiao·Created 2 years ago·Updated 21 days ago· 1,301
LoRA Text Loader (LoraManager)
  • model
  • clip
  • lora_stack
  • MODEL
  • CLIP
  • trigger_words
  • loaded_loras
lora_syntax

This is the Lora Loader's headless twin. Same job - apply LoRAs written in the <lora:name:strength> syntax and pass their trigger words downstream - but instead of a built-in autocomplete box, it takes the syntax as a plain STRING input. That one difference is the whole reason it exists: it lets the LoRA list come from somewhere else in the graph rather than being typed into the node.

Why you'd want that: wildcards, text nodes, API calls, prompt files. If you feed it the output of a Text (LoraManager) node, you can put __loras/portrait__ in a wildcard and have a different LoRA combo resolve each run. If you drive ComfyUI from the API, you can send the LoRA syntax as a string field instead of baking it into the node. It's the difference between a fixed loader and one you can program.

How it works

You give it a MODEL and a lora_syntax string. It parses each <lora:...> entry, patches the model at those strengths, and - if you also hand it a CLIP - patches that too. It can additionally take an incoming LORA_STACK and merge those LoRAs in, so you can combine a stack built by the Stacker/Randomizer with a text-driven list in one loader. Out come the patched model, the patched CLIP, and the trigger words.

Inputs and outputs that matter

  • model (MODEL, required) - the base to patch.
  • lora_syntax (STRING, required) - the <lora:...> text, usually wired in from a Text node, a wildcard, or an API field.
  • clip (CLIP, optional) - pass it if you want CLIP patched too; leave it off for model-only.
  • lora_stack (LORA_STACK, optional) - an existing stack to fold in alongside the text.

Outputs mirror the Lora Loader: MODEL, CLIP, trigger_words (STRING, into your prompt encode) and loaded_loras (STRING, what got applied).

How to install it

Via ComfyUI Manager: search lora-manager, Install, restart. Or manually:

cd ComfyUI/custom_nodes
git clone https://github.com/willmiao/ComfyUI-Lora-Manager.git
cd ComfyUI-Lora-Manager
pip install -r requirements.txt

then restart. It's a light Python install - no models, no heavy dependencies.

Common issues & troubleshooting

Nothing loads and you get no error. Check the string actually reached the node in valid syntax. A common mistake is feeding raw filenames instead of <lora:name:strength> - the loader wants the bracketed form. If the strength is missing it may default, but the name has to match a file the manager indexed.

CLIP output is empty. You didn't connect a CLIP in. That input is optional, so with nothing wired the node runs model-only and the CLIP output has nothing to give.

Trigger words don't appear. Same as the rest of the pack: the words only exist if the manager fetched or you set them. And remember LoRAs are architecture-locked - a mismatched base model means the LoRA loads but does nothing visible.

CategoryLora Manager/loaders

Inputs (4)

NameTypeDefaultDescription
modelMODEL
lora_syntaxSTRINGFormat: <lora:lora_name:strength> separated by spaces or punctuation
clipoptCLIP
lora_stackoptLORA_STACK

Outputs (4)

NameTypeDescription
MODELMODEL
CLIPCLIP
trigger_wordsSTRING
loaded_lorasSTRING