π¦ Load Diffusion Model (Triggered)
Load your UNet with fp8 and a trigger β the serverless-friendly way
- trigger
- model
- memory_stats
This is the model half of the pack's triggered-loader family. Where Load Dual CLIP and Load CLIP handle text encoders, ArchAi3D Load Diffusion Model loads the UNet/diffusion model itself - with a weight_dtype dropdown for fp8, a trigger input for execution order, and the same DRAM-cache + VRAM-pin memory system as its siblings.
The two required inputs are unet_name (picks from your models/diffusion_models folder) and weight_dtype. The dtype options are the modern menu: default, fp8_e4m3fn, fp8_e4m3fn_fast, and fp8_e5m2. If you're not sure which to pick: fp8 is roughly half the VRAM of fp16 at a quality cost most people can't see, and fp8_e4m3fn is the community-standard pick. Only use default when the model is already quantized or you have the VRAM to burn.
Why "Triggered"
The trigger input lets another node's output force this loader to run after it. The pack's docs describe the exact use: run a QwenVL server/control node first, then load the diffusion model so it lands on the GPU at the right moment instead of hogging it during pre-processing. In practice it's the tool for the "I need this 20GB model on VRAM exactly when the sampler starts, not a second before" pattern.
The memory panel is the same one across the loader family:
keep_on_vram- pin the model to VRAM, skip the cache. For light models that fit next to your CLIPs. The loader auto-unpins when you switch model names.use_dram(default on) - cache the model in system RAM between runs. Reload in ~1s instead of 10-30s from disk.replace_cached- evict this loader's previous model from DRAM when you switch. Off if you want multiple big models cached (you need serious RAM for that).cache_to_local_ssd- RunPod-only: copy from network storage to local NVMe. No effect on a home PC.auto_free_vram/auto_free_dram+ theirmin_free_*_gbthresholds - the serverless safety nets. Before a disk load, if free VRAM/RAM drops below the threshold, they unpin/evict to make room. Off by default, because on a normal desktop ComfyUI's own management usually handles it.
Outputs
model (MODEL) goes straight into your sampler's model input. memory_stats (STRING) is the cache/VRAM status report - pipe it to a text node if you're debugging why a run feels slow.
Installation
Part of ComfyUI-ArchAi3d-Qwen. ComfyUI Manager ("ArchAi3d Qwen") or:
cd ComfyUI/custom_nodes/
git clone https://github.com/amir84ferdos/ComfyUI-ArchAi3d-Qwen.git
cd ComfyUI-ArchAi3d-Qwen
pip install -r requirements.txt
Restart β node under ArchAi3d/Loaders. Same license caveat as the whole pack: free personal, paid commercial.
Where people get burned
keep_on_vram and a 20GB model on an 8GB card is a one-way ticket to an OOM - the tooltip says "good for light models," and it means it. The DRAM cache is great until it isn't: caching two or three 15GB models in system RAM will make your whole machine crawl, which is exactly what replace_cached prevents. And the fp8 note from the wider ComfyUI ecosystem applies: some models are already shipped quantized, and re-wrapping them in fp8 gains nothing. If your dropdown ever shows an empty list, drop a model into ComfyUI/models/diffusion_models first.
Inputs (11)
| Name | Type | Default | Description |
|---|---|---|---|
| unet_name | COMBO | 0 options: | |
| weight_dtype | COMBO | 4 options: default, fp8_e4m3fn, fp8_e4m3fn_fast, fp8_e5m2 | |
| triggeropt | * | Connect to any output to ensure this node runs after that node completes | |
| keep_on_vramopt | BOOLEAN | false | Keep model on GPU VRAM permanently. Skips all DRAM cache logic. Good for light models that fit in VRAM. |
| use_dramopt | BOOLEAN | true | Check DRAM cache for previously offloaded model. Much faster than disk reload. |
| replace_cachedopt | BOOLEAN | true | When switching models, evict THIS loader's previous model from DRAM first. Saves RAM. Turn off to keep multiple models cached (needs lots of RAM). |
| cache_to_local_ssdopt | BOOLEAN | true | RunPod: copy model to local SSD for faster loading. No effect on local PC. |
| auto_free_vramopt | BOOLEAN | false | Before loading: if free VRAM is below threshold, unpin all models and let ComfyUI free VRAM. |
| min_free_vram_gbopt | FLOAT | 10.00β80 | Minimum free VRAM (GB) required. If below this, auto-free kicks in. |
| auto_free_dramopt | BOOLEAN | false | Before loading: if free RAM is below threshold, clear DRAM cache to free system memory. |
| min_free_dram_gbopt | FLOAT | 100β256 | Minimum free RAM (GB) required. If below this, DRAM cache is cleared. |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| model | MODEL | β |
| memory_stats | STRING | β |