LC Split Sigma Scheduler
Two models, one schedule, zero hand-built sigmas
- Model
- 2nd model
- sigmas_high
- sigmas_low
If LC Split Sigmas (Advanced) is the BYO-curves version of two-pass sampling, this is the turnkey one. LC Split Sigma Scheduler takes a model, a scheduler, a step count, a swap point, and a denoise - and builds both halves of the split sigma schedule itself. Model in, sigmas_high and sigmas_low out, no separate scheduler nodes required.
The design is aimed squarely at SamplerCustomAdvanced-style consumers: it's built to hand that node a complete two-model, two-curve schedule in one shot. The primary Model produces the high-sigma (first-pass) schedule; the optional 2nd model produces the low-sigma (second-pass) schedule; and if you leave the second model unconnected, it falls back to the primary - so the node works as a plain single-model scheduler too, and only becomes dual-pass when you plug a second model in.
The inputs
- Model - primary model; builds the high-sigma, first-pass schedule.
- scheduler - the schedule type for both curves (the 9 standard choices;
simpleis the default). - total_steps - full schedule length (default 40).
- step_swap - handoff index: high = 0..swap, low = swap..end. If ≥ total steps, the split is ignored and the first schedule runs to completion. Note this one is an input only - it's not re-exported as a socket.
- denoise - strength for building the full schedule (1.0 = full).
- 2nd model (optional) - the low-sigma pass model; falls back to Model.
Outputs: sigmas_high and sigmas_low.
How it works
Under the hood it calls ComfyUI's own calculate_sigmas on each model's sampling space (the denoise trim follows the standard steps/denoise re-expansion trick). Because each model contributes its own curve, the two halves can have genuinely different characters if the models differ. For wiring: you pair sigmas_high with Model and sigmas_low with the 2nd model in the downstream sampler. The LC123 README pairs this with LC Sampler Configure for the settings side - one node owns the numbers, this one owns the schedule.
Install
Part of LC123 - ComfyUI Manager (search "LC123") or:
cd ComfyUI/custom_nodes
git clone https://github.com/lonecatone23/ComfyUI_LC123_nodes
Restart. No extra pip packages; MIT licensed. Cloud ComfyUI hosts (RunningHub etc.) need LC123 requested or a local install.
The honest take
This is the better on-ramp to two-pass sampling than the Advanced variant: fewer moving parts, fewer ways to miswire. But two-pass is still a technique you should reach for deliberately - for most single-model work (especially on distilled, CFG-1 models), one scheduler and one curve is all you need. When you do want a refiner-style finish, though, this is the cleanest way to build it.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| Model | MODEL | Primary model — builds the high-sigma (1st pass) schedule. | |
| scheduler | COMBO | simple | Scheduler type for both sigma curves. |
| total_steps | INT | 401–10000 | Total steps in the full schedule. |
| step_swap | INT | 300–10000 | Handoff step. high = 0..swap, low = swap..end. If >= total steps, split is ignored and the 1st schedule runs to completion. |
| denoise | FLOAT | 1.000–1 | Denoise strength for building the full schedule (1.0 = full). |
| 2nd modelopt | MODEL | Optional 2nd model for the low-sigma (2nd pass) schedule. Falls back to Model when empty. |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| sigmas_high | SIGMAS | — |
| sigmas_low | SIGMAS | — |