SDXL Sampler v3 (Searge)
The streamlined base+refiner sampler
- base_model
- base_positive
- base_negative
- refiner_model
- refiner_positive
- refiner_negative
- latent_image
- sampler_name
- scheduler
- LATENT
SeargeSDXLSamplerV3 is the pack's base-plus-refiner sampler, in a slightly trimmed form. Same job as the v2 sampler - take both SDXL models, both sets of conditioning, and a latent, then run the base for most of the steps and the refiner for the tail - but with a leaner set of optional knobs. If you saw the v2 node's noise_offset and refiner_strength and thought "I'm never touching those," v3 is the one that agrees with you.
Like the rest of the pack's samplers, it's under Searge/_deprecated_/Sampling - a building block from an earlier version of the workflow, kept working so old graphs still load. The current v4.x workflow does its sampling internally rather than exposing this node, but it's a clean, understandable engine if you're wiring an SDXL base+refiner run yourself.
How it works
You give it a base model and refiner model, each with positive and negative conditioning, plus a starting latent. It denoises with the base up to a cutoff set by base_ratio, then finishes on the refiner. That two-stage handoff is SDXL's original ensemble design, the thing the whole pack was built around back in 2023.
The one optional control it keeps is refiner_prep_steps - a small number of extra steps to prime the refiner handoff. Everything else is the standard sampling set. This is the node's whole personality: the base+refiner pipeline without the extra tuning surface.
The inputs and outputs that matter
Required wiring: base_model, base_positive, base_negative, refiner_model, refiner_positive, refiner_negative, latent_image. The dials worth setting:
- steps (20), cfg (7) - standard.
- sampler_name (default
ddim), scheduler (defaultddim_uniform) - valid but dated defaults; for SDXL,dpmpp_2m+karrasis the stronger pairing. SDXL is DDPM-style, so Karras is a real fit here, not the mistake it would be on a flow-matching model like Flux. - base_ratio (0.8) - the base/refiner split; push toward 1.0 to lean on the base.
- denoise (1.0) - full for txt2img, lower for img2img.
- refiner_prep_steps (optional, default 0) - extra priming steps for the refiner.
Output is a single LATENT for your VAE Decode.
v2 or v3?
Not a big decision. v3 is the tidier node; v2 exposes a couple more refiner controls (noise_offset, refiner_strength) for people who want to micromanage the handoff. Both are deprecated, and in practice a lot of SDXL users lean base-heavy (or skip the refiner) anyway, since the refiner's real-world benefit turned out smaller than SDXL's launch pitch suggested. Pick whichever the workflow you loaded already uses.
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.
You'll need the SDXL base (~7 GB) and, for the refiner leg, the SDXL refiner (~6 GB) in ComfyUI/models/checkpoints, plus the fp16-fix VAE.
Where people get burned
- All-black output. The fp16 VAE bug - install and select the fixed SDXL VAE.
- Flat
ddimresults. Switch todpmpp_2m+karras. - Chasing refiner tuning that isn't here. If you specifically want
noise_offset/refiner_strength, that's the v2 node. Otherwise v3's simplicity is the point.
Inputs (15)
| Name | Type | Default | Description |
|---|---|---|---|
| base_model | MODEL | — | |
| base_positive | CONDITIONING | — | |
| base_negative | CONDITIONING | — | |
| refiner_model | MODEL | — | |
| refiner_positive | CONDITIONING | — | |
| refiner_negative | CONDITIONING | — | |
| latent_image | LATENT | — | |
| noise_seed | INT | 00–18446744073709550000 | — |
| steps | INT | 201–200 | — |
| cfg | FLOAT | 7.00–30 | — |
| sampler_name | SAMPLER_NAME | ddim | — |
| scheduler | SCHEDULER_NAME | ddim_uniform | — |
| base_ratio | FLOAT | 0.800–1 | — |
| denoise | FLOAT | 1.000–1 | — |
| refiner_prep_stepsopt | INT | 00–10 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| LATENT | LATENT | — |