Nodes/ComfyUI-SUPIR/SUPIR Model Loader (Legacy)
ComfyUI Node Runs on cloud

SUPIR Model Loader (Legacy)

The original loader you probably don't want

By kijai·Created 2 years ago·Updated 3 months ago· 2,303
SUPIR Model Loader (Legacy)
    • SUPIR_model
    • SUPIR_VAE
    supir_model
    sdxl_model
    fp8_unetfalse
    diffusion_dtypeauto

    The author's own node description for this one is refreshingly blunt: "Old loader, not recommended to be used." That's not filler text - take it at face value. This was the original way to load a SUPIR checkpoint and merge it with an SDXL model, before SUPIR_model_loader_v2 replaced it. It still works, it's still in the pack, and it's kept around for exactly one reason: not breaking workflows built before the v2 loader existed.

    If you're starting fresh, use SUPIR_model_loader_v2 (or SUPIR_model_loader_v2_clip if you're working with separately loaded CLIP-L/CLIP-G) instead and skip this article's node entirely. Read on if you've inherited a workflow that already has this node in it and you're trying to understand what it's doing.

    What it does, and why it was replaced

    This loader picks your SDXL checkpoint by filename directly, inside the node, rather than accepting an already-loaded MODEL/CLIP/VAE trio. That sounds like a minor implementation detail, but it has one real consequence: you can't put a LoRA loader in front of it. There's no model input to intercept. The v2 loader exists specifically to fix this - it accepts pre-loaded components, so a LoraLoader slotted before it carries through into the SUPIR merge. If your workflow needs a style or character LoRA layered under the restoration, this node structurally can't do that for you.

    Inputs and outputs that matter

    Required inputs: supir_model (enum, pick your SUPIR checkpoint) and sdxl_model (enum, pick your SDXL checkpoint - both pulled from models/checkpoints), plus fp8_unet (casts unet weights to float8, trading a little quality for a lot of VRAM) and diffusion_dtype (leave on auto unless something's failing to load). There's no optional section on this node - what you see is what you get.

    Outputs match the v2 loader exactly: SUPIR_model (SUPIRMODEL) and SUPIR_VAE (SUPIRVAE), feeding the same downstream nodes - conditioner, sampler, encode/decode/first-stage.

    How to install it

    Same pack, same steps as every other SUPIR node here. ComfyUI Manager: search "SUPIR", install, restart. Or manually:

    cd ComfyUI/custom_nodes
    git clone https://github.com/kijai/ComfyUI-SUPIR
    pip install -r ComfyUI-SUPIR/requirements.txt
    

    Portable: python_embeded\python.exe -m pip install -r ... from the portable root. A reasonably current PyTorch is expected; xformers is optional. You'll need the SUPIR checkpoint (pruned safetensors on Kijai's HuggingFace, SUPIR_pruned) and an SDXL checkpoint both sitting in ComfyUI/models/checkpoints for the dropdowns to populate.

    Common issues

    If your dropdown for supir_model or sdxl_model is empty, it's a models-folder problem, not a node problem - both checkpoints need to actually be present in ComfyUI/models/checkpoints before ComfyUI starts, or a manager refresh won't see them either.

    The bigger issue is one of intent: people land on this node because it's what an old tutorial or shared workflow uses, then wonder why LoRAs don't seem to apply anywhere in their SUPIR pass. That's this loader working exactly as designed - it was never built to accept one. Swap in SUPIR_model_loader_v2 and rewire your checkpoint loading upstream instead of debugging a limitation that isn't a bug.

    And, same caveat as the rest of the pack: this repo only gets breaking-bug fixes going forward, since SUPIR now has native support in ComfyUI core. For a legacy node that was already discouraged before that, there's even less reason to expect further changes here.

    CategorySUPIR

    Inputs (4)

    NameTypeDefaultDescription
    supir_modelCOMBO0 options:
    sdxl_modelCOMBO0 options:
    fp8_unetBOOLEANfalse
    diffusion_dtypeCOMBOauto4 options: fp16, bf16, fp32, auto

    Outputs (2)

    NameTypeDescription
    SUPIR_modelSUPIRMODEL
    SUPIR_VAESUPIRVAE