Stack_Ksampler_highAndLow
Handing Off Mid-Sample to a Second Model
- model2
- positive2
- funtion
This node samples in two segments and can swap models partway through - start with one model and positive prompt from start_step, hand off to a second model (model2/positive2) at mid_step, and finish at steps. The name gives away the intended use: this is the shape of a "high noise" expert handling the early, coarse denoising and a "low noise" expert taking over for the late detail pass, the pattern current dual-expert video and image models (Wan 2.2's high/low-noise split is the best-known example) are built around - though the same mechanism also covers a plain SDXL base-then-refiner handoff if that's what you're doing instead.
Inputs
- add_noise (
enable/disable). - noise_seed (default 3) - note this node's own seed, separate from anything else in your graph.
- start_step and mid_step (both INT, 0ā10000, default 0) - where the first segment begins and where the handoff to the second model happens.
- steps (default 20) - the total step count the schedule is divided across.
- return_with_leftover_noise (
disable/enable). - sampler (45 choices,
Noneplus the full stock roster) and scheduler (10 choices,Noneplus the standard nine) - both default toNone, which suggests they fall back to whatever the pack's consuming node decides rather than needing an explicit pick here. - model2 (optional, MODEL) and positive2 (optional, CONDITIONING) - the second model and prompt taking over at
mid_step. Note this node itself doesn't expose slots for the first model or positive prompt - those get supplied elsewhere by the pack's consuming node;model2/positive2here are specifically the second-stage overrides.
Output: funtion - again, that's the socket's actual type name in the schema, not a typo.
Setting it up
Set start_step = 0 and mid_step to wherever you want the handoff - roughly the point where you want composition to be locked and detail work to begin, if you're doing a high/low-noise split, or the equivalent of your base model's cutoff if this is standing in for an SDXL refiner swap. Leave model2/positive2 unplugged if you're not doing a mid-sample handoff at all; the node presumably just runs as a single continuous sample in that case, though the exact behavior with those left empty isn't documented here.
Install
ComfyUI Manager: search "ComfyUI-Apt_Preset," install, restart. By hand: cd ComfyUI/custom_nodes && git clone https://github.com/cardenluo/ComfyUI-Apt_Preset.git, then restart ComfyUI. The install.bat dependency installer is Windows-only - on Linux or a cloud box, check what it lists and pip-install those packages yourself, or let ComfyUI Manager's "install missing nodes" flow catch it.
Troubleshooting
If the handoff produces a visibly disjointed image - a hard seam where the second model's style suddenly takes over - try moving mid_step later, giving the first model more of the composition-forming early steps before the swap.
noise_seed defaulting to 3 rather than 0 is worth noticing if you're trying to reproduce a specific result and only remembered to lock the seed on your primary sampler - this node has its own.
This pack has real, reported import failures - a comfyui subreddit thread shows (IMPORT FAILED): ...ComfyUI-Apt_Preset in someone's console. ComfyUI Manager's "install missing custom nodes" fixed it there, as did manually re-cloning the repo and restarting.
Gap worth flagging: whether this node targets Wan-style high/low-noise expert splitting, SDXL-style base/refiner handoff, or is meant generically for both isn't confirmed anywhere we could verify - worth a documented example workflow from the pack author.
Inputs (10)
| Name | Type | Default | Description |
|---|---|---|---|
| add_noise | COMBO | 2 options: enable, disable | |
| noise_seed | INT | 30ā18446744073709550000 | ā |
| start_step | INT | 00ā10000 | ā |
| mid_step | INT | 00ā10000 | ā |
| steps | INT | 200ā10000 | ā |
| return_with_leftover_noise | COMBO | 2 options: disable, enable | |
| sampler | COMBO | None | 45 options: None, euler, euler_cfg_pp, euler_ancestral, euler_ancestral_cfg_pp, heun, +39 |
| scheduler | COMBO | None | 10 options: None, simple, sgm_uniform, karras, exponential, ddim_uniform, +4 |
| model2opt | MODEL | ā | |
| positive2opt | CONDITIONING | ā |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| funtion | FUNTION | ā |