Nodes/Akatz-Loop-Nodes/Scheduler Selector | akatz-loops
ComfyUI Node

Scheduler Selector | akatz-loops

Pick a scheduler on a wire — or type one that isn't in the list

By akatz-ai·Created about a year ago·Updated 8 months ago· 23
Scheduler Selector | akatz-loops
    • scheduler
    scheduler_name
    override_string
    use_overridefalse

    SchedulerSelector | akatz-loops is the scheduler-shaped twin of the pack's Sampler Selector: a dropdown of the stock schedulers, a text-override escape hatch, and one typed output you feed into a KSampler or the pack's Prepare Latent Denoise on a wire. The scheduler is the noise schedule - how much denoising happens at each step - and it's a genuine quality knob (Karras vs. linear vs. exponential change both character and step requirements, as covered in the KB's concepts essay), so being able to drive it from one place is more than cosmetic when you're iterating.

    Inputs and outputs

    • scheduler_name - the dropdown of the nine stock schedulers (simple, sgm_uniform, karras, exponential, ddim_uniform, beta, normal, linear_quadratic, kl_optimal).
    • override_string (STRING) - emit this text instead of the dropdown when enabled.
    • use_override (BOOLEAN, default false) - the mode switch.
    • output - scheduler, the chosen name.

    Same override logic as the sampler version, and the same reason it exists: the stock list doesn't include every scheduler the community has shipped. Some third-party schedulers also bring their own sigma shift and ignore your workflow's shift value (a known gotcha with RES4LYF's bong_tangent), which is exactly the kind of thing you want a visible override for rather than a magic string buried in a KSampler widget.

    When you'd use it

    One selector driving several samplers, or a selector feeding a custom sampling path like Prepare Latent Denoise, or a loop that wants to sweep schedulers between iterations. For a single static KSampler, the built-in dropdown does the same job - this node's value is centralizing the choice.

    Installing it

    Part of the Akatz-Loop-Nodes pack (repo ComfyUI-Execution-Inversion):

    cd ComfyUI/custom_nodes
    git clone https://github.com/akatz-ai/ComfyUI-Execution-Inversion
    # restart ComfyUI
    

    Or ComfyUI Manager → "Akatz-Loop-Nodes". Only dependency is opencv-python; no model files.

    Gotchas

    Same pair as the sampler version: the override is unvalidated, so typos surface as runtime scheduler errors, and once use_override is on the dropdown is dead weight - easy to leave on and forget. Also worth remembering that scheduler and sampler are independent: changing the scheduler changes the sigma ladder even when the sampler name stays the same, so a "nothing changed" mystery after editing override_string usually means the scheduler's schedule, not the algorithm, did the work.

    CategoryAkatz Loop Nodes/Utility

    Inputs (3)

    NameTypeDefaultDescription
    scheduler_nameCOMBO9 options: simple, sgm_uniform, karras, exponential, ddim_uniform, beta, +3
    override_stringoptSTRING
    use_overrideoptBOOLEANfalse

    Outputs (1)

    NameTypeDescription
    schedulersimple,sgm_uniform,karras,exponential,ddim_uniform,beta,normal,linear_quadratic,kl_optimal