Nodes/ComfyUI-DareMerge/Gradient Reporting
ComfyUI Node

Gradient Reporting

See what a merge gradient actually contains

By 54rt1n·Created 3 years ago·Updated about a year ago· 98
Gradient Reporting
  • gradient
  • STRING
  • IMAGE
reportsize

Gradient Reporting is a debugging tool masquerading as a report node. It takes a LAYER_GRADIENT and tells you what's in it - which layer keys have ratios, and what those ratios are. If you've been burned by this pack's silent-contract behavior (a gradient that's missing a layer key means that layer just doesn't merge, with zero errors raised), this is the node you attach before a merge to find out what you're actually about to do.

The whole gradient pipeline - Block Gradient, Attention Gradient, Gradient Operations, Gradient Edit - builds and mutates these dicts, and none of them show you the result. This node exists to close that loop. Think of it as "print the dict," but in the graph.

The inputs

  • gradient - any LAYER_GRADIENT output from the gradient toolchain.
  • report - size or details. Both are text dumps, sorted with zero-padded numeric ordering so block 10 sorts after block 2 instead of before it.

The outputs

  • STRING - the report text, one layer: ratio per line. This is the output you'll actually read. With size you get the compact per-layer listing; details is the same shape in the current implementation. You can also wire the string into a text display node so it stays visible on your canvas.
  • IMAGE - declared as a second output, but the current implementation doesn't fill it for gradient reports, so treat it as a placeholder slot and don't build a workflow that depends on it. (Model Reporting is the report node that actually produces plots.)

When you'd actually use it

Three cases, in order of frequency. First, before your first merge with a hand-built gradient: confirm every layer you intended to include is present, and check you didn't accidentally filter everything down to model A. Second, after a Gradient Edit with wildcards: verify the pattern matched what you thought - unmatched patterns fail silently, and this is the only way to see it. Third, when a merge comes out wrong and you suspect the gradient: dump it, look at the ratios, and check whether the layer you blamed is even in there. It's not glamorous, but it's the difference between debugging a merge in minutes and debugging it in hours.

Install and gotchas

ComfyUI Manager (search "DareMerge") or:

cd ComfyUI/custom_nodes
git clone https://github.com/54rt1n/ComfyUI-DareMerge

Restart ComfyUI. Dependencies are matplotlib, numpy, torch, pillow - nothing to download (and matplotlib, the one dependency you might not have, is only really exercised by the plotting report nodes).

The realistic note: this is a utility node in a niche pack, and nobody writes praise threads about it. It earns its keep exactly once - when a merge mysteriously isn't happening the way the gradient implied. The report reads like a wall of key names, which is fine: you're looking for a specific key or a specific ratio, not reading it top to bottom.

CategoryDareMerge/report

Inputs (2)

NameTypeDefaultDescription
gradientLAYER_GRADIENT
reportCOMBOsize2 options: size, details

Outputs (2)

NameTypeDescription
STRINGSTRING
IMAGEIMAGE