Nodes/ComfyUI/ModelNoiseScale
ComfyUI Node Runs on cloud

ModelNoiseScale

The tiny patch that tells pixel-space models how noisy they were trained

By Comfy-Org·Created 4 years ago·Updated 20 days ago· 121,575
ModelNoiseScale
  • model
  • MODEL
noise_scale1.00

ModelNoiseScale is a one-number patch that fixes a mismatch nobody outside the pixel-space world ever had to think about: the scale at which a model was trained to add noise. Its tooltip gives you the whole plot - "Absolute training noise scale. For example HiDream-O1 base: 8.0, dev: 7.5." You set the number to what the checkpoint was trained with, and the sampling schedule behaves the way the trainer intended.

You'll meet this node almost exclusively in HiDream-O1 workflows, and you'll meet it because the model demands it. HiDream-O1 is the pixel-space architecture - no VAE, raw pixels, native 2048x2048 - and it carries an unusually high absolute noise scale (8.0 for the base, 7.5 for dev) compared to latent models. ComfyUI's default sampling assumes the standard scale, and if you don't correct it you get renders that don't match the training distribution - off-color, off-contrast, subtly wrong. This node is the correction, and it's part of why those O1 workflows include it as a matter of course.

How it works

The node clones the model, takes its existing model_sampling object, and rebuilds it with the same parameters (shift, multiplier) but a new noise scale set from your input. It then swaps that sampling object back onto the model. In other words: it preserves everything about the schedule you already have and only corrects the noise scale that the model was trained against.

That's also the important design detail - this isn't "set a noise level" in the creative sense. noise_scale is an absolute training constant for a specific checkpoint. It's metadata, not a slider. HiDream-O1 base trained at 8.0; dev trained at 7.5; those are the values you enter, not 1.2 or 4.5 that happen to look nice. If a workflow author tells you a different number for a different model, trust the checkpoint's own documentation over your eyes.

Inputs and what to set

  • model - the model whose sampling to correct.
  • noise_scale - float, default 1.0, range 0-64. Set it to the checkpoint's training noise scale: 8.0 for HiDream-O1 base, 7.5 for dev. The default of 1.0 is the neutral "latent model" value - you're expected to change it for O1.

Output is the patched MODEL for the sampler. It's built into ComfyUI core, no files to download.

Common issues & troubleshooting

The default 1.0 is wrong for HiDream-O1 - change it. If an O1 workflow renders oddly and this node is sitting at 1.0, that's your bug. Set 8.0 (base) or 7.5 (dev) per the tooltip.

It's per-checkpoint, not per-preference. This is the node people misuse by tuning the number "until it looks good." Don't. The whole point is to enter the training constant. If output still looks off after setting the right value, the problem is elsewhere (steps, shift, CFG), not the noise scale.

It preserves your other sampling patches. Because it rebuilds the sampling object with the existing shift/multiplier intact, it plays well after ModelSamplingAuraFlow or similar. Chain it after those, not before.

Categorymodel/patch

Inputs (2)

NameTypeDefaultDescription
modelMODEL
noise_scaleFLOAT1.000–64Absolute training noise scale. For example HiDream-O1 base: 8.0, dev: 7.5.

Outputs (1)

NameTypeDescription
MODELMODEL