HiDream O1 Detailer Sampling Provider (Umbra)
HiDream O1 detail crops need LCM-style sampling — this provider does the legwork
- model
- sampling_provider
HiDream's models are famously heavy, and the O1 generation (the pixel-space family HiDream.ai opened under MIT in 2026, per the KB's panel) samples in a way that needs two things stock detailers won't give you: a noise-scale patched model and an LCM-style sampler with its own noise schedule. HiDream O1 Detailer Sampling Provider (Umbra) packages both into a single sampling_provider for the Image Detailer, so each detail crop gets the sampling HiDream O1 actually wants instead of a generic pass.
How it works
When you wire this into the Image Detailer's sampling_provider input, the provider takes over per-crop sampling:
- ModelNoiseScale patch - the
noise_scaleinput (default 7.5, range 0–64) patches the model's noise scale before sampling. This is the HiDream-specific adjustment that aligns the model's internal noise handling with your sampling setup; if crops come back undercooked or overcooked, this is the first dial. - CFG guider - unlike Flux-style no-CFG sampling, HiDream O1 keeps a classic
CFGGuiderwith positive, negative, and CFG (the CFG value comes from the detail stage's crop context, so set it on the stage). - LCM sampler with noise clipping - sampling runs through ComfyUI's LCM sampler, and the three noise inputs (
s_noise,s_noise_end, both default 1.0, range 0–64) plusnoise_clip_std(default 2.5) control the noise schedule and its standard-deviation clamp. These are the knobs that tame the LCM-style noise behavior on a model that's sensitive to it. - Scheduler - the
schedulerdropdown (9 options, defaultnormal) builds the sigmas for each crop at the stage's step count and denoise.
Inputs: model, noise_scale, scheduler, s_noise, s_noise_end, noise_clip_std. Output: sampling_provider → Image Detailer.
How to use it
- Load your HiDream O1 model (and CLIP/VAE for the detailer).
- Add this node, wire the model in. Start with the defaults - 7.5 noise scale, s_noise 1.0/1.0, clip 2.5 - and only adjust once you see results.
- Add
Image Detailer (Umbra UI), wire everything including this node'ssampling_providerinto itssampling_providerinput. - Run and inspect. Noise-parameter tuning is iterative: if crops look too smooth/latent-y, raise
noise_scaleors_noise; if they look noisy or scrambled, lower them or tightennoise_clip_std.
Installing it
Part of Umbra-Nodes, the ComfyUI companion pack for Umbra Studio (NocturneLabs' open-source local AI suite). ComfyUI Manager → search "Umbra Nodes", or:
cd ComfyUI/custom_nodes
git clone https://github.com/Nocturne-Ai-Labs/Umbra-Nodes
Restart ComfyUI. The detailer still requires Impact Pack + Impact Subpack and the detector/SAM model files from the Image Detailer article.
Gotchas
These noise parameters are real and they matter, but they're also the fiddliest inputs in the whole pack - expect to tune them per model version. Start at defaults, change one variable at a time, and write down what worked. And remember HiDream O1 is a pixel-space model, which is exactly why it needs this non-standard path; if you force it through a stock detailer pass you'll get the "works but clearly not right" look that makes people blame the model. The provider also assumes the stage-level CFG is set sanely - it feeds the guider directly.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| model | MODEL | — | |
| noise_scale | FLOAT | 7.500–64 | — |
| scheduler | COMBO | normal | 9 options: simple, sgm_uniform, karras, exponential, ddim_uniform, beta, +3 |
| s_noise | FLOAT | 1.000–64 | — |
| s_noise_end | FLOAT | 1.000–64 | — |
| noise_clip_std | FLOAT | 2.500–10 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| sampling_provider | UMBRA_DETAILER_SAMPLING_PROVIDER | — |