Nodes/Nukun_ComfyUI_Nodes/Diffusion Model + CLIP + VAE Cycler Loader (Nukun)
ComfyUI Node

Diffusion Model + CLIP + VAE Cycler Loader (Nukun)

A cycler for the new world of separate model files

By OnekoSL·Created 3 months ago·Updated 11 days ago· 1
Diffusion Model + CLIP + VAE Cycler Loader (Nukun)
    • MODEL
    • CLIP
    • VAE
    • modelname
    • filename_modelname
    • unet_name
    • clip_name
    • vae_name
    • folder
    unet_name
    clip_name
    vae_namepixel_space
    weight_dtypedefault
    clip_typestable_diffusion
    clip_devicedefault

    The checkpoint cyclers in this pack are great - if you're loading monolithic .safetensors checkpoints. But a big slice of the modern ecosystem doesn't work that way. FLUX, SD3, Wan, and the separate-file workflows split the weights: a diffusion model file in diffusion_models/, a text encoder in text_encoders/, a VAE in vae/. Stock ComfyUI handles that with three separate loaders. NukunDiffusionClipVaeCyclerLoader bundles all three into one node and adds cycler support to the model dropdown so you can batch over a folder of diffusion models while holding CLIP and VAE fixed.

    If you've been living in SDXL-land, this is the node to reach for the moment you start touching FLUX or SD3 workflows and miss having everything in one place.

    What it does

    One node, three loads under the hood. The important inputs:

    • unet_name - the diffusion model dropdown, with control_after_generate support. This is the one you increment to batch over models.
    • clip_name - the text encoder. Selected once; it stays put while the model cycles (most FLUX/SD3 workflows want one encoder anyway).
    • vae_name - defaults to pixel_space, and it's fixed across the cycle by design.
    • weight_dtype - default, or fp8_e4m3fn, fp8_e4m3fn_fast, fp8_e5m2. If you're running quantized FLUX models, this is how you tell the core loader to keep them quantized.
    • clip_type - which text-encoder architecture your CLIP file is (stable_diffusion, sd3, ltxv, wan, and a couple dozen more). The source even auto-corrects one case: if you set stable_diffusion but the loaded model turns out to be a Krea2, it picks the right clip type for you.
    • clip_device - load CLIP normally or force it to CPU, useful on tight VRAM.

    Outputs are the expected MODEL, CLIP, VAE, plus modelname, filename_modelname (both sanitized for filenames), unet_name, clip_name, vae_name, and folder. You can wire modelname straight into a save prefix and every run is labeled with the diffusion model that made it.

    Why you'd use it over three stock loaders

    Batching. With three separate stock loaders, "next model" means manually re-picking three dropdowns per run (or building a converter rig). Here, one node, one widget to increment, everything else stays coherent. It's the same convenience argument as the checkpoint cyclers, but for the split-file architectures where that convenience was previously missing.

    Installing it

    cd ComfyUI/custom_nodes
    git clone https://github.com/OnekoSL/Nukun_ComfyUI_Nodes.git
    

    Restart ComfyUI or install via Manager (search "Nukun"). No model downloads from the pack itself - you supply the diffusion models and encoders it cycles.

    The thing to get right

    It only cycles the model - CLIP and VAE are meant to stay fixed. If your batch includes models that need different text encoders, this isn't the right tool (keep the pack's 4-Prompt Model Cycler in mind, which is the same family but with different strengths). And remember the usual control_after_generate rhythm: the increment applies after the run, so for controlled tests set ComfyUI's widget control mode to Before once and the shown value will match the run that produced it.

    CategoryNukun/Loaders

    Inputs (6)

    NameTypeDefaultDescription
    unet_nameCOMBODiffusion model/UNET to load. The frontend can increment, decrement, randomize, or wrap this combo after queueing.
    clip_nameCOMBOText encoder/CLIP to load.
    vae_nameCOMBOpixel_spaceVAE to load.
    weight_dtypeCOMBOdefaultWeight dtype passed to the core Load Diffusion Model node.
    clip_typeCOMBOstable_diffusionCLIP type passed to the core Load CLIP node.
    clip_deviceCOMBOdefaultLoad CLIP normally or force it to CPU.

    Outputs (9)

    NameTypeDescription
    MODELMODEL
    CLIPCLIP
    VAEVAE
    modelnameSTRING
    filename_modelnameSTRING
    unet_nameSTRING
    clip_nameSTRING
    vae_nameSTRING
    folderSTRING