Nodes/Runtime44 ComfyUI Nodes/Runtime44 Dynamic KSampler
ComfyUI Node

Runtime44 Dynamic KSampler

Two samplers in one pass — a good idea that's still half-finished

By runtime44·Created 2 years ago·Updated 2 years ago· 42
Runtime44 Dynamic KSampler
  • model
  • positive
  • negative
  • latent_image
  • LATENT
seed0
steps20
cfg8.0
first_sampler
first_scheduler
denoise1.00

Runtime44 Dynamic KSampler is the pack's ambitious idea: use different samplers for different phases of the same diffusion run, instead of one sampler for all N steps. The pitch makes sense - people have been hand-rolling "euler for the first half, dpmpp_2m for the detail pass" chains for years, and a single node that switches mid-flight would be genuinely useful.

Here's the catch, and you should read this before installing: at the version that's actually shipping, it doesn't run. The README itself labels the node a work in progress, and the source backs that up. The sampler-switching inputs the code references - the switch step, the second sampler, the second scheduler - were never added to the node's exposed input list. The UI gives you only first_sampler and first_scheduler, and when ComfyUI executes the node it fails with a missing-argument error because those switching parameters have no defaults. The pack has been dormant since mid-2024, so this isn't a "wait a week for a fix" situation.

I'll tell you what it's supposed to do, because if upstream ever finishes it, it's a neat node. Then I'll tell you what to use instead.

The design

The code splits your total steps at a switch point. The first chunk runs common_ksampler with the first sampler/scheduler at full denoise. The second chunk runs with the second sampler/scheduler and disable_noise=True, so it's a continuation rather than a fresh generation. That's the classic "coarse then refine" pattern: a fast, exploratory sampler builds the composition, a higher-order sampler cleans up the detail.

What's actually exposed

The inputs that exist today: model, positive, negative, latent_image, seed, steps, cfg, first_sampler, first_scheduler, and denoise. Note the names - there's a latent_image, not latent, which matters if you're copying workflows. The output is a single LATENT, same as any sampler.

The honest verdict

Skip it for now. The functionality you're imagining already exists in stock ComfyUI: chain two regular KSamplers back to back - the first at full denoise for composition, the second at lower denoise to refine - and you've recreated the intended behavior with nodes that actually work. Or use a scheduler-switching setup if you're on the sampler-nerd path (the RES4LYF-style high-order solver packs are where the real sampler innovation is happening anyway).

Installing

Same as the rest of the pack:

cd ComfyUI/custom_nodes
git clone https://github.com/runtime44/comfyui_r44_nodes
cd comfyui_r44_nodes
python -m pip install -r requirements.txt   # or: uv pip install -r requirements.txt

Restart ComfyUI. The node shows up under "sampling". ComfyUI Manager users can search "Runtime44" instead. Just set your expectations: this is the one node in the pack I'd treat as a preview rather than a tool. Keep an eye on the repo - if the missing inputs ever get wired in, the idea itself is worth revisiting.

Categorysampling

Inputs (10)

NameTypeDefaultDescription
modelMODEL
positiveCONDITIONING
negativeCONDITIONING
latent_imageLATENT
seedINT00–18446744073709550000
stepsINT201–10000
cfgFLOAT8.00–100
first_samplerCOMBO34 options: euler, euler_cfg_pp, euler_ancestral, euler_ancestral_cfg_pp, heun, heunpp2, +28
first_schedulerCOMBO9 options: normal, karras, exponential, sgm_uniform, simple, ddim_uniform, +3
denoiseFLOAT1.000–1

Outputs (1)

NameTypeDescription
LATENTLATENT