Nodes/Quality of Life Nodes for ComfyUI/Checkpoint File Loader (Soze)
ComfyUI Node

Checkpoint File Loader (Soze)

Load a checkpoint from a raw path, not a dropdown

By SozeInc·Created 2 years ago·Updated 5 days ago· 10
Checkpoint File Loader (Soze)
    • MODEL
    • CLIP
    • VAE
    • status
    ckpt_pathundefined

    Its own description says it plainly: "Loads a diffusion model checkpoint from an absolute filesystem path." That's the entire pitch - same job as ComfyUI's stock Load Checkpoint node, minus the dropdown. Instead of picking from whatever's already sitting in models/checkpoints, you hand it a raw path, which matters the moment you want that choice made dynamically rather than clicked.

    How it works

    It loads a checkpoint the same way the core node does - same three model components come back out - but the path is a string input instead of a folder scan. That's the whole trade: you lose the convenient picker, you gain the ability to point at a checkpoint anywhere the ComfyUI process can read, and to feed that path from a variable, a loop, or a config file rather than a fixed menu choice.

    Worth knowing generally, and it applies to this node as much as any: custom nodes run as ordinary Python with full filesystem access - there's no sandbox stopping a node like this from reading anywhere the process itself can reach. That's exactly what makes an absolute-path loader useful, and also the reason a workflow built around one won't quietly "just work" if you hand it to someone else - their filesystem doesn't have your path on it.

    The inputs and outputs that matter

    One required input: ckpt_path (STRING, default "undefined" - note that's a literal placeholder string, not an empty field, so an unwired node will try to load a file called undefined rather than doing nothing).

    Four outputs, with tooltips lifted essentially verbatim from ComfyUI's own core loader - a good sign this is meant as a drop-in swap, not a divergent reimplementation: MODEL ("the model used for denoising latents"), CLIP ("the CLIP model used for encoding text prompts"), VAE ("the VAE model used for encoding and decoding images to and from latent space"), and status - which the core loader doesn't have, reporting the checkpoint name, size, and load result. That last one is genuinely useful here specifically, since you can't just glance at a dropdown to confirm what loaded when the path came from a variable.

    How to install it

    ComfyUI Manager → search "ComfyUI_Soze" → install → restart. Manual:

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

    then restart. No extra dependency beyond the base pack - it leans on ComfyUI's own checkpoint-loading internals.

    Common issues & troubleshooting

    Forgetting to wire or type a real path is the most likely first mistake, and because the default is the literal string "undefined" rather than blank, expect a clear load error on that placeholder - not silent inaction.

    Beyond that, it's the standard raw-path gotcha: prefer an absolute path over a relative one to rule out working-directory confusion, and remember that a workflow with this node's path hardcoded won't transfer cleanly to another machine or another person - it'll fail cleanly (a missing-file error) rather than silently loading the wrong thing, which is at least the safer failure mode.

    Categoryloaders

    Inputs (1)

    NameTypeDefaultDescription
    ckpt_pathSTRINGundefined

    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.
    statusSTRINGStatus text — current checkpoint name, size, and load result.