Nodes/ComfyUI_Gayrat/SdxlSamplerParams (Gayrat)
ComfyUI Node

SdxlSamplerParams (Gayrat)

The sampler/steps sweeper for SDXL and SD 1.5

By gayratv·Created about a year ago·Updated about a year ago· 3
SdxlSamplerParams (Gayrat)
  • model
  • positive
  • negative
  • latent_image
  • loras
  • latent
  • params
◄seed123, ?, 456 # Список сидов через запятую. '?' - случайный.►
◄samplereuler►
◄schedulersimple►
◄steps20►
◄guidance7.0►
◄denoise1.0►

Ever asked "what's the minimum step count for my SDXL checkpoint, and which sampler gets me there?" That's the question this node exists to answer. It's a KSampler replacement that runs every combination you give it: multiple seeds, samplers, schedulers, step counts, guidance values and denoise strengths, all in one queue, and hands you the batched results plus a structured list of exactly what each one used.

It's the SDXL/SD 1.5 twin of the pack's Flux Sampler Params (the README positions the whole family as "a set of nodes for testing generation parameters"), and the typical workflow is: wire it up, tell it to try a handful of samplers at a few step counts, run it, and look at the contact sheet to see where quality plateaus. The same pack's 🔧 Plot Sampler Parameters node draws the settings onto each result image so the sheet labels itself.

The inputs that matter

  • model, positive, negative, latent_image - exactly like a KSampler. It wraps the stock KSampler node internally.
  • seed - a multiline string. Comma-separated list of seeds; a ? means "random seed here, locked for that generation." Default is 123, ?, 456.
  • sampler - comma-separated sampler names. * means all samplers ComfyUI knows; a ! prefix excludes (e.g. !ddim, !uni_pc).
  • scheduler - comma-separated list (default simple).
  • steps, guidance, denoise - each a comma-separated list, and they support ranges: steps: 10...30+5 expands to 10, 15, 20, 25, 30.
  • loras (optional) - a LORA_PARAMS bundle if you want to sweep LoRA strengths too.

Outputs: latent - a batched latent of every combination, in run order (decode it with a VAE and save as a grid to read the results), and params - a SAMPLER_PARAMS list where each entry carries seed, sampler, scheduler, steps, guidance, denoise, time and the LoRA used. That's the input to the Plot node.

The honest warning: this multiplies fast

The total is a product - seeds × samplers × schedulers × steps × guidance × denoise × LoRAs. * on samplers is ~20 entries; three seeds, all samplers, three step counts and you're already at 180 generations. The node shows a progress bar with the total, so you will see it coming - that's the moment to prune. Realistic first sweeps: one seed, two or three samplers, steps like 10...30+10. Also note the latent output is one big batch: if you want it to render as individual images, your Save Image/plot path needs to handle a batch (ComfyUI's Save Image does).

A couple of quirks from reading the source: ? only means random in the seed field - if a ? appears anywhere else it's parsed as a number and silently becomes 0. And numeric parsing is forgiving but not clever: garbage in a numeric list becomes 0, which for denoise: 0 is a no-op generation, not an error. Feed it clean lists and it behaves.

Install

ComfyUI Manager: search ComfyUI_Gayrat. By hand:

cd ComfyUI/custom_nodes
git clone https://github.com/gayratv/ComfyUI_Gayrat
cd ComfyUI_Gayrat
pip install -r requirements.txt

Restart ComfyUI; find it under Gayrat/sampling. It uses only stock ComfyUI internals (KSampler, LatentBatch, the sampler registry) - no extra dependencies beyond the pack's requirements. Small personal pack, no community footprint, but for "which sampler/steps should I use" questions this node genuinely saves you the manual grind of running the same seed across five samplers by hand.

CategoryGayrat/sampling

Inputs (11)

NameTypeDefaultDescription
modelMODEL—
positiveCONDITIONING—
negativeCONDITIONING—
latent_imageLATENT—
seedSTRING123, ?, 456 # Список сидов через запятую. '?' - случайный.—
samplerSTRINGeuler—
schedulerSTRINGsimple—
stepsSTRING20—
guidanceSTRING7.0—
denoiseSTRING1.0—
lorasoptLORA_PARAMS—

Outputs (2)

NameTypeDescription
latentLATENT—
paramsSAMPLER_PARAMS—