Nodes/AnimateDiff Evolved/Adjust Weight [Indivβ—†Add] πŸŽ­πŸ…πŸ…“
ComfyUI Node Runs on cloud

Adjust Weight [Indivβ—†Add] πŸŽ­πŸ…πŸ…“

Nudging AnimateDiff's PE, attention, and other weights independently

By KosinkadinkΒ·Created 3 years agoΒ·Updated 8 days agoΒ· 3,519
Adjust Weight [Indivβ—†Add] πŸŽ­πŸ…πŸ…“
  • prev_weight_adjust
  • WEIGHT_ADJUST
β—„pe_ADD0.0000β–Ί
β—„attn_ADD0.0000β–Ί
β—„other_ADD0.0000β–Ί
β—„print_adjustmentfalseβ–Ί

ADE_AdjustWeightAllMult scales every weight in the motion module by the same number. This one splits that control three ways - positional encoding, attention, and everything else - and instead of multiplying, it adds a flat offset to each. That's a meaningfully different tool: multiplying preserves relative structure within a weight category, adding shifts the whole thing by a constant, which behaves differently especially on weights that are already small or near zero.

Why the split matters

The motion module's weights aren't one homogeneous blob - positional encoding weights govern how the model reasons about "where in time" a frame sits, attention weights govern how frames relate to each other, and "other" catches the rest of the module's parameters. AnimateDiff-Evolved's Weight Adjust family lets you reach into any one of those independently rather than accepting a single global scale. This particular node ("Indiv" = individual/per-category, "Add" = additive) is the coarser of the two per-category Add/Mult pairs - its sibling ADE_AdjustWeightIndivAttnAdd breaks attention down further into query/key/value/output-weight/output-bias if you need even finer control than "attention" as one bucket.

This is genuinely deep, experimental territory - closer to poking at the model's internals than adjusting a rendering setting - and it's not something most AnimateDiff users will ever need to touch. If you're here because a workflow you downloaded uses it, that's the more likely reason than needing to build one from scratch.

Inputs and output

  • pe_ADD, attn_ADD, other_ADD (floats, default 0, range βˆ’2 to 2) - additive offsets for positional-encoding weights, attention weights, and everything else respectively. 0 is a no-op for each.
  • print_adjustment (bool, off by default) - prints the computed values so you can see what's actually being applied rather than guessing from output alone.
  • prev_weight_adjust (optional, WEIGHT_ADJUST) - chain onto a previous weight adjustment (including an ADE_AdjustWeightAllMult node) to combine a global scale with these targeted offsets.
  • Output: WEIGHT_ADJUST - a settings object with no visible effect on its own; wire it into whichever node in your graph collects per-model AnimateDiff settings, which attaches to your motion model loader.

Installing the pack

ComfyUI Manager: search AnimateDiff Evolved, verify the author is Kosinkadink, install, restart. Manually:

cd ComfyUI/custom_nodes
git clone https://github.com/Kosinkadink/ComfyUI-AnimateDiff-Evolved

restart. This node itself needs no model file - it's a pure settings node - but a motion module (mm_sd_v15_v2, v3_sd15_mm, etc.) has to be downloaded into ComfyUI/models/animatediff_models for anything downstream to matter.

Common issues

Small offsets have outsized effects. Because this is additive rather than multiplicative, values that look tiny (0.1, 0.2) can meaningfully shift weights that started out small. Don't assume the βˆ’2 to 2 range implies βˆ’2 and 2 are reasonable operating points - start much smaller and step up gradually, watching output between each change.

You changed a value and the render looks identical. Confirm the WEIGHT_ADJUST output is actually wired into your model settings node - like the rest of this family, the node does nothing until it's attached to the motion model.

You want proportional scaling, not an offset. If your intent is "make attention stronger/weaker relative to what it already is" rather than "shift it by a fixed amount," you want ADE_AdjustWeightIndivMult instead - additive and multiplicative adjustments behave quite differently, especially away from the weight's natural scale.

KB gap: we have no documented real-world guidance on what these offsets are actually used for in practice, or which failure modes (specific artifacts, specific motion problems) each of pe_ADD/attn_ADD/other_ADD is meant to correct. That would be genuinely useful to capture from user reports the next time this pack comes up.

CategoryAnimate Diff πŸŽ­πŸ…πŸ…“/ad settings/weight adjust

Inputs (5)

NameTypeDefaultDescription
pe_ADDFLOAT0.0000-2–2β€”
attn_ADDFLOAT0.0000-2–2β€”
other_ADDFLOAT0.0000-2–2β€”
print_adjustmentBOOLEANfalseβ€”
prev_weight_adjustoptWEIGHT_ADJUSTβ€”

Outputs (1)

NameTypeDescription
WEIGHT_ADJUSTWEIGHT_ADJUSTβ€”