ComfyUI Extension: ComfyUI-Sampler-Adaptive
Run ComfyUI workflows without the setup
No installs, no CUDA version roulette, no GPU sitting idle on your bill. Bring a workflow and run it in the browser.
Adaptive sigma scheduling custom node for ComfyUI. Dynamically adjusts step sizes during sampling based on how the denoising direction changes.
README
ComfyUI-Sampler-Adaptive
Adaptive sigma scheduling custom node for ComfyUI. Dynamically adjusts step sizes during sampling based on how the denoising direction changes.

See anima_00321_.png for an example workflow.
Known Limitations
- Ancestral samplers (e.g.,
euler_ancestral,dpmpp_2s_ancestral) do not work correctly at this time. - Samplers from RES4LYF are not supported.
- Multistep/stateful samplers (e.g.,
dpmpp_2m,lms,ipndm,dpmpp_2m_sde) are not supported. They will produce output equivalent to first-order samplers. Useeuler,heun,dpm_2, or other stateless samplers instead.
Parameters
- error_type: Cosine or MSE similarity for error calculation between steps
- base_step_size: Base multiplier for step size adaptation
- min_step_size: Minimum allowed step size
- max_step_size: Maximum allowed step size
- max_steps: Maximum number of adaptive steps
- smoothing_coef: EMA coefficient for step size updates. 0.0 = use only new calculated step size, 1.0 = keep previous step size unchanged, 0.5 = equal blend of old and new
- error_bias: Bias added to error value in step size calculation (default: 0.0). Higher values result in smaller step sizes.
How It Works
The adaptive sampler dynamically adjusts step sizes during sampling based on how much the "velocity" (direction of denoising) changes between steps:
-
Velocity Calculation: At each step, velocity is computed as
v = denoised - x(the direction the latent is moving) -
Error Measurement: The error is calculated by comparing the current velocity to the previous one:
- Cosine:
1 - |cosine_similarity(v_prev, v_current)|— measures directional change - MSE: Mean squared error between velocities — measures magnitude change
- Cosine:
-
Step Size Adaptation:
- High error (velocity changing rapidly) → smaller steps for more precision
- Low error (velocity stable) → larger steps for faster progress
- Formula:
new_step_size = base_step_size / (error + error_bias)
-
EMA Smoothing: The new step size is blended with the previous one to avoid sudden jumps:
step_size = smoothing_coef * old + (1 - smoothing_coef) * new
This allows the sampler to take fewer steps in "easy" regions and more steps where the denoising direction is changing rapidly.
Notes
This node has been mainly tested with the Anima model. Results may vary with other models.
Run ComfyUI workflows without the setup
No installs, no CUDA version roulette, no GPU sitting idle on your bill. Bring a workflow and run it in the browser.