Nodes/was-node-suite-comfyui/Diffusers Hub Model Down-Loader
ComfyUI Node Runs on cloud

Diffusers Hub Model Down-Loader

Pull a HuggingFace diffusers model straight into your graph

By WASasquatch·Created 3 years ago·Updated 2 days ago· 1,839
Diffusers Hub Model Down-Loader
    • MODEL
    • CLIP
    • VAE
    • NAME_STRING
    repo_id
    revisionNone

    Most ComfyUI model loading assumes you already have a file sitting in a models/ folder. Diffusers Hub Model Down-Loader skips that step: you give it a HuggingFace repo, and it downloads the model and loads it in the same node, no separate git clone or manual file placement first. The README's own one-liner is blunt about it: "Download a diffusers model from the HuggingFace Hub and load it."

    The important word there is diffusers. This isn't pulling down a single .safetensors checkpoint the way most ComfyUI loaders do - the diffusers format is HuggingFace's own multi-file pipeline layout (separate subfolders for UNet, text encoder, VAE, scheduler config, and so on), the format their diffusers Python library expects. WAS built its own loading path for that format specifically, which predates ComfyUI's now-common practice of just using single-file checkpoints for everything.

    What it's for

    Reaching for a model that's only published in HuggingFace's diffusers layout - not everything ships as a convenient single-file checkpoint, and some models never get an unofficial single-file conversion floating around. This node lets you use one directly by repo ID instead of hunting for a converted version or hand-assembling the diffusers folder structure yourself.

    How it works

    You point it at a HuggingFace repo, it downloads the diffusers-format files (caching them locally so it doesn't re-download every run) and loads them into a diffusers pipeline object your graph can use. Because that's a different object shape than ComfyUI's native MODEL/CLIP/VAE sockets, expect it to feed WAS's own diffusers-aware nodes rather than a standard KSampler chain - this is its own lane, not a drop-in replacement for the checkpoint loader you're used to.

    How to install it

    ComfyUI Manager: search "WAS Node Suite," install, restart. Manual:

    cd ComfyUI/custom_nodes
    git clone https://github.com/WASasquatch/was-node-suite-comfyui
    

    then, inside that folder, install requirements - path/to/ComfyUI/python_embeded/python.exe -s -m pip install -r requirements.txt on portable, pip install -r requirements.txt on system Python. Restart ComfyUI; look under WAS Suite. Nothing extra to configure for the node itself, but budget disk space and time for the first run - it's downloading a full model, and diffusers repos tend to be several files spread across gigabytes rather than one compact checkpoint.

    Common issues & troubleshooting

    A slow or stalled first run is normal, not broken - you're pulling a full diffusers repo over the network, and depending on the model that can be a large multi-file download. Give it time before assuming something's wrong, and check your disk space if it fails partway.

    Gated or access-restricted HuggingFace repos are a real trap here, and not specific to this node: if the model requires accepting a license on the HuggingFace website first, an anonymous or unauthenticated download will typically fail or come back with unexpectedly empty files rather than a clear "access denied" - the fix is accepting the license on huggingface.co with the account you're authenticating as, not retrying the download.

    Beyond that, this node carries the pack's general risk: WAS Node Suite has had no active development since the author marked it retired in December 2023. A loader built against an older version of the diffusers library is exactly the kind of thing that can quietly stop working as that library evolves, with no one upstream fixing it. If the whole suite fails to import after a ComfyUI update, re-run the requirements install with your embedded Python interpreter specifically - that's the fix that's worked for people, not a system Python.

    CategoryWAS Suite/Loaders

    Inputs (2)

    NameTypeDefaultDescription
    repo_idSTRINGThe Hugging Face repository to fetch, owner and name, such as 'stabilityai/stable-diffusion-2-1'. It must be a diffusers-format repository: one holding unet, vae and text_encoder folders. Fetching needs features.network on in config.yaml; without it, a repository already in models/diffusers still loads.
    revisionSTRINGNoneBranch, tag or commit to fetch, such as 'fp16' or 'refs/pr/2'. Leave it as 'None' for the repository's default branch, which then means the files can change under a saved workflow; a commit hash pins them.

    Outputs (4)

    NameTypeDescription
    MODELMODELThe diffusion model, for a sampler.
    CLIPCLIPThe text encoder, for the prompt encoding nodes.
    VAEVAEThe autoencoder that turns a latent into an image.
    NAME_STRINGSTRINGThe repository id that was loaded, for captions, file names and log lines.