Conditioning Average Keep Magnitude (Nukun)
Blend prompts without the quiet-louder seesaw
- conditioning_to
- conditioning_from
- conditioning
Plain averaging two conditioning vectors has a subtle failure mode: the average of two vectors is usually shorter than either one, and a shorter conditioning is a weaker prompt. Blend two prompts 50/50 and the result can drift toward mush - the concepts mix but the overall push gets diluted. NukunConditioningAverageKeepMagnitude does the same linear blend but renormalizes the result back to the original magnitude, so the mix keeps its punch.
It's the "weighted average, length-preserving" sibling in the Nukun conditioning family, sitting next to the slerp node. Think of it as the pragmatic version: slerp rotates on a sphere, this one blends linearly and then rescales.
How it works
Given conditioning_to and conditioning_from, it computes to * strength + from * (1 - strength) per token vector, then rescales the result to match the original vector lengths. The conditioning_to_strength input (0.0–1.0) is your blend slider: 1.0 is pure conditioning_to, 0.5 is an honest half-and-half, 0.0 is pure conditioning_from.
One output, conditioning, straight into the sampler's positive or negative path.
What it's actually good for
The killer use is prompt strength control without rewriting. You have a prompt that's technically right but renders too intense - too many details fighting, prompt bleed between subjects. Instead of deleting terms, blend the conditioning with an empty/neutral conditioning at, say, 0.7 strength. The concepts stay, the push softens, and because magnitude is preserved you're tuning character, not volume. Same idea in reverse: if a prompt renders weak, you can't amplify it with this node directly (it preserves magnitude by design), but you'll know the blunt dial is elsewhere.
It's also the gentler cousin of slerp for concept mixing: if a half-and-half slerp between two prompts gives you weird artifacts, the linear keep-magnitude average is the more forgiving blend, and it's the one most people land on for style-vs-subject mashups where one conditioning is "the scene" and the other is "the style".
The caveats
Same structural rules as the other conditioning blends: both inputs must come from the same CLIP/model family or the math is meaningless. And don't expect magnitude preservation to fix a negative prompt that's too weak - negative conditioning behaves differently, and the Nukun pack's ConditioningAdjust with its negative_tamer preset is the more deliberate tool for that job.
Installing it
cd ComfyUI/custom_nodes
git clone https://github.com/OnekoSL/Nukun_ComfyUI_Nodes.git
Restart ComfyUI or install via ComfyUI Manager ("Nukun").
The takeaway
If you only pick one conditioning-blend node, this is honestly the one I'd reach for first: it's simpler than slerp, harder to misuse, and the "blend toward empty to tame a hot prompt" trick is genuinely useful in everyday work. Slerp earns its place when you're animating blends or need the geometric purity; for a quick 60-second prompt tweak, keep-magnitude averaging is the workhorse.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| conditioning_to | CONDITIONING | — | |
| conditioning_from | CONDITIONING | — | |
| conditioning_to_strength | FLOAT | 0.500–1 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| conditioning | CONDITIONING | — |