Nodes/comfyui-ysnodes/Sigma Generator
ComfyUI Node

Sigma Generator

Drive SamplerCustom without the three-node sigmas dance

By MrYassinox·Created 2 months ago·Updated about a month ago· 1
Sigma Generator
  • model
  • SIGMAS
  • SAMPLER
sampler_name
scheduler
steps4
skip_start_step0
denoise1.00

Every serious sampler workflow eventually bumps into SamplerCustom, because it's the one that lets you control the sigma schedule directly instead of trusting a KSampler's black box. The stock way to feed it is a three-node chain - KSamplerSelect for the sampler, BasicScheduler for the sigmas, SplitSigmas if you want to start partway through. Sigma Generator (from comfyui-ysnodes) is all three in one box: it outputs a SAMPLER and a SIGMAS pair that plug straight into SamplerCustom's sampler and sigmas inputs.

Quick orientation if you're new to the term: the sampler is the algorithm that removes noise step by step, and the scheduler (a.k.a. noise schedule) decides how much noise each step removes. ComfyUI keeps them as separate widgets; A1111-style UIs fuse them into names like "DPM++ 2M Karras." This node gives you the same two knobs, plus the ability to slice the schedule.

How it works

Straight-line replication of the core subgraph:

  1. sampler_name → builds the sampler object via comfy.samplers.sampler_object(). 44 choices, from euler to the dpmpp_* family.
  2. scheduler + steps + denoisecalculate_sigmas() builds the full schedule. Nine schedulers: simple, sgm_uniform, karras, exponential, ddim_uniform, beta, normal, linear_quadratic, kl_optimal.
  3. skip_start_step → slices off that many leading sigma steps, exactly like SplitSigmas. 0 keeps everything.

denoise below 1.0 shortens the effective run - 0.5 with 20 steps gives you ~10 - which is how you do img2img-style partial redraws through this node without a separate math step.

The input that's a trap

steps defaults to 4. That default is great for distilled low-step models (Flux 2 Klein runs 4–8 steps happily) and actively wrong for everything else - SD 1.5/SDXL wants 20–30, Flux Dev wants 20–30 with euler and a conservative scheduler, and Karras is a bad idea on flow-matching models even though it's the SD/SDXL safe default. If your first run with this node looks like a watercolor smear, check steps before you blame the sampler. The node has no idea which model family you're on; it's just handing you the knobs.

Outputs

  • SIGMAS - the sliced low-sigmas schedule. Wire to SamplerCustom's sigmas.
  • SAMPLER - the sampler object. Wire to SamplerCustom's sampler.

Remember SamplerCustom also needs model, positive, negative, latent_image, and noise_seed - this node handles only the sampling-machinery half.

Installing it

Part of the zero-dependency comfyui-ysnodes pack - no models, no extra packages.

cd ComfyUI/custom_nodes
git clone https://github.com/MrYassinox/comfyui-ysnodes.git

or search comfyui-ysnodes in ComfyUI Manager, restart, and it's under YSNodes/sampling.

When you'd actually use skip_start_step

This is the node's party trick and the reason to pick it over a plain BasicScheduler. Skipping leading sigma steps starts sampling from a partially-denoised state - a crude but effective way to do refines and img2img-ish passes where you want to continue from where an earlier schedule stopped. It's also a way to test how much of the trajectory actually matters for your result, since you can peel off steps and watch the composition hold or fall apart. Just keep in mind that it's a small personal pack's convenience wrapper over core nodes - if a workflow already has the three nodes wired up, there's no functional reason to swap them out. This is for the graphs where one box beats three.

CategoryYSNodes/sampling

Inputs (6)

NameTypeDefaultDescription
modelMODEL
sampler_nameCOMBO44 options: euler, euler_cfg_pp, euler_ancestral, euler_ancestral_cfg_pp, heun, heunpp2, +38
schedulerCOMBO9 options: simple, sgm_uniform, karras, exponential, ddim_uniform, beta, +3
stepsINT41–10000
skip_start_stepINT00–10000How many leading sigma steps to skip (SplitSigmas 'step' input). 0 = keep all sigmas.
denoiseFLOAT1.000–1Denoising strength — values < 1.0 reduce effective steps (e.g., 0.5 with 20 steps → 10 steps)

Outputs (2)

NameTypeDescription
SIGMASSIGMAS
SAMPLERSAMPLER