Scaled Soft Weights ππ π π
The My prompt is more important knob for ComfyUI
- cn_extras
- CN_WEIGHTS
- TK_SHORTCUT
If you ever used Automatic1111's ControlNet extension, you'll remember the "My prompt is more important" and "ControlNet is more important" toggles. This node is how you get both in ComfyUI - and better than toggles, because they're continuous dials rather than on/off. It produces a set of per-block weights that softens the ControlNet's grip, letting your prompt breathe while the control still holds the composition.
It's the single most useful "weights" node in the pack for everyday image work, and it's tiny - two required settings and you're done.
How it works
A ControlNet injects its signal at each of the UNet's blocks. This node scales those injections unevenly: base_multiplier sets a falloff so deeper blocks contribute less, which is what "soft" means here - the control shapes the broad composition but stops dictating fine detail, so the prompt reclaims it. That's the "My prompt is more important" behavior. The separate uncond_multiplier controls the ControlNet's effect on the unconditional (negative) pass; setting it to 0 reproduces A1111's "ControlNet is more important" exactly, and values between 0 and 1 let you land anywhere in between - which the toggle-based UIs never allowed.
The inputs and outputs that matter
Two required:
base_multiplier(default 0.825) - the softness. 1.0 is effectively full strength across the blocks; lower it toward ~0.8 or below to hand more of the image back to the prompt. This is the knob you'll actually turn.flip_weights(default false) - reverses which blocks get the stronger weighting. Occasionally useful for a different balance of structure vs detail; leave it off unless you're experimenting.
Optional uncond_multiplier (default 1.0) is the "ControlNet is more important" control - drop it to 0 for the full A1111 effect. Optional cn_extras takes extra weight data (for example the mask from Anima LLLite Extras).
Two outputs: CN_WEIGHTS, which you feed into the weights_override input on an Apply Advanced ControlNet node (or into cn_weights on a Timestep Keyframe), and TK_SHORTCUT, a ready-made Timestep Keyframe carrying these weights so you can wire straight into a loader's timestep input without building a separate keyframe node.
How to install it
ComfyUI Manager: search ComfyUI-Advanced-ControlNet, install, restart. Or:
cd ComfyUI/custom_nodes
git clone https://github.com/Kosinkadink/ComfyUI-Advanced-ControlNet
then restart. No dependencies, nothing to download - this is pure weight math built into the pack.
Common issues & troubleshooting
You wired it up and nothing changed. The CN_WEIGHTS output has to actually reach the ControlNet - connect it to weights_override on the apply node, or cn_weights on a Timestep Keyframe that the ControlNet uses. A dangling weights node does nothing.
"Incompatible weight type" error. Custom weights must match the loaded ControlNet's structure. This node is shaped for standard ControlNets; for a T2IAdapter use T2IAdapter Soft Weights, and for Anima LLLite use ControlNet Custom Weights [Anima]. The error message names which types are valid.
You wanted the old A1111 toggles. They map cleanly: soften the image toward the prompt with base_multiplier, and for "ControlNet is more important" set uncond_multiplier to 0.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| base_multiplier | FLOAT | 0.8250β1 | β |
| flip_weights | BOOLEAN | false | β |
| uncond_multiplieropt | FLOAT | 1.000β1 | β |
| cn_extrasopt | CN_WEIGHTS_EXTRAS | β |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| CN_WEIGHTS | CONTROL_NET_WEIGHTS | β |
| TK_SHORTCUT | TIMESTEP_KEYFRAME | β |