KSampler Adv. (Efficient)
KSampler Adv. (Efficient)
- model
- positive
- negative
- latent_image
- optional_vae
- script
- MODEL
- CONDITIONING+
- CONDITIONING-
- LATENT
- VAE
- IMAGE
This is the advanced-controls sampler from the Efficiency pack - the same built-in preview and VAE-decode conveniences as KSampler (Efficient), but with the manual step-range knobs from ComfyUI's stock KSampler (Advanced). You reach for it when you want to split sampling across multiple passes: base then refiner, or a first pass that stops early and hands leftover noise to a second sampler.
If that "leftover noise" phrase means nothing to you yet, you probably want the regular KSampler (Efficient) instead. This one is for people who deliberately chain samplers.
Why it exists
A normal sampler runs from full noise to a clean image in one go. The advanced version lets you say "sample steps 0 through 15 here, and don't finish the job - pass the still-noisy latent to the next node." A second sampler then picks it up at step 15 and takes it home. That's how you do proper multi-model pipelines and certain hires setups. The Efficient version just adds the pack's live preview and inline decode on top so you're not building a decode branch.
The inputs that matter
add_noise-enableordisable. The first sampler in a chain enables it (it needs to inject noise to start); a second sampler continuing an existing latent usually disables it.start_at_step/end_at_step- the step window this sampler is responsible for. Default is0to10000(i.e. the whole run). For a two-pass split you'd set the first sampler to end early and the second to start where it left off.return_with_leftover_noise-enableon the first pass so it hands off a latent that isn't fully denoised; the next sampler finishes it. Disable it on the final pass.steps,cfg,sampler_name,scheduler- standard, and the same caveat applies: the sampler list is long and architecture matters - match the sampler to your model family rather than reusing an SD-era default blindly.preview_methodandvae_decode- preview style and whether to output a finishedIMAGE.
Outputs are the full pass-through set - MODEL, CONDITIONING+, CONDITIONING-, LATENT, VAE, IMAGE - which is what makes chaining painless: the second sampler pulls model, conditioning and VAE straight from the first. optional_vae and script inputs are there for a supplied VAE and for attaching scripts like XY Plot.
Installing it
ComfyUI Manager → Efficiency Nodes for ComfyUI, or:
cd ComfyUI/custom_nodes
git clone https://github.com/jags111/efficiency-nodes-comfyui
Restart after. Nothing extra to download.
Common issues
The single biggest source of confusion is the noise flags. If your two-pass output looks washed out, over-noisy, or just wrong, it's almost always add_noise and return_with_leftover_noise set inconsistently across the two samplers. Rule of thumb: first pass adds noise and returns leftover noise; last pass does neither. Get that pair right and the rest behaves.
If the node doesn't appear at all, that's the pack-level import problem - check the console for IMPORT FAILED, update ComfyUI and the packages, and update the node itself. This pack is also historically quick to break on ComfyUI frontend updates, and updating the node to the latest commit is the usual fix.
Inputs (17)
| Name | Type | Default | Description |
|---|---|---|---|
| model | MODEL | — | |
| add_noise | COMBO | 2 options: enable, disable | |
| noise_seed | INT | 00–18446744073709550000 | — |
| steps | INT | 201–10000 | — |
| cfg | FLOAT | 7.000–100 | — |
| sampler_name | COMBO | 44 options: euler, euler_cfg_pp, euler_ancestral, euler_ancestral_cfg_pp, heun, heunpp2, +38 | |
| scheduler | COMBO | 13 options: simple, sgm_uniform, karras, exponential, ddim_uniform, beta, +7 | |
| positive | CONDITIONING | — | |
| negative | CONDITIONING | — | |
| latent_image | LATENT | — | |
| start_at_step | INT | 00–10000 | — |
| end_at_step | INT | 100000–10000 | — |
| return_with_leftover_noise | COMBO | 2 options: disable, enable | |
| preview_method | COMBO | 4 options: auto, latent2rgb, taesd, none | |
| vae_decode | COMBO | 5 options: true, true (tiled), false, output only, output only (tiled) | |
| optional_vaeopt | VAE | — | |
| scriptopt | SCRIPT | — |
Outputs (6)
| Name | Type | Description |
|---|---|---|
| MODEL | MODEL | — |
| CONDITIONING+ | CONDITIONING | — |
| CONDITIONING- | CONDITIONING | — |
| LATENT | LATENT | — |
| VAE | VAE | — |
| IMAGE | IMAGE | — |