HiDream O1 Model Loader
The only loader HiDream O1 needs — there's no VAE and no CLIP to load
- model
Every workflow in this pack starts here, and it's where the pixel-space weirdness begins. HiDream O1 is an 8B model that operates directly on raw pixels - no VAE to decode, no CLIP to encode your prompt. So this one node is doing the job a normal SDXL or Flux graph spreads across three loaders. If you've loaded a workflow for this model and been told something is "missing," this is what was meant: there's nothing to load but this.
What it does
HiDreamO1ModelLoader takes a HiDream O1 folder from ComfyUI/models/diffusion_models/ and hands you a model handle (type HIDREAM_O1_MODEL) that the LoRA, Dev Smoothing, and Sampler nodes all understand. It's a loader in the strict sense - it reads the weights, pins a dtype and an attention backend, and manages the model in memory.
The dropdown always shows the nine built-in choices: Full, Dev, and Dev-2604 in BF16/FP16/FP8. That list is fixed - the loader isn't a generic file picker. If the one you pick isn't installed locally and you've ticked download_if_missing, it downloads the whole thing into models/diffusion_models. Leave that box off (it's off by default) and it just raises a clean "not installed" error instead.
The inputs that matter
model_name- which variant. Full is the better editor and the more realistic generator; Dev is the distilled 28-step model that's faster and, per the README, cleaner about grid artifacts. Dev-2604 is the text-to-image-focused checkpoint.precision-autodetects the storage dtype straight from the safetensors. BF16 and FP16 are 18–20 GB; FP8 is 10–11 GB and computes in BF16 on capable GPUs, so it's the sensible default on a 16 GB card.attention-autouses FlashAttention if it's installed, otherwise SDPA.flashrequires FlashAttention "Optimal";sagerequires thesageattentionpackage. On the reviewer scale,autois the correct answer for 95% of people.download_if_missing- the self-service download flag.
Installing it
ComfyUI Manager: search HiDream O1. Or manually:
cd ComfyUI/custom_nodes
git clone https://github.com/Saganaki22/HiDream_O1-ComfyUI.git
cd HiDream_O1-ComfyUI
python -m pip install -r requirements.txt
Restart ComfyUI. The dependencies are the heavy lift: transformers (4.57.1–5.3 is the suggested window), diffusers, accelerate, safetensors, plus torch/torchvision you already have. The node warns you if it detects PyTorch 2.9.x, which upstream flags as bad for Qwen3-VL. People in the release thread grumbled about "so much dependencies" - most of these are already in ComfyUI or shared with other nodes, but transformers is the one to keep an eye on.
Where people get burned
The model download. You need the entire Hugging Face folder, not just the .safetensors:
config.json
chat_template.json
generation_config.json
preprocessor_config.json
tokenizer.json
tokenizer_config.json
vocab.json
merges.txt
model.safetensors
Drop that whole folder at ComfyUI/models/diffusion_models/HiDream-O1-Image-fp8/ (matching is case-insensitive). Skip the support files and you'll get cryptic tokenizer or config errors that look nothing like "you forgot files." And one rule worth tattoo-level commitment: do not set config.json's dtype to float8_e4m3fn - the loader detects FP8 from the actual tensors, and forcing it at the config level makes transformers try to use FP8 as the global default dtype, which fails. Keep it bfloat16.
Wire the model output into HiDream O1 LoRA or HiDream O1 Dev Smoothing, then into HiDream O1 Sampler. That's the whole pipeline.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| model_name | COMBO | HiDream-O1-Image-BF16 | HiDream O1 model choice. Converted Full/Dev BF16, FP16, FP8, and Dev-2604 entries are always shown; missing entries download only when download_if_missing is enabled. |
| precision | COMBO | auto | Weight precision to load. Default: auto detects the safetensors dtype. FP16/FP8 weights use BF16 compute on BF16-capable GPUs to avoid NaNs. |
| attention | COMBO | auto | Attention backend. Default: auto uses FlashAttention when installed, otherwise SDPA. Use sage only if sageattention is installed. |
| download_if_missing | BOOLEAN | false | Default: false. If the selected canonical model is missing locally, enabling this downloads that selected model into models/diffusion_models. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| model | HIDREAM_O1_MODEL | — |