Nodes/ComfyUI-easygoing-nodes/Load Checkpoint (with Name Clean)
ComfyUI Node

Load Checkpoint (with Name Clean)

A checkpoint loader that also names your output folders for you

By easygoing0114·Created 12 months ago·Updated 5 days ago· 5
Load Checkpoint (with Name Clean)
    • MODEL
    • CLIP
    • VAE
    • model_name_clean
    model_name

    Load Checkpoint (with Name Clean) is the "quality of life" node that turns a boring loader into an organizing system. It does two things the stock loader doesn't: it lists models from both models/checkpoints and models/diffusion_models (so you don't have to remember which folder a file lives in), and it spits out a cleaned-up version of the model's filename as a string you can drive other nodes with.

    The payoff is the auto-folder trick. File names are full of noise - juggernautXL_v9Rundiffusion_fp16.safetensors, flux1-dev-bnb-nf4-scaled_fp8_e4m3fn.safetensors - and if you save every output under a folder named after the raw file, you get slop folders full of _fp16_scaled_fp8_e4m3fn. This node strips that noise so your output directories look like juggernautXL_v9Rundiffusion instead.

    What gets cleaned

    The model_name_clean output strips, case-insensitively:

    • Extensions: .safetensors, .pth, .pt
    • Precision/format markers: fp32, fp16, bf16, fp8, mxfp8, nvfp4, int8, svd, scaled, convrot, hq, e4m3fn, e4m3, e5m2fn, e5m2
    • Trailing dashes and underscores left over after the stripping

    So juggernautXL_v9Rundiffusion_fp16.safetensorsjuggernautXL_v9Rundiffusion. Then the README's trick: take that string, append a /, and put it in a Save Image node's filename_prefix. ComfyUI treats the slash as a subfolder separator, so every image you generate with that model lands in its own folder. Run three different checkpoints through the same workflow and your output directory organizes itself.

    The inputs and outputs

    • model_name - a dropdown of the combined, sorted list of both model folders. That's the only input.
    • MODEL, CLIP, VAE - the standard checkpoint loader outputs, wired to your sampler, text encoder, and VAE decode exactly as usual. Loading is done through ComfyUI's normal load_checkpoint_guess_config, so it behaves identically to the stock node.
    • model_name_clean - the string output. Connect it to a text node, or build a filename string with it.

    Install

    From the ComfyUI Manager, search Easygoing:

    cd ComfyUI/custom_nodes
    git clone https://github.com/easygoing0114/ComfyUI-easygoing-nodes.git
    

    Then restart ComfyUI. No pip dependencies to install, but the pack is written against the V3 node API (comfy_api.latest), so it needs a reasonably current ComfyUI - on an old build these nodes simply won't appear. Update ComfyUI first if the menu is missing it.

    Where people get burned

    Two things. First, the cleaning is aggressive: if your model name genuinely contains a marker word, it'll vanish - that's the intended trade, and the per-model subfolder naming is worth it. Second, the clean name isn't a path ComfyUI will load from; it's a naming string. Don't try to feed model_name_clean back into a loader. And if you already have a folder-naming system you like, this node's real value shrinks to the combined model list - which is still handy, honestly. For anyone running several checkpoints and drowning in mixed-up outputs, the folder trick is the reason to grab it.

    Categorymodel/loaders

    Inputs (1)

    NameTypeDefaultDescription
    model_nameCOMBOThe name of the checkpoint (model) to load. Searches both 'checkpoints' and 'diffusion_models' folders.

    Outputs (4)

    NameTypeDescription
    MODELMODELThe model used for denoising latents.
    CLIPCLIPThe CLIP model used for encoding text prompts.
    VAEVAEThe VAE model used for encoding and decoding images to and from latent space.
    model_name_cleanSTRINGCleaned model name (extension and precision/format keywords removed).