Nodes/Orel's Nodes/LoRA Loader + Name
ComfyUI Node

LoRA Loader + Name

The loader that tells you which file it used

By DarkOrel·Created 30 days ago·Updated 22 days ago· 1
LoRA Loader + Name
  • model
  • clip
  • MODEL
  • CLIP
  • LORA_FILENAME
  • LORA_BASENAME
◄lora_name▾►
◄strength_model1.00►
◄strength_clip1.00►

ComfyUI's built-in LoRA Loader gives you two outputs: MODEL and CLIP. It knows perfectly well which file you selected - and refuses to tell you.

LoRA Loader + Name is the same loader with two extra sockets: the filename and the basename of the LoRA it just applied. If you name your outputs, write run summaries, or keep a manifest of what went into an image, that's the whole reason to swap the node.

The mechanism

The important thing here is that it isn't a reimplementation. It calls the same core ComfyUI functions the built-in loader does - folder_paths.get_full_path_or_raise, comfy.utils.load_torch_file, and comfy.sd.load_lora_for_models - so caching behavior and strength_model / strength_clip semantics match core exactly, including the detail that strength_clip = 0 genuinely switches the CLIP half off. Pack authors who roll their own LoRA application get this subtly wrong all the time. This one doesn't.

There's one nice shortcut: if both strengths are 0, the node returns your model and clip untouched and never touches the file on disk. That's a clean way to A/B a LoRA without editing the graph - mute the effect rather than bypassing the node.

The filename output isn't a string echo of the dropdown either. It's derived from the path ComfyUI actually resolved, so what you get is the real file on disk, including subfolder if you use one:

  • LORA_FILENAME - style/klein_softskin_v2.safetensors
  • LORA_BASENAME - klein_softskin_v2 (directory and extension stripped)

Inputs and outputs

  • model (MODEL) - the diffusion model to patch.
  • clip (CLIP) - the text encoder to patch.
  • lora_name - dropdown, populated from your models/loras folder as usual.
  • strength_model (FLOAT, default 1.0, range ±100) - LoRA weight on the diffusion model.
  • strength_clip (FLOAT, default 1.0, range ±100) - weight on the text encoder.
  • MODEL, CLIP - the patched pair, exactly as the core node emits them.
  • LORA_FILENAME (STRING), LORA_BASENAME (STRING).

What you'd wire the name outputs into

Filenames. Feed LORA_BASENAME into a filename-prefix setup or this pack's Filename Builder so every output carries the LoRA it was made with. Given how much of this ecosystem's workflow is "which LoRA was this?", that's the killer use.

Run summaries. Workflow Status takes a lora_name input and prints LoRA: <value> as its first line. Two wires and your run log names its own settings.

Trigger words. The basename is a sane default for a Prompt Template's trigger - many people name their LoRA file after its trigger token precisely so this works.

Install

Manager → search Orel's Nodes → Install → restart → hard-refresh the browser.

cd ComfyUI/custom_nodes
git clone https://github.com/DarkOrel/Orels-Nodes.git orels-nodes
python -m pip install -r orels-nodes/requirements.txt

Restart and hard-refresh. Nothing here needs the requirements file - that's huggingface_hub and filelock for the pack's download nodes.

Gotchas

Architecture lock is still on you. The output name is informational. The node will happily apply a Flux LoRA to an SDXL checkpoint and hand you back a patched model that generates noise. A Flux.2 Klein LoRA does not run on SDXL and vice versa, and nothing in the loader checks.

Chaining works, but the name reflects the last loader. Stack two of these and only the second one's filename output is meaningful - if you want both names, take the name output from each node separately rather than from the end of the chain.

Bypassing the node mutes the name too. If you bypass a node to compare with/without a LoRA, its outputs go dead, so anything you wired the basename into will error or go empty. Use the 0/0 strength trick if you need the graph to stay intact.

CategoryOrel's Nodes/LoRA

Inputs (5)

NameTypeDefaultDescription
modelMODELThe diffusion model the LoRA will be applied to.
clipCLIPThe CLIP model the LoRA will be applied to.
lora_nameCOMBO0 options:
strength_modelFLOAT1.00-100–100—
strength_clipFLOAT1.00-100–100—

Outputs (4)

NameTypeDescription
MODELMODEL—
CLIPCLIP—
LORA_FILENAMESTRING—
LORA_BASENAMESTRING—