Nodes/Civitai LoRA Rack (CLR)/CLS - 单条 LoRA 加载
ComfyUI Node

CLS - 单条 LoRA 加载

A LoRA Loader With a Text Box Where the Dropdown Should Be

By Hakaki·Created 23 days ago·Updated 23 days ago· 2
CLS - 单条 LoRA 加载
  • model
  • clip
  • CLIP
  • MODEL
◄lora_name►
◄strength_model1.00►
◄strength_clip1.00►

CFTLoraLoader - CLS - 单条 LoRA 加载 on the canvas - is the small sibling of the Civitai LoRA Rack stack node. One LoRA, two weights, done. The surprising part, and the first thing you'll hit: lora_name isn't a dropdown. It's a text field, and you type the path yourself.

Why it's built that way

CLR's whole premise is that the file picker lives in its own UI - the + button and the rack window on the CFTLoraStack node, where you get thumbnails, author, base model, tags and trigger words. This node is the cheap escape hatch: same pack, same install, same loading code, none of the panel. The frontend does nothing to it beyond renaming the sockets to match your UI language, so functionally it's a plain node with three widgets.

Which means: if you came here hoping for a nicer single-LoRA loader with metadata and a file browser, you actually want CFTLoraStack with one row in it. Use this one when a stack node is overkill and you just want the LoRA applied.

What you type in lora_name

The relative path inside ComfyUI/models/loras, with forward slashes and the extension:

Anima/my_character_v2.safetensors

The folder prefix has to match what's on disk. Nothing validates it at queue time - see the gotcha below.

Then the two strengths. strength_model is the weight you'll actually tune; strength_clip is the text-encoder strength, which is how much it bends the prompt rather than the image. Both default to 1.0 and both accept negatives down to -20, which is how people subtract a style back out of a merge - an ugly trick, but real.

Please don't paste a 0.7 in from an SDXL tutorial and call it done. That range is SDXL-era advice; newer bases and LoKr character adapters are commonly run at 1.0 and above, and dropping the weight on those costs likeness. Check what the model page says.

How it loads

Under the hood it's the same path as the stack node: folder_paths.get_full_path("loras", lora_name) resolves the file, weights come from comfy.utils.load_torch_file, and comfy.sd.load_lora_for_models patches model and clip - the function ComfyUI's built-in loader calls. No exotic patching, which is good news for GGUF checkpoints and whatever base you're on.

Weights are cached in-process and shared with the stack node, keyed by absolute path, holding 8 files.

Inputs and outputs

Three required widgets - lora_name, strength_model, strength_clip - and two optional inputs: model and clip. Wire both in from your checkpoint loader. Wire only model and the LoRA applies to the diffusion weights alone with no prompt-side steering, which is a perfectly legitimate way to run.

Outputs are CLIP and MODEL, in that order. That's reversed from the core Load LoRA node (MODEL, CLIP), and it's the kind of thing that makes you re-wire a graph twice before you notice. MODEL goes to your sampler or the next patcher in the chain, CLIP to whatever builds conditioning.

Install

Same pack as the stack node, so if you have one you have both. Otherwise:

cd ComfyUI/custom_nodes
git clone https://github.com/Hakaki/ComfyUI-Civitai-LoRA-Rack

Restart ComfyUI. No requirements.txt to install - the pack's only dependency is requests, bundled with ComfyUI - and nothing downloads models. With ComfyUI Manager, search Civitai LoRA Rack: the pack installs both nodes, so there's nothing under CLS to find. The code is AI-written and the project is new, so test it in a side workflow first.

Where people get burned

The silent pass-through. If lora_name is empty, or folder_paths can't resolve the path, the node doesn't error out - it returns your model and clip untouched and logs 找不到 Lora to the console. Your graph runs, the queue finishes, and the LoRA simply isn't there. That's the trap that makes this node feel flakier than the built-in loader, which fails loudly on a bad combo value. Fix a missing LoRA by checking the console, not by regenerating with a different seed.

Stale weights. Because the cache is shared and this node has no reset toggle, overwriting a .safetensors in place under the same filename can keep serving the old version. Restart ComfyUI, or drop a CFTLoraStack in and tick its reset_cache.

The Chinese title. On a fresh install the node appears as CLS - 单条 LoRA 加载, so double-click search for CLS rather than "LoRA Loader" - that pulls up the big stack node. Both live under Civitai/LoRA in the node menu.

And the standing reminder: a LoRA doing nothing is usually not the loader's fault. Wrong base architecture, a missing trigger word, or the CLIP-skip setting will all produce a perfectly applied no-op.

CategoryCivitai/LoRA

Inputs (5)

NameTypeDefaultDescription
lora_nameSTRING—
strength_modelFLOAT1.00-20–20—
strength_clipFLOAT1.00-20–20—
modeloptMODEL—
clipoptCLIP—

Outputs (2)

NameTypeDescription
CLIPCLIP—
MODELMODEL—