Nodes/RES4LYF/Sigmas AdaptiveNoiseFloor
ComfyUI Node Runs on cloud

Sigmas AdaptiveNoiseFloor

A noise floor that reacts to the schedule instead of a fixed number

By ClownsharkBatwing·Created 2 years ago·Updated 22 days ago· 1,222
Sigmas AdaptiveNoiseFloor
  • sigmas
  • SIGMAS
min_noise_level0.010
adaptation_factor0.50
window_size3

This one sits next to Sigmas Cleanup conceptually - both are about the very bottom of a noise schedule, the last few steps where sigma approaches zero - but where Cleanup enforces one fixed minimum value, AdaptiveNoiseFloor lets that floor move based on how the schedule is already behaving near the end.

Why the noise floor matters

The last stretch of a diffusion schedule is delicate. Push the final sigmas too low and some samplers get numerically unstable or waste steps doing next to nothing; clamp them too aggressively with a flat floor and you can lose fine detail the model would otherwise still be resolving. A single fixed minimum, like Sigmas Cleanup uses, is a blunt instrument - it applies the same cutoff regardless of how steep or gentle your schedule's tail already is.

How it works

Going by the four knobs it exposes: it looks at a trailing window_size-step slice of the schedule, and uses that local behavior to decide how far the actual floor can move away from min_noise_level, scaled by adaptation_factor. A larger window looks further back before deciding; a higher adaptation factor lets the floor drift further from the flat minimum in response to what it sees. This isn't documented anywhere in the pack, so take that as an informed reading of the parameters rather than a confirmed spec - there's no README section or community write-up covering this node specifically.

The inputs and outputs that matter

  • sigmas (SIGMAS, required) - the schedule to adjust.
  • min_noise_level (default 0.01, range 0–1) - the absolute lower bound; nothing in the output should go below this regardless of what the adaptive logic decides.
  • adaptation_factor (default 0.5, range 0–1) - how much the floor is allowed to move in response to the windowed analysis; 0 should behave close to a flat floor at min_noise_level, higher values let it adapt more.
  • window_size (default 3, range 1–10) - how many trailing steps feed the adaptation.

Output is a single SIGMAS list, same shape as the input.

How to install it

  • ComfyUI Manager - search "RES4LYF", install, restart.
  • Manual - activate your venv, cd ComfyUI/custom_nodes && git clone https://github.com/ClownsharkBatwing/RES4LYF, cd RES4LYF, pip install -r requirements.txt (portable builds use the embedded pip.exe). Restart.

Common issues & troubleshooting

No documented default behavior to fall back on. This isn't in the README, and I found no community discussion of anyone using it. If your final frames look either muddy and oversmoothed or still visibly noisy compared to a stock schedule, that's the signal to nudge min_noise_level or adaptation_factor - but there's no established starting point beyond the node's own defaults.

Small window_size plus a jagged input can make the floor swing around unpredictably. If you've built your schedule from other sigma-math nodes upstream (chaos generators, arc-trig reshaping) rather than a stock scheduler, the trailing steps it's adapting from may already be irregular, which will feed straight into this node's decisions. Consider smoothing with Sigmas CatmullRom first if the tail looks rough before layering an adaptive floor on top of it.

Sanity-check before a full render. As with the rest of this toolbox, wire in Sigmas Count and preview the actual values rather than trusting the transform blind - there's no community track record here to reassure you it's doing what you expect.

CategoryRES4LYF/sigmas

Inputs (4)

NameTypeDefaultDescription
sigmasSIGMAS
min_noise_levelFLOAT0.0100–1
adaptation_factorFLOAT0.500–1
window_sizeINT31–10

Outputs (1)

NameTypeDescription
SIGMASSIGMAS