Nodes/Uncond-Zero-for-ComfyUI/Conditioning combine positive and negative
ComfyUI Node

Conditioning combine positive and negative

Fake a negative prompt when there's no negative pass

By Extraltodeus·Created 2 years ago·Updated 2 years ago· 50
Conditioning combine positive and negative
  • positive_conditioning
  • negative_conditioning
  • empty_conditioning
  • positive
  • negative
strength1.0

Here's the problem this node solves: if you're running Uncond Zero (this pack's core node), you're deliberately not generating a negative prediction anymore. Normally your negative prompt gets its power from that second, unconditioned pass - no pass, no effect. So how do you still tell the model "no extra fingers, no blurry background" when there's nothing to steer away from at sample time?

You fold the negative straight into the positive conditioning, before sampling ever starts. That's what this node does. Per the README: it "affects the positive conditioning with the negative." Your negative prompt stops being something the sampler subtracts and becomes something baked into what it's aiming for - effectively appended, weighted, to your positive prompt's meaning.

How it works

It's a conditioning-space merge, not a sampling-time trick. Feed it your positive and negative conditionings (both already CLIP-encoded), plus an empty conditioning to do the math against, and it blends the negative's signal into the positive at whatever strength you set. The README gives a concrete sense of the effect: putting just "bad quality" in the negative field showed up making everything downstream read as noticeably worse (as intended), and swapping the negative between "summer," "winter," and "water" visibly pushed the output's season and mood in that direction - despite never running a real negative pass.

It also touches the negative conditioning symmetrically, in case you want to use the node's negative output during ordinary sampling too - but the README is explicit that the main purpose is the positive side.

The inputs and outputs that matter

  • positive_conditioning / negative_conditioning (both CONDITIONING) - your usual CLIP Text Encode outputs.
  • empty_conditioning (CONDITIONING) - an empty/blank CLIP Text Encode, used as part of the combine math.
  • strength (default 1, range 0–2) - how hard the negative bleeds into the positive. This is the one dial you'll actually touch.

Outputs are positive and negative (both CONDITIONING) - wire positive into your sampler's positive slot as the one carrying the merged effect; negative is there if you're still sampling with a real negative pass in the mix.

How to install it

Via ComfyUI Manager: search Uncond-Zero-for-ComfyUI, install, restart. Or manually:

cd ComfyUI/custom_nodes
git clone https://github.com/Extraltodeus/Uncond-Zero-for-ComfyUI

then restart. No models to download, no extra dependencies - same lightweight install as the rest of the pack.

Common issues & troubleshooting

Your negative gets silently cropped if it's longer than your positive. This is the README's own stated caveat, and it's worth internalizing: "the combination will go as far as the shortest conditioning." If your negative prompt tokenizes to 3×77 and your positive only reaches 2×77, only two-thirds of the negative actually gets folded in - the rest is just dropped, no error, no warning. If you're writing a long negative prompt, either trim it or pad your positive up, and if you're on a TensorRT engine with a fixed context length, pair this with Conditioning crop or fill from the same pack to normalize lengths first.

strength above 1 can overpower your composition. It's tempting to crank it thinking "more negative influence, better," but since this is bleeding straight into the positive conditioning rather than opposing it through a real negative pass, going too high skews the whole image toward the negative's concepts rather than just suppressing them. Start at the default and nudge up in small steps.

This isn't a general negative-prompt fix. It's specifically built for the no-negative-pass world Uncond Zero creates. If you're sampling normally with CFG above 1, your negative prompt already works the standard way and you don't need this node in the graph.

Categoryconditioning

Inputs (4)

NameTypeDefaultDescription
positive_conditioningCONDITIONING
negative_conditioningCONDITIONING
empty_conditioningCONDITIONING
strengthFLOAT1.00–2

Outputs (2)

NameTypeDescription
positiveCONDITIONING
negativeCONDITIONING