Nodes/comfyui-obvpm/Scheduler Name (obvpm)
ComfyUI Node

Scheduler Name (obvpm)

The scheduler on a wire, beta57 included

By chanon·Created about a month ago·Updated a day ago· 40
Scheduler Name (obvpm)
    • scheduler
    • scheduler_name
    scheduler

    Same idea as Sampler Name, one dropdown over: put the scheduler choice on a wire instead of burying it in the sampler node's widget. And there's a bonus in the list, which is the more interesting half of this article.

    What it does

    Pick a scheduler; get it out. scheduler is typed to match any scheduler_name combo, so it plugs into KSampler, BasicScheduler or anything else offering the standard list. scheduler_name is the same choice as a plain string, for bundles, captions and filenames. The list is read live from your install, so schedulers registered by other packs appear here too.

    Why bother? Same three reasons as the sampler version. Compare two schedules without editing two nodes. Keep a base pass and a refine pass on the same schedule. Get the choice into a preset, a bundle or a case switch so a whole settings set swaps as one thing. Schedules are one of the settings people fiddle with most and record least - a scheduler name you can print into a filename is worth having.

    Beta57, free with the pack

    Here's the part that matters. This pack registers beta57 into ComfyUI's scheduler registry when it loads. If the name isn't already there, it adds the handler - RES4LYF's beta schedule with alpha=0.5, beta=0.7 - and appends the name to the scheduler list, which is the same list object KSampler reads. So beta57 appears in every scheduler dropdown on your install: KSampler, BasicScheduler, and this node. It behaves like a built-in.

    That fixes a specific, extremely common annoyance. beta57 is the scheduler the community settled on for painterly output on animated and flow-matching models, and it appears in a lot of shared settings tables and workflow JSON. It ships inside RES4LYF, so loading someone else's workflow that names it used to mean installing a whole solver pack - the "workflow won't load, unknown scheduler" entry in the KB is about exactly this. Install obvpm and the name resolves.

    Worth knowing what you're getting, though: this is one scheduler, not RES4LYF. If the workflow names res_2m, res_3s, bong_tangent or one of the other solvers, you still need the real pack. And one trap that follows you into RES4LYF regardless: some of its schedules apply their own sigma shift and ignore the shift value in your workflow, so if shift appears to do nothing, suspect the scheduler before the sampler.

    Choosing one

    The stock list is smaller than it looks once you know the split. karras remains the classic SD 1.5 and SDXL choice. For flow-matching models - the ones that have taken over - simple, beta, sgm_uniform and linear_quadratic are where the sensible settings live, and beta57 is the enthusiast pick on top of beta. There's a well-known preference from the community on this: euler with beta57 for photorealism, a RES4LYF solver with simple for anime. If you're not sure, simple is the honest default on a modern model and karras on an older one.

    Note what this node doesn't carry: steps, CFG, shift and denoise still live on the sampler. The schedule and the sampler are two decisions that interact, and routing one of them doesn't route the other.

    The compatibility trick

    The socket names deliberately mirror the nodes this replaces - the pack credits ComfyUI-Image-Saver's Scheduler Selector - because a widget converted to an input is re-bound by name when a workflow loads. Keeping scheduler_name means an existing graph only has to change the node type.

    Install

    Manager, search comfyui-obvpm, or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/chanon/comfyui-obvpm
    

    Restart ComfyUI and beta57 is there. No Python dependencies to install (the pack declares none - everything it imports already comes with ComfyUI) and no models to download. Every node carries an (obvpm) suffix, so obvpm in the node search menu lists the whole pack.

    If beta57 doesn't show up after a restart, check the startup console for an import error from custom_nodes.comfyui-obvpm - the registry patch happens at import time, so a pack that failed to load won't have registered it.

    Categoryobvpm/values

    Inputs (1)

    NameTypeDefaultDescription
    schedulerCOMBOAny scheduler this ComfyUI knows about.

    Outputs (2)

    NameTypeDescription
    schedulersimple,sgm_uniform,karras,exponential,ddim_uniform,beta,normal,linear_quadratic,kl_optimal,beta57The choice, typed to match a scheduler combo.
    scheduler_nameSTRINGThe same choice as a plain string.