SD Slicer — Load LoRA (raw)
Get a LoRA's raw weights without applying it — the missing half of LoRA merging
- state_dict
Here's the problem SD Slicer - Load LoRA (raw) solves: ComfyUI's stock LoraLoader takes a MODEL and returns a MODEL. It applies the LoRA's weights to the model and hands you the patched result. Which is exactly what you want for generation, and exactly wrong for merging - because you never get to see the LoRA's actual weights. Want to feed a LoRA into the pack's Merge (any) node? You can't, with stock nodes. The weights never exist as a standalone object in your graph.
This node is the missing half. Pick a file from your loras folder and it outputs the LoRA's raw state_dict on a wildcard output - loaded, not applied, untouched. Nothing is patched onto a model, no base model involved. That's the entire job, and it does it well.
Input and output
lora_name- a dropdown listing every.safetensorsin yourlorasfolder. No path typing, no folder digging.- Output:
state_dict(wildcard*) - the raw weights, ready for Merge (any) or Save (any).
Under the hood it's just ComfyUI's own file loader (comfy.utils.load_torch_file with safe loading) pointed at your loras directory. One input, one output, no config to misconfigure.
Why you'd chain it
The README's own diagram is the whole use case:
Load LoRA (raw) ┐
├─► Merge (any) ─► Save (any) (destination: models/loras)
Load LoRA (raw) ┘
Two of these feed a Merge (any), and you get the per-block weight editor - except now it lists the LoRA's own keys (lora_unet_…, lora_te_…) rather than UNet blocks. Blend two style LoRAs into one file, save it to models/loras, and the result loads back with the plain stock LoraLoader. Two files become one, no training involved.
The one thing to keep in mind
Merging LoRAs only works cleanly when the LoRAs are for the same base architecture and - this is the one that bites people - ideally the same rank and targeting. A rank-64 and a rank-128 LoRA have different tensor shapes in their down/up matrices, and Merge (any)'s compatibility check will reject them. Merging an SDXL LoRA into an SD1.5 one is equally doomed. The node itself will happily hand you any file you ask for; it won't warn you that the result is garbage. That's on you.
It's also worth knowing this node is purely a utility - it has no output-node behavior and no UI beyond the dropdown, which is why it's one of the thinnest entries in the pack. Install is the same as everything else in ComfyUI-SD-Slicer: ComfyUI Manager, searching "SD Slicer", or:
cd ComfyUI/custom_nodes
git clone https://github.com/kuschanow/ComfyUI-SD-Slicer
then restart ComfyUI. No extra Python packages, no model downloads. If you only ever apply LoRAs and never merge them, you don't need this node. The day you want two LoRAs as one file, it's the piece that makes it possible.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| lora_name | COMBO | 0 options: |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| state_dict | * | — |