ComfyUI Extension: Negative-attention-for-ComfyUI-

Authored by Extraltodeus

Created

Updated

9 stars

Run ComfyUI workflows without the setup

No installs, no CUDA version roulette, no GPU sitting idle on your bill. Bring a workflow and run it in the browser.

Takes the difference in between the positive and negative conditioning at the attention. NOTE: Will not work with Flux

Looking for a different extension?

Custom Nodes (2)

README

Negative-attention-for-ComfyUI-

Takes the difference in between the positive and negative conditioning at the cross attention.

This is an experiment.

Only tested with SDXL and SD 1.X.

Will not work with Flux (see bottom note).

This allows to:

  • Get a negative influence without generating a negative prediction
  • Let the unconditional prediction be unconditional
  • Or doubling down by having the same done for the negative prediction (overblown results are to be expected unless using an anti-burn or low CFG scale)

In order to do this for now the negative conditioning is sneaked to the attention by being concatenated to the positive by using a special node.

image

They are then split at the half before the cross attention.

Like any model patcher, it is to be plugged right after the model loader:

image

An example workflow is provided.

Example:

No modification:

00022UI_00001_

Difference in positive and negative conditionings:

example workflow png

Difference in positive conditioning, negative conditioning empty:

00023UI_00001_

No modification using empty negative conditioning:

00025UI_00001_

Note

I haven't managed to make this work with anything but SDXL / SD1.5

I did spend two hours looking for how to patch the equivalent of the cross attention for Flux but did not find how (like the keywords for the patch or something).

Any help appreciated!

Run ComfyUI workflows without the setup

No installs, no CUDA version roulette, no GPU sitting idle on your bill. Bring a workflow and run it in the browser.

Learn more