Load Diffusion Model (Model Manager)
Same loader as the checkpoint one — but for the Diffusion Model bucket on your server
- model
- clip
- vae
If you've looked at Load Checkpoint (Model Manager), this node looks like a copy-paste, and honestly it is - on purpose. Load Diffusion Model (Model Manager) does exactly the same thing, but it pulls from the server's "Diffusion Model" category instead of its "Checkpoint" one. Whether you ever need it depends entirely on how your Model Manager server organizes its library.
Why two loaders that do the same thing?
A checkpoint is a full bundle - UNet, CLIP text encoder, and VAE all in one file, which is why the core Load Checkpoint node hands you three outputs. Some model servers classify files that way, but others split things out: the UNet weights go under "Diffusion Model", the text encoder under its own thing, and so on. This node exists to load from that bucket.
The practical upshot: on servers that do use a Diffusion Model category, you'll reach for this instead of the checkpoint loader when you want a specific UNet. On servers that don't, the dropdown just shows (no models found) and you should stick with the checkpoint node. So don't assume you need both - pick whichever matches your server's layout and use it consistently.
How it works
Mechanically it's identical to its sibling: one input, diffusion_model, an enum populated from the server (modelId@versionId:name entries), showing (not connected) until you authenticate. On run it downloads the file on demand with a progress bar, caches it in ComfyUI/models/model_manager_cache/diffusion_models/, then loads it with ComfyUI's checkpoint-guess loader - which is why the outputs are model, clip, and vae, all three, even from a "diffusion model" file. If your file is UNet-only, ComfyUI still returns the model slot and a best-effort clip/vae; wire what you need.
The IS_CHANGED hook tracks the connection version, so your dropdown refreshes when the server's model list changes. Cache behavior is the same as the whole pack: first use downloads, every use after is a local hit.
Install
Via ComfyUI Manager (search comfyui-model-manager-nodes) or:
cd ComfyUI/custom_nodes
git clone https://github.com/blackpaw-studio/comfyui-model-manager-nodes
cd comfyui-model-manager-nodes
pip install -r requirements.txt
Restart, then connect: click Connect to Model Manager on the node, enter API URL + key. It saves to config.yaml, or you can set MODEL_MANAGER_API_URL / MODEL_MANAGER_API_KEY env vars (which take priority). Dependencies are just requests and pyyaml - nothing heavy.
Troubleshooting
- Dropdown says
(not connected). Connect first. A 401 (bad key) keeps the dropdown dead - re-check the key on the server. - Dropdown says
(no models found). Your server has nothing in the Diffusion Model category. Use the checkpoint loader instead, or upload models to the right bucket. (error loading models)- the API call failed; the server's up? URL correct?
The one-line summary: reach for this only when your server keeps UNet weights in a separate Diffusion Model bucket. Otherwise the checkpoint loader does the same job.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| diffusion_model | COMBO | 1 options: (not connected) |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| model | MODEL | — |
| clip | CLIP | — |
| vae | VAE | — |