Nodes/WAS_Extras/Conditioning (Blend)
ComfyUI Node

Conditioning (Blend)

Mixing two prompts into one without re-encoding

By WASasquatch·Created 3 years ago·Updated 10 days ago· 43
Conditioning (Blend)
  • conditioning_a
  • conditioning_b
  • conditioning
blending_mode
blending_strength0.500
seed0

You've already encoded two prompts and now you want something in between them - not "run both and average the images," but an actual blended conditioning that captures a bit of each. That's what this node does: take two CONDITIONING inputs, pick a blend algorithm, and get one CONDITIONING out. No re-encoding, no extra CLIP pass.

How it works

conditioning_a and conditioning_b go in, blending_mode picks how they combine, and blending_strength controls how much. The mode list is deliberately varied rather than one-size-fits-all: lerp is the plain linear mix everyone expects, slerp/hslerp/bislerp are spherical-interpolation variants (the same family of math used for blending noise and latents elsewhere in ComfyUI, generally a gentler blend of high-dimensional vectors than a straight lerp), cosine interp and cuberp are other interpolation curves, add/subtract/difference/exclusion combine the two more like image blend modes than a smooth mix, and inject and random do their own thing. The tooltip is honest that blending_strength's meaning depends on which mode you picked - it's not a universal 0-to-1 mix ratio across all twelve, so expect to experiment rather than assume.

Some modes are stochastic, which is why there's a seed input - set it if you want a random-mode blend to be reproducible instead of different every run.

This is the tool for prompt morphing and soft transitions between two ideas - think "portrait of a rosebud" blended toward "portrait of a full bloom rose" at strength 0.5 to land somewhere convincingly in between, without hand-writing an in-between prompt and re-encoding it.

The inputs and outputs that matter

  • conditioning_a / conditioning_b (CONDITIONING) - the two prompts you're blending. Order can matter depending on the mode (subtract and difference are not symmetric the way lerp is).
  • blending_mode - twelve options; start with lerp if you just want a predictable straight mix, reach for slerp/hslerp/bislerp if lerp feels flat, and treat add/subtract/difference/exclusion as the more experimental, image-blend-mode-flavored options.
  • blending_strength (default 0.5, range -10 to 10) - how much of the blend to apply. The wide range past 0-1 is deliberate: values beyond 1 or below 0 push past a simple mix into extrapolation territory for modes that support it.
  • seed - only matters for stochastic modes like random; ignore it otherwise.

Single output: conditioning - wire it into your KSampler's positive or negative input exactly like any other conditioning.

How to install it

Via ComfyUI Manager: search "WAS_Extras", install, restart. Manually:

cd ComfyUI/custom_nodes
git clone https://github.com/WASasquatch/WAS_Extras

Restart ComfyUI. No extra dependencies - this is pure tensor math on conditioning objects, nothing to download.

Common issues & troubleshooting

The blend doesn't look like "50% of each." That's expected for most of these modes - only lerp (and arguably cosine interp) behave like a literal percentage mix. Modes like difference or exclusion are combining, not averaging, so a strength of 0.5 won't read as "halfway between A and B."

Results are inconsistent between runs. You're on a stochastic mode (random is the obvious one) without pinning seed. Set it if you need reproducibility.

Pushing blending_strength past 1 breaks the image. That's overshoot, not a bug - the range goes to 10 (and down to -10) on purpose for modes that tolerate extrapolation, but most modes will start producing garbage well before you hit the extremes. Treat anything past roughly ±1.5 as experimental.

You want to blend at a specific point in the image, not the whole prompt. This node blends whole conditionings, not regions - it's not a substitute for spatial/regional prompting tools if what you actually need is different prompts in different areas of the canvas.

Categoryconditioning

Inputs (5)

NameTypeDefaultDescription
conditioning_aCONDITIONINGFirst conditioning input.
conditioning_bCONDITIONINGSecond conditioning input.
blending_modeCOMBOBlend algorithm to combine conditionings.
blending_strengthFLOAT0.500-10–10Blend strength; interpretation depends on mode.
seedINT00–18446744073709550000Optional seed to make stochastic modes reproducible.

Outputs (1)

NameTypeDescription
conditioningCONDITIONING