Nodes/SeargeSDXL/SDXL Sampler v2 (Searge)
ComfyUI Node Runs on cloud

SDXL Sampler v2 (Searge)

The base+refiner engine at the heart of Searge SDXL

By SeargeDP·Created 3 years ago·Updated 2 years ago· 874
SDXL Sampler v2 (Searge)
  • base_model
  • base_positive
  • base_negative
  • refiner_model
  • refiner_positive
  • refiner_negative
  • latent_image
  • sampler_name
  • scheduler
  • LATENT
noise_seed0
steps20
cfg7.0
base_ratio0.80
denoise1.00
refiner_prep_steps0
noise_offset1
refiner_strength1.00

This is where the actual image gets made. SeargeSDXLSampler2 is the pack's combined base-plus-refiner sampler: it takes both SDXL models, both sets of conditioning, and a starting latent, then runs the denoising in two handoffs - most of the steps on the base model, the final stretch on the refiner - and spits out a finished latent. Everything else in the Searge workflow exists to feed this node.

The design reflects when the pack was born. Back in mid-2023, when Searge SDXL first landed, SDXL's headline feature was its two-stage ensemble: a base model for composition and a refiner for fine detail like skin texture. This node bakes that pipeline in so you don't hand-wire two KSamplers and a latent handoff yourself. Its category is Searge/_deprecated_/Sampling, so it's a v2-era engine - kept working for backward compatibility while the current v4.x workflow uses its own internal sampling.

How it works

You give it a base model and a refiner model, each with its own positive and negative conditioning, plus a latent to sample into. It denoises with the base up to a cutoff, then switches to the refiner for the remainder. The base_ratio sets that cutoff - 0.8 means 80% base, 20% refiner. A couple of optional knobs let you tune the transition: how the refiner receives the partially-denoised latent, and how strongly it acts.

One honest note the community learned over time: the refiner earns its keep less than SDXL's launch marketing suggested. Once fine-tuned checkpoints matured, most people set base_ratio to 1.0 (all base) or dropped the refiner entirely. This node fully supports that - it's built for the two-stage flow, but it doesn't force it on you.

The inputs and outputs that matter

Required plumbing: base_model, base_positive, base_negative, refiner_model, refiner_positive, refiner_negative, and latent_image. The knobs you'll actually set:

  • steps (20), cfg (7), sampler_name (default ddim), scheduler (default ddim_uniform) - standard sampling controls. For SDXL, dpmpp_2m + karras is the stronger default than the built-in ddim pair.
  • base_ratio (0.8) - the base/refiner split. Push toward 1.0 to lean on the base.
  • denoise (1.0) - full for txt2img; lower it for img2img.
  • Optional: refiner_prep_steps, noise_offset, refiner_strength - fine control over the refiner handoff. Leave them at defaults unless you're chasing a specific artifact.

Output is a single LATENT - send it to a VAE Decode to get your image.

How to install it

ComfyUI Manager: search SeargeSDXL, install, restart. Manual: python -m pip install opencv-python in ComfyUI's Python env (required), then cd ComfyUI/custom_nodes && git clone https://github.com/SeargeDP/SeargeSDXL.git, restart. Windows portable has an installer script.

This node needs the actual checkpoints in place: SDXL base (~7 GB) and, if you're using the refiner leg, the SDXL refiner (~6 GB), both in ComfyUI/models/checkpoints. Grab the fp16-fix VAE too (ComfyUI/models/vae) - it's the fix for the classic all-black SDXL output.

Where people get burned

  • Black images. That's the fp16 VAE bug, not this node. Install the fixed SDXL VAE and select it.
  • ddim defaults feeling flat. Switch to dpmpp_2m + karras. SDXL is DDPM-style, so Karras is a real fit - don't let flow-matching-era "avoid Karras" advice steer you wrong here.
  • Forcing the refiner. If results look over-processed, cut base_ratio toward 1.0. The refiner is optional in practice, whatever SDXL's original two-stage pitch said.
CategorySearge/_deprecated_/Sampling

Inputs (17)

NameTypeDefaultDescription
base_modelMODEL
base_positiveCONDITIONING
base_negativeCONDITIONING
refiner_modelMODEL
refiner_positiveCONDITIONING
refiner_negativeCONDITIONING
latent_imageLATENT
noise_seedINT00–18446744073709550000
stepsINT201–200
cfgFLOAT7.00–30
sampler_nameSAMPLER_NAMEddim
schedulerSCHEDULER_NAMEddim_uniform
base_ratioFLOAT0.800–1
denoiseFLOAT1.000–1
refiner_prep_stepsoptINT00–10
noise_offsetoptINT10–1
refiner_strengthoptFLOAT1.000.01–1

Outputs (1)

NameTypeDescription
LATENTLATENT