Adv KSampler Info
The advanced sampler knobs ComfyUI hides, pulled out onto their own node
- adv_sampler_info
ComfyUI's standard KSampler quietly hides four knobs behind "advanced" that a lot of workflows need eventually: whether to add noise, which step range gets denoised, and whether to force a full denoise. Adv KSampler Info takes those four settings and puts them on their own node, so you can tune them without digging through the sampler's advanced panel - and, more usefully, so they can live on a wire that both your sampler and your metadata see.
The four inputs are exactly the advanced sampler parameters, and the output is one ADV_SAMPLER_INFO bundle you plug into the Sage Utils KSampler family (KSampler w/ Sampler Info and friends):
add_noise(default true) - whether the sampler starts from noisy latents. Turn it off for img2img passes where you've already got a structured latent and don't want fresh noise.start_at_step(default 0) - the first step where denoising applies.end_at_step(default 10000) - the last step. Set this to stop denoising early and keep the latent rough - the classic trick for partially-denoised "latent soup" workflows.return_with_leftover_noise(default false) - when you stop early, whether to keep the residual noise rather than forcing a full denoise.
Mechanically the node just collects these into a dict and hands it to the sampler, which maps them onto ComfyUI's own disable_noise, start_step, last_step, and force_full_denoise sampler arguments. Nothing clever, but it's genuinely handy: the standard KSampler's advanced panel is easy to miss, and putting these on a visible node makes them hard to overlook when you're debugging why a pass isn't denoising the way you expected.
The real reason to use this over the built-in panel: metadata. Sage Utils is built around stamping A1111/Civitai-style metadata onto your images, and sampler settings are a first-class citizen there - Construct Metadata Flexible wants sampler_info input, and the pack's Sampler Info node feeds it seed, steps, cfg, sampler, and scheduler. The advanced values don't go into metadata the same way, but having every sampler knob on a wire means one consistent place to look at what a workflow actually ran.
The practical combo
Use it with Sampler Info (the base node with seed/steps/cfg/sampler/scheduler) and a KSampler w/ Sampler Info: base settings on one node, advanced settings on this one, both feeding the sampler, and one of them also feeding your metadata constructor. Clean, inspectable, and reproducible.
Install
ComfyUI Manager → search Sage Utils → install → restart. Manual:
cd ComfyUI/custom_nodes
git clone https://github.com/arcum42/ComfyUI_SageUtils.git
cd ComfyUI_SageUtils && pip install -r requirements.txt
Restart ComfyUI. No model files, no heavy deps - just dynamicprompts. If you never stop a denoise early or img2img from structured latents, you can happily skip this node and let the sampler's defaults (all on, full range, full denoise) stand.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| add_noise | BOOLEAN | true | Whether to add noise during sampling. |
| start_at_step | INT | 00–10000 | The first step at which to apply noise. |
| end_at_step | INT | 100000–10000 | The last step at which to apply noise. |
| return_with_leftover_noise | BOOLEAN | false | Return the extra noise if not fully denoised. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| adv_sampler_info | ADV_SAMPLER_INFO | The advanced sampler settings. |