Ino Load Diffusion Model
Load a UNET by path, not by dropdown — the model loader for automated pipelines
- success
- message
- model
Every ComfyUI workflow starts the same way: pick a model out of a dropdown, drag the wire, hope the file you want is there. That works until you want a machine to decide which model to load - say, a batch job that pulls a checkpoint from S3, or a pipeline that switches architectures per run. InoLoadDiffusionModel exists so you can load a diffusion model by path string instead of by menu, which means the path can come from anywhere in your graph: a text field, a previous node's output, a download node, a CSV lookup.
The name is a bit loose - "diffusion model" here means what ComfyUI calls a UNET/diffusion model: the standalone denoiser weights you load separately from the CLIP and VAE on the newer architectures (Flux, and the whole post-SDXL generation of models). If you're on classic checkpoints that bundle everything in one file, you'd use a different loader; this one is for the split-model setup.
How it works
It's a thin wrapper around ComfyUI's own UNETLoader, which is exactly the mechanism native Load Diffusion Model uses. The inputs that matter:
model_path- the file path relative toComfyUI/models/diffusion_models/, e.g.flux1dev/flux1-dev.safetensors. Because it's a string, you can build or fetch it dynamically - that's the whole point of this node.unet_weight_dtype- optional;default,fp8_e4m3fn,fp8_e4m3fn_fast, orfp8_e5m2. The fp8 options load the model quantized, which is how people run the big 12GB+ models on cards that wouldn't otherwise hold them. fp8 is essentially the "Q8" of diffusion weights - if it fits and you don't need the last drop of quality, just use it.enabled- a master toggle every Ino node carries. Flip it off and the node returnssuccess: False, "not enabled"and a null model instead of throwing.
Outputs: success (BOOLEAN), message (STRING - "diffusion loaded", or the exception text on failure), and model (MODEL), which you wire straight into your sampler or LoRA chain.
Installing it
This is one of 125+ nodes in the ComfyUI-InoNodes pack by nobandegani:
cd ComfyUI/custom_nodes
git clone https://github.com/nobandegani/comfyui_ino_nodes
cd comfyui_ino_nodes
pip install -r requirements.txt
Or search "ComfyUI Ino Nodes" in ComfyUI Manager and restart. The pack pulls in inopyutils, openai, huggingface_hub, and hf_xet as dependencies. It's built on ComfyUI's V3 schema, so update ComfyUI if you get import errors.
Where people get burned
The path must be relative to models/diffusion_models/, not absolute. If you wire model_path straight from Ino S3 Download Model or a download node, check what it's actually outputting - this loader expects the folder-relative name, while some of the pack's download nodes hand you absolute paths. Getting an exception in message usually means the file isn't where the node expects it. The enabled toggle is your friend during testing: flip it off to skip the load and the rest of the graph still runs with a null model you can gate on.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| enabled | BOOLEAN | true | — |
| model_path | STRING | — | |
| unet_weight_dtypeopt | COMBO | 4 options: default, fp8_e4m3fn, fp8_e4m3fn_fast, fp8_e5m2 |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| success | BOOLEAN | — |
| message | STRING | — |
| model | MODEL | — |