Nodes/AUN ComfyUI Nodes/AUN KSampler PlusV3
ComfyUI Node

AUN KSampler PlusV3

A whole progressive upscale chain in one node

By loz2754·Created 8 months ago·Updated about 15 hours ago· 5
AUN KSampler PlusV3
  • vae
  • model
  • positive
  • negative
  • latent_image
  • Base image
  • Image upscaled
  • Latent upscaled
  • Both upscaled
  • Refined image
  • LATENT
  • Upscaled type
seed0
steps_total30
steps_first12
start_step_second0
cfg8.0
cfg_latent_upscale8.0
sampler_name
scheduler
denoise1.00
latent_upscaletrue
upscaling_denoise0.61
upscale_method
ratio1.50
image_upscalefalse
image_upscale_method
image_upscale_model
image_upscale_ratio1.50
image_upscale_refinefalse
img_refine_steps4
img_refine_denoise0.25
verbosefalse

AUN KSampler Plus (that's the AUNKSamplerPlusv3 class) is the pack's answer to one of the most common ComfyUI questions of all: "how do I do the hi-res fix without a spaghetti of nodes?" The hi-res fix - generate at native resolution, upscale, re-sample at low denoise to add coherent detail - is still the right move for generating above native resolution, and this node runs the whole chain in a single KSampler: base pass, latent upscale, second pass, optional pixel-space upscale, optional final refinement. Five images come out the other side, and you pick the one you wanted.

How it works

The flow is progressive, and worth internalizing because the outputs are named after its stages:

  1. Base image - first pass, your normal generation (denoise 1.0 for txt2img).
  2. Latent upscaled - the latent is upscaled (bicubic is the recommendation) by ratio, then re-sampled for a second pass.
  3. Both upscaled - the decoded latent is pixel-upscaled, then re-sampled again mirroring the second pass's schedule. This is the "proper" hi-res-fix result.
  4. Refined image - optional: re-encode and re-sample a chosen source with img_refine_steps / img_refine_denoise if you enabled image_upscale_refine.

The Upscaled type string output reports which one you ended up with - wire it into a filename builder so your saved file names itself honestly. You also get the final LATENT and each stage's image.

Inputs that matter

The full list is long; the ones a beginner actually tunes:

  • steps_total and steps_first - total steps split between passes. steps_first is your base-pass steps.
  • latent_upscale (on by default) and ratio (1.5–2.0 typical) - the core of the progressive feature.
  • upscaling_denoise - second-pass denoise. The tooltip's guidance of 0.5–0.7 is in line with hi-res-fix practice, but remember the rule from the upscaling world: below 0.5 keeps composition tighter, higher changes more.
  • start_step_second - -1 uses the denoise fraction, 0 restarts at step 0, steps_first continues where pass one left off.
  • cfg vs cfg_latent_upscale - separate CFG for each pass, so you can drop CFG on the upscale leg.
  • image_upscale / image_upscale_method / image_upscale_model / image_upscale_ratio - the pixel-space leg. Lanczos for photos, nearest for pixel art; pick an AI upscale model if you want it.
  • verbose - prints per-pass logs and timings, which is exactly what you want while you're learning what each stage does.

Recommended pairing per the tooltips: DPM++ 2M with Karras, and AYS schedulers work well with the progressive schedule.

Installing it

Part of the AUN pack:

  • ComfyUI Manager: search "AUN ComfyUI Nodes", install, restart.
  • Manual: cd custom_nodes && git clone https://github.com/loz2754/AUN-ComfyUI-Nodes, then restart.

Hand installs hitting ModuleNotFoundError: cv2? pip install -r custom_nodes/AUN-ComfyUI-Nodes/requirements.txt.

Common issues

Where people get burned: treating all five outputs as "the result" when they're stages - only Both upscaled is the full chain, so save that one unless you tuned otherwise. Second, upscaling in latent space is not free of artifacts; if you see tiling or repetition, the fix is usually a smaller ratio or a lower upscaling_denoise, not more steps. And if you want to run the second pass on a different model, that's what the v4 sibling (AUNKSamplerPlusv4) is for - this node uses one model for both.

CategoryAUN Nodes/KSampler

Inputs (26)

NameTypeDefaultDescription
vaeVAEVAE model for encoding/decoding between pixel and latent space.
modelMODELThe diffusion model to use for progressive sampling.
seedINT00–18446744073709550000Random seed for reproducible results. Use same seed for identical outputs.
steps_totalINT302–300Total sampling steps across both passes. Split between first and second pass.
steps_firstINT121–300Steps for first pass (base generation). If latent upscale is off, this is used for the single pass.
start_step_secondINT0-1–300Second pass control: -1 uses denoise-fraction (see 'upscaling denoise'), 0 starts at step 0, steps_first continues after pass 1. Both-upscaled mirrors this schedule to reduce drift.
cfgFLOAT8.00–100CFG scale for first pass. Controls prompt adherence in base generation.
cfg_latent_upscaleFLOAT8.00–100CFG scale for latent upscale pass. Can be different from base CFG.
sampler_nameCOMBOSampling algorithm for both passes. DPM++ 2M Karras recommended for progressive sampling.
schedulerCOMBONoise schedule. AYS schedulers work well with progressive sampling.
positiveCONDITIONINGPositive prompt conditioning (what you want in the image).
negativeCONDITIONINGNegative prompt conditioning (what you want to avoid).
latent_imageLATENTInput latent image. For txt2img, use Empty Latent Image.
denoiseFLOAT1.000–1Denoising strength for first pass. 1.0 = full generation, lower for img2img.
latent_upscaleBOOLEANtrueEnable latent space upscaling between passes. Core feature of progressive sampling. Disabling this will perform a single pass of sampling.
upscaling_denoiseFLOAT0.610.01–1Second pass denoise amount. Notes: • Used only when start_step_second = -1 (denoise-fraction mode). • Typical refinement: 0.5–0.7. • Ignored when continuing from a start step.
upscale_methodCOMBOAlgorithm for latent upscaling. Bicubic recommended for progressive workflows.
ratioFLOAT1.500.01–8Latent upscale ratio between passes. 1.5-2.0 typical for progressive generation.
image_upscaleBOOLEANfalseEnable pixel-space image upscaling. Used to construct 'Both upscaled' and as source for 'Refined image'.
image_upscale_methodCOMBOAlgorithm for final image upscaling. Lanczos for photos, nearest for pixel art.
image_upscale_modelCOMBOAI upscaling model for final enhancement. 'None' disables AI upscaling.
image_upscale_ratioFLOAT1.500.01–8Final image upscale ratio. Can be different from latent upscale ratio.
image_upscale_refineBOOLEANfalseOutput 'Refined image' by re-encoding and sampling the selected source (Both/Image/Base) with the settings below.
img_refine_stepsINT41–100Sampling steps for the final 'Refined image' pass.
img_refine_denoiseFLOAT0.250–1Denoising strength for the final 'Refined image' pass.
verboseBOOLEANfalsePrint detailed pass logs and timings to the console.

Outputs (7)

NameTypeDescription
Base imageIMAGE
Image upscaledIMAGE
Latent upscaledIMAGE
Both upscaledIMAGE
Refined imageIMAGE
LATENTLATENT
Upscaled typeSTRING