Scheduler Selector | Deforum
Nine schedulers, one socket — and a string override when you need it
- scheduler
Scheduler Selector | Deforum is the quieter sibling of Sampler Selector | Deforum, and it does the same thing for the other half of sampling config: the noise schedule. You pick a scheduler, the node hands it out as a typed value a sampler can consume - and, when you flip the override, the choice stops being a dropdown and starts being whatever string you feed it. Small node, but it's how you make a scheduler something a graph can decide at runtime.
The primary input is scheduler_name, with all nine choices your ComfyUI actually supports - simple, sgm_uniform, karras, exponential, ddim_uniform, beta, normal, linear_quadratic, and kl_optimal. The single scheduler output carries the selection. Since the list is read from ComfyUI's own KSampler.SCHEDULERS at load time, it never drifts out of sync with what your installation can run. Wire the output into a sampler's scheduler input and the scheduler becomes visible, centralized, and changeable from one node instead of buried in every sampler in the graph.
The two optional inputs are the flexible part. use_override (default false) and override_string let you bypass the dropdown entirely: flip the boolean and the node emits whatever string you supply. That turns the scheduler into a runtime variable - a Value Schedule | Deforum can emit "karras" for some frames and "exponential" for others, or a text input can drive the whole thing. For animation, this is the kind of control that matters when you're testing whether a scheduler is the culprit behind frame-to-frame inconsistency: you can A/B it from a single value instead of editing a workflow.
Here's the thing worth knowing about schedulers before you get fancy: for most Deforum-style work, karras is the community default for a reason - its noise schedule puts more steps in the high-detail region and generally produces cleaner results on SD-family models. But that's exactly the kind of assumption you should be able to flip, and this node exists so you can. The override path is a raw string, so it must exactly match a valid scheduler name or the downstream sampler will reject it; the dropdown path is safe by construction.
Installation is the pack - ComfyUI Manager → search "ComfyUI-Deforum" or deforum-comfy-nodes → install and restart, or git clone https://github.com/deforum-art/deforum-comfy-nodes into ComfyUI/custom_nodes and restart. No model downloads, no extra Python dependencies; the repo lived at XmYx/deforum-comfy-nodes before moving to deforum-art. If you're building a fully wireable sampling stack, pair this with Sampler Selector | Deforum and String to Combo | Deforum (for typing overrides correctly) and the entire sampling config becomes data flowing through your graph.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| scheduler_name | COMBO | 9 options: simple, sgm_uniform, karras, exponential, ddim_uniform, beta, +3 | |
| override_stringopt | STRING | — | |
| use_overrideopt | BOOLEAN | false | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| scheduler | simple,sgm_uniform,karras,exponential,ddim_uniform,beta,normal,linear_quadratic,kl_optimal | — |