ManualSigmas
Type your noise schedule by hand — total control, zero guardrails
- SIGMAS
Every scheduler node is a way of saying "give me a good curve without me having to think about it." ManualSigmas is the exact opposite: a text box where you type the curve yourself, one comma-separated number per line. It's the escape hatch for when no off-the-shelf schedule does what you need - and it's also the node that hands beginners a rope to hang themselves with, because it does nothing to validate what you type.
How it works
Under the hood it's a one-liner: parse the string with a regex, extract every number, turn them into a float tensor, hand that out as SIGMAS. That's the whole mechanism. No reordering, no normalization, no insertion of a terminal zero. What you type is exactly what the sampler gets.
The experimental flag in the code is doing a lot of work there - the entire safety story is "trust the user."
The input and output
sigmas(STRING) - comma-separated numbers, default"1, 0.5".SIGMASoutput - wire it into a sampler'ssigmasport or into SamplerCustomAdvanced.
The two rules that make it work
- Descending order. Schedules run high to low. Type
1, 0.5, 0.1, 0- not0, 0.1, 0.5, 1. Solvers assume monotonic decreasing; break it and you get garbage or a crash. - End at 0, and count steps as values minus one. A schedule of N values = N−1 steps, because the last sigma is the "we've arrived" marker. The default
"1, 0.5"is therefore a one-step run - fine if that's what you want, baffling if you expected twenty.
Also keep every value within the model's native sigma range. ManualSigmas won't warn you if you type 50 into an SD 1.5 run whose max is ~14.6 - the model just gets asked to denoise from a level it never saw.
What people actually use it for
- Odd two-pass curves no scheduler produces - e.g., a schedule that jumps from high noise to a detail range in a couple of steps.
- Replicating a specific paper or workflow that names its sigmas explicitly.
- Debugging. When you suspect the scheduler is the problem, typing a dead-simple linear curve (
14.6, 11.0, 7.0, 3.5, 1.0, 0.3, 0) isolates it instantly.
Common issues
- Forgot the trailing zero - the classic "why is my last step doing nothing / why does it error" complaint.
- Commas vs. anything else. It's comma-separated; spaces and newlines are tolerated by the regex, but commas are the contract.
- Typing a curve you saw without knowing the model's range. A schedule from an SDXL workflow may be meaningless on SD 1.5 and vice versa.
It's the rawest node in the sigmas family, and that's its value: when a curve needs to be exactly a thing, this is how you say it.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| sigmas | STRING | 1, 0.5 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| SIGMAS | SIGMAS | — |