ZImage Turbo Sampling Plan
Read the Z-Image recipe before it cooks — a plan you can wire anywhere
- steps
- cfg
- denoise
- sampler_name
- scheduler_name
This node doesn't sample anything. It computes the plan that the samplers use, and hands it to you as six outputs you can wire wherever you like. Think of it as the recipe card: it answers "what steps, CFG, denoise, sampler, and scheduler does base_ultra actually mean?" before a single denoise step runs.
Inputs are just two dropdowns:
- mode -
base_ultra,base_balanced,refine_subtle,refine_normal,refine_strong. Same five presets the samplers use. - sampling_profile -
capitan_flow(default),zflow_linear, ortongyi_default.
Outputs are the resolved plan: steps (INT), cfg (FLOAT), denoise (FLOAT), sampler_name (STRING), scheduler_name (STRING). For base_ultra + capitan_flow that's 9 steps, CFG 1.0, denoise 1.0, euler_flow, capitanZiT. The refine modes drop denoise to 0.25–0.40; tongyi_default swaps in res_multistep + simple.
Why you'd actually use it. Three honest reasons. First, to drive a regular KSampler or KSamplerAdvanced with the pack's tuned values while keeping the rest of your workflow stock - connect the STRING outputs to a KSampler's sampler_name and scheduler sockets and you get the tuned pair without committing to the pack's all-in-one sampler node. Second, to introspect: if you're debugging "why is my workflow slow," a preview node on steps and cfg tells you exactly what the sampler is about to run. Third, to build your own two-pass rig - pair the denoise output with a KSamplerAdvanced's add_noise/start_at_step logic and you've recreated the refine pass by hand.
One gotcha that trips people up: the sampler_name/scheduler_name strings it emits only resolve while this pack is loaded, because euler_flow, capitanZiT, and zimage_turbo are registered locally on import. If you feed those strings to a KSampler with the pack removed, you'll get an unknown-sampler error. The tongyi_default profile's res_multistep/simple are stock ComfyUI names, so those are safe in exported workflows.
Install is the pack-level routine:
cd ComfyUI/custom_nodes
git clone https://github.com/marduk191/ComfyUI-ZImageTurboHQNodes
(ComfyUI Manager → "ZImageTurboHQNodes" works too), restart, no pip dependencies. The node itself needs no models - it's pure lookup logic - but the sampler you feed the strings into obviously does.
Reasonable take: if you're new, skip this node. The plain sampler handles everything. Come back to it when you want to read what the presets actually do, or when you want the tuned sampler/scheduler pair inside a workflow you'd rather not restructure.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| mode | COMBO | base_ultra | 5 options: base_ultra, base_balanced, refine_subtle, refine_normal, refine_strong |
| sampling_profile | COMBO | capitan_flow | 3 options: tongyi_default, capitan_flow, zflow_linear |
Outputs (5)
| Name | Type | Description |
|---|---|---|
| steps | INT | — |
| cfg | FLOAT | — |
| denoise | FLOAT | — |
| sampler_name | STRING | — |
| scheduler_name | STRING | — |