Rebalance CFG Custom
Per-timestep weight curves for two conditionings
- conditioning_1
- conditioning_2
- conditioning
This is the power-user node of the pack, and the fiddliest. Rebalance CFG Custom schedules two conditionings across the denoise with full per-timestep weight curves - you write out, in a little schedule string, exactly how strong each conditioning is at each slice of the generation. Where Step Rebalance gives you one handoff point, this gives you the whole ramp. It's overkill for most jobs and exactly right for the one where you need to choreograph how two influences trade off over time.
The name nods at CFG scheduling, but note the output is a conditioning, not a sampler setting - this shapes the conditioning that carries into your sampler, ramping the two inputs' contributions according to your curves. Think of it as two automation lanes: one for conditioning_1, one for conditioning_2, each with its own envelope over the denoise.
Inputs and outputs
Required:
- conditioning_1 and conditioning_2 - the two conditionings you're scheduling.
- schedule_1 and schedule_2 - multiline strings that define each conditioning's weight over time. The format is a series of
start-end:weightsegments, e.g.0.000-0.125:1.50; 0.125-0.250:1.40; …. The defaults are mirror ramps:schedule_1starts high (1.50) and falls to 0.20 across the run, whileschedule_2rises from 0.20 to 1.50 - a crossfade from the first conditioning to the second. - interpolation -
constantorgradual(defaultgradual). Whether each segment's weight is a flat step or eases smoothly into the next.gradualgives you clean crossfades;constantgives you hard stair-steps. - sub_steps - default 8, range 1 to 64. How finely the schedule is sampled within the denoise. More sub_steps means a smoother curve at the cost of a little more work.
Output is a single conditioning for your sampler's positive input.
Installing it
ComfyUI Manager: search ComfyUI-Conditioning-Rebalance, install, restart. Or:
cd ComfyUI/custom_nodes
git clone https://github.com/nova452/ComfyUI-ConditioningKrea2Rebalance.git
Restart ComfyUI. No pip deps, no model files - the node is pure scheduling math, though it's built for Krea 2 / Ideogram 4 conditioning.
Common issues
The schedule string is where people get burned. The segments should cover the full 0.000–1.000 range without gaps, and the format is unforgiving - a stray character or a missing ; and the node won't parse it. Start from the defaults, edit numbers in place, and don't rewrite the structure until you're sure it runs.
Keep both conditionings in the same model's space, as with every node in this pack.
Honestly, most workflows don't need this. If you just want "prompt A early, prompt B late," Step Rebalance does that with two numbers and no schedule string to debug. Reach for Rebalance CFG Custom when you genuinely need to sculpt the whole trade-off curve - a slow crossfade, a hold-then-switch, a non-monotonic envelope - and are willing to babysit the schedule syntax to get it. It's the most expressive node here and the one most likely to eat an hour if you're careless with the string.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| conditioning_1 | CONDITIONING | — | |
| conditioning_2 | CONDITIONING | — | |
| schedule_1 | STRING | 0.000-0.125:1.50; 0.125-0.250:1.40; 0.250-0.375:1.20; 0.375-0.500:1.00; 0.500-0.625:0.80; 0.625-0.750:0.60; 0.750-0.875:0.40; 0.875-1.000:0.20 | — |
| schedule_2 | STRING | 0.000-0.125:0.20; 0.125-0.250:0.40; 0.250-0.375:0.60; 0.375-0.500:0.80; 0.500-0.625:1.00; 0.625-0.750:1.20; 0.750-0.875:1.40; 0.875-1.000:1.50 | — |
| interpolation | COMBO | gradual | 2 options: constant, gradual |
| sub_steps | INT | 81–64 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| conditioning | CONDITIONING | — |