Nodes/ComfyUI-TJ_NODE/Model Set Loader (TJ)
ComfyUI Node

Model Set Loader (TJ)

CheckpointLoaderSimple for people who don't use checkpoints — separate model, CLIP, and VAE

By designloves2·Created 4 months ago·Updated 3 days ago· 13
Model Set Loader (TJ)
    • MODEL
    • CLIP
    • VAE
    auto_setfalse
    model_name[none]
    model_dtypedefault
    clip_name[none]
    clip_typestable_diffusion
    clip_dtypedefault
    vae_name[none]

    Model Set Loader (TJ) is a three-in-one loader for the modern era of ComfyUI, where a "checkpoint" is usually three separate files: a diffusion model, a text encoder, and a VAE. It's laid out like CheckpointLoaderSimple - one node, three outputs - but each dropdown is independent, so you can pair a GGUF-quantized Flux model with a qwen text encoder and a shared VAE without juggling three separate loader nodes and their wires. If you build workflows around split models, this collapses the boilerplate nicely.

    How it works

    Three dropdowns, three outputs:

    • model_name - from your diffusion_models / unet folders, GGUF included. It auto-detects .gguf files and routes them through UnetLoaderGGUF/CLIPLoaderGGUF (the pack needs ComfyUI-GGUF installed for the GGUF path) instead of the standard loader.
    • clip_name - from text_encoders / clip. clip_type is the CLIPLoader architecture type and the pack pulls the list dynamically from your ComfyUI, so it's not a hardcoded roster that rots when new architectures land. clip_dtype covers weight dtype.
    • vae_name - from your vae folder.

    model_dtype maps to UNETLoader's weight_dtype (default, fp8_e4m3fn, fp8_e5m2, fp16, bf16) - ignored for GGUF models since the quantization is baked into the file. Each slot accepts [none], which returns None for that output only, so you can load model + CLIP and leave the VAE to a shared loader elsewhere in the graph.

    auto_set is the wireless integration: flip it on and each output publishes itself as a named provider ({name}/MODEL, {name}/CLIP, {name}/VAE), so downstream TJ Get nodes can receive them without wires.

    Inputs and outputs that matter

    The three that matter day-to-day: model_name, clip_name, vae_name. The rest (model_dtype, clip_type, clip_dtype, auto_set) only need touching when you're doing something specific like fp8 loading or wireless routing.

    Outputs: MODEL, CLIP, VAE.

    Install

    ComfyUI Manager → Install Custom Nodes → search TJ_NODE, or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/designloves2/ComfyUI-TJ_NODE
    

    Restart ComfyUI. For GGUF loading you also need ComfyUI-GGUF (Manager: search "ComfyUI-GGUF"). No models ship with the pack - the actual .gguf/.safetensors files are on you.

    The honest verdict

    This is a convenience loader, and a good one if you live in split-model land. The GGUF auto-detection saves you from remembering which loader node to use, and the [none] slots make partial loading genuinely flexible. The trade-off: because it wraps the separate loaders, it can only expose the options those loaders support - you won't get checkpoint-format conveniences like embedded clip/VAE extraction. And it leans on the GGUF pack being present, so a fresh environment with this node but no ComfyUI-GGUF will fail on .gguf files. If your workflows are all merged checkpoints, CheckpointLoaderSimple is still the right tool; if they're split Flux/Klein/Krea-style stacks, this is the one.

    Category ✨ TJ_Node/Loaders

    Inputs (7)

    NameTypeDefaultDescription
    auto_setBOOLEANfalse
    model_nameCOMBO[none]1 options: [none]
    model_dtypeCOMBOdefaultUNETLoader weight_dtype. GGUF 모델은 무시됩니다.
    clip_nameCOMBO[none]1 options: [none]
    clip_typeCOMBOstable_diffusionCLIPLoader type 파라미터. GGUF CLIP은 무시됩니다.
    clip_dtypeCOMBOdefaultCLIPLoader weight_dtype (지원 버전에서만 동작). GGUF CLIP은 무시됩니다.
    vae_nameCOMBO[none]1 options: [none]

    Outputs (3)

    NameTypeDescription
    MODELMODEL
    CLIPCLIP
    VAEVAE