Nodes/Nifty Nodes for ComfyUI/Diffusion Model Selector
ComfyUI Node

Diffusion Model Selector

Swap UNets and GGUF models from one dropdown

By Stibo·Created 5 months ago·Updated 2 months ago· 9
Diffusion Model Selector
    • model
    • is_gguf
    model_name

    If you run Flux-class or WAN-class models locally, you live in unet / diffusion_models territory, and you've got more UNet files than you can keep straight. Diffusion Model Selector pulls the model pick out of your loader: one dropdown lists every model file in those folders, and outputs the filename as a string you wire into a UNETLoader. Swap models in one place; every loader wired to it follows.

    What it is

    A single required widget, model_name, listing files from ComfyUI/models/unet and diffusion_models with the extensions .safetensors, .gguf, .pt, .pth, .bin. Two outputs:

    • model - the selected filename as a string (wildcard type), wired into a loader's model name input.
    • is_gguf - true when the chosen file ends in .gguf. This is the output that earns its keep: GGUF quantized diffusion models need the GGUF loader (or a GGUF-aware one), and this boolean routes to the right loader - or just warns you at a glance that you're about to load a quant file.

    Why you'd reach for it

    Same selector philosophy as the rest of the pack: keep loaders clean, make the choice a visible, wireable value. The real payoff is model-swap workflows. Two dropdowns - "fast draft" vs "full quality" - feeding a combo switch that picks which model name goes to the loader. Or a GGUF Q8 model for quick tests and the full fp16 for finals, switched by a boolean.

    There's a genuine GGUF angle here that's worth understanding: quantized diffusion models are how 12B+ models fit on consumer cards (Q8 is basically fp16 at half the size; Q4_K_M is the accepted 12GB compromise). The is_gguf output exists precisely because feeding a quantized file to a plain loader silently breaks. This node surfaces that decision instead of letting you discover it via error messages.

    Install

    Part of Nifty Nodes for ComfyUI. Manager: search "Nifty Nodes for ComfyUI" → Install → restart. Manual:

    cd ComfyUI/custom_nodes
    git clone https://github.com/Stibo/comfyui-nifty-nodes
    

    Restart ComfyUI. No downloads - it just lists files you already have. MIT-licensed, v3-API native, new pack (v2.1.0, mid-2026).

    Gotchas

    [no models found] means your files aren't in unet or diffusion_models, or they're an extension outside the listed set. And the selector is a name-string, not a loader: you still need UNETLoader (or the GGUF loader) to actually load it - the selector just decides which file. Wire is_gguf into a route that picks the right loader and you'll never accidentally feed a quant file to the wrong one again.

    Categorynifty/selectors

    Inputs (1)

    NameTypeDefaultDescription
    model_nameCOMBOSelect a diffusion model (.safetensors, .gguf, .pt, .pth, .bin) from the unet / diffusion_models folder.

    Outputs (2)

    NameTypeDescription
    model*
    is_ggufBOOLEANTrue if the selected model is a GGUF quantized file. Useful for routing to a GGUF-compatible loader.