ComfyDeploy: How Negative-attention-for-ComfyUI- works in ComfyUI?
What is Negative-attention-for-ComfyUI-?
Takes the difference in between the positive and negative conditioning at the attention. NOTE: Will not work with Flux
How to install it in ComfyDeploy?
Head over to the machine page
- Click on the "Create a new machine" button
- Select the
Edit
build steps - Add a new step -> Custom Node
- Search for
Negative-attention-for-ComfyUI-
and select it - Close the build step dialig and then click on the "Save" button to rebuild the machine
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.
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:
An example workflow is provided.
Example:
No modification:
Difference in positive and negative conditionings:
Difference in positive conditioning, negative conditioning empty:
No modification using empty negative conditioning:
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!