Nodes/ComfyUI-LG_SamplingUtils/Model Sampling ZImage
ComfyUI Node

Model Sampling ZImage

The shift knob Z-Image was missing

By LAOGOU-666·Created 8 months ago·Updated 8 months ago· 193
Model Sampling ZImage
  • model
  • MODEL
shift3.00
multiplier1.000

On flow-matching models, the scheduler dropdown stopped being where the tuning happens. That job moved to a different knob: the timestep shift, which controls how much of your denoising effort goes into composition versus fine detail. On Z-Image, "raise the shift to 7" is the most repeated piece of tuning advice in the community - and stock ComfyUI doesn't give you a clean way to do it for this model family without dragging in the wrong node. Model Sampling ZImage is that node.

What it actually is

It's the Z-Image/Lumina2/AuraFlow equivalent of ComfyUI's built-in ModelSamplingAuraFlow, and it's deliberately thin. Give it your model, and it clones it and swaps in a ModelSamplingDiscreteFlow sampling object with your chosen shift and multiplier. That's the entire job. It exists so you don't have to go hunting for which stock node happens to work with your checkpoint - though honestly, if you already run the stock one happily, this buys you little. It's a convenience node, and the convenience is real: one place, sensible defaults, a model-specific label.

The two knobs:

  • shift - default 3.0, which matches ComfyUI's own default for these models. Lower (toward 1.0) is a flatter, linear schedule; higher pushes sampling effort toward the high-noise early steps. Z-Image Turbo's community-tested sweet spot is 7, so the default here is the starting point, not the recommendation.
  • multiplier - the timestep scaling, and the one that's a trap if you get it wrong. Z-Image/AuraFlow run timesteps in the 0–1 range, so 1.0 is correct. SD3/Flux run 0–1000 and want 1000. Set the wrong one and your sampling is mathematically nonsense - broken images, instantly.

Wiring it up

It's a model patch, so placement is the same as any sampling modifier:

UNETLoader → ModelSamplingZImage → KSampler (or SamplerCustom) model input

It slots between the loader and your sampler. Order relative to LoRA loaders is generally fine either way, but keep it after the model load and before the sampler.

Installation

One of five nodes in ComfyUI-LG_SamplingUtils:

cd ComfyUI/custom_nodes
git clone https://github.com/LAOGOU-666/ComfyUI-LG_SamplingUtils.git

or search for ComfyUI-LG_SamplingUtils in ComfyUI Manager, then restart. No Python deps, no model downloads, nothing else to configure. Small GPL-3.0 pack, v1.0.2 as of late 2025.

Gotchas

  • The default shift (3) is not the community recommendation (7). For Turbo, dial it to 7 and see if you like the composition/detail balance. For Base, opinions were still settling - 3–5 is a sane range to test.
  • If shift seems to do nothing, blame your scheduler, not the node. Some schedulers - bong_tangent is the famous one - apply their own internal sigma shift and ignore the model's. Switch to simple or beta and the knob starts working.
  • Don't touch multiplier unless you know the model's range. 1.0 for the flow-matching image models in this pack's name, 1000 for SD3/Flux-lineage. Getting it wrong is an instant, silent break.
  • It logs its applied settings ([ModelSamplingZImage]) and the first few sigmas to the console - a quick sanity check that the patch took.
Category🎈LAOGOU/Sampling Utils

Inputs (3)

NameTypeDefaultDescription
modelMODEL
shiftFLOAT3.000–100噪声调度偏移量。ZImage 默认 3.0。shift=1.0 为线性,>1.0 向高噪声偏移
multiplierFLOAT1.0000.001–10000Timestep 乘数。ZImage/AuraFlow=1.0,SD3/Flux=1000

Outputs (1)

NameTypeDescription
MODELMODEL