Nodes/ComfyUI-easygoing-nodes/Key Name Inspector
ComfyUI Node

Key Name Inspector

Peek inside a model's weights when the merge nodes make no sense

By easygoing0114·Created 12 months ago·Updated 5 days ago· 5
Key Name Inspector
  • model
  • clip
  • vae
  • model
  • clip
  • vae
  • keys_report

The model-scale and merge nodes in this pack are all about matching weights by name - longest_prefix_match against keys like double_stream_blocks.3. or clip_g.encoder.layers.10. Which is great, until a slider does nothing and you have no idea what the actual keys in your model are called. Key Name Inspector is the debug tool for exactly that moment: wire a model, CLIP, or VAE in, and it lists every internal weight key name - to the console and as a string output - while passing your inputs through untouched.

What it does

Three optional inputs - model, clip, vae - and three pass-through outputs of the same types, plus a keys_report string. Wire up whatever you're trying to understand; it reads the keys from whichever inputs are connected and builds a report:

  • MODEL keys come from get_key_patches("diffusion_model.") - the same view the scale/merge nodes work on, so this is the ground truth for what your slider prefixes actually match.
  • CLIP keys come from get_sd(), the flat state-dict view.
  • VAE keys come from get_sd(), falling back to the raw first_stage_model.state_dict() when needed.

It prints the same report to the console (up to 80 keys per section, with a count) and hands you the full thing on the string output. Nothing is modified - it's a pure observer, and that's the point. You can drop it inline anywhere in a graph without disturbing the flow.

When you actually use it

Honestly? This is a node you install and mostly forget, then rescue you the first time a merge behaves mysteriously. The realistic workflow:

  1. Load your model, wire it into Key Name Inspector, run once.
  2. Read the key names (or the keys_report output) to see the real prefix structure of your model - is it diffusion_model. or something else? Are the blocks numbered the way the node's widget names assume?
  3. Now the sliders on the scale/merge nodes make sense, because you can see what each one will touch.

It's the missing "show me the keys" half of the model-merging story. The pack's merge nodes assume specific layer layouts per architecture - HiDream double/single stream blocks, Z-Image's layers.N, Krea2's renamed blocks.N - and when your checkpoint doesn't match the assumption, the symptom is "slider did nothing." This node tells you why in one run instead of a long afternoon.

Install

Search Easygoing in the ComfyUI Manager, or:

cd ComfyUI/custom_nodes
git clone https://github.com/easygoing0114/ComfyUI-easygoing-nodes.git

Restart ComfyUI. No extra dependencies; requires a current ComfyUI with the V3 node API or the pack won't register at all.

A note on reading it

For a CLIP or a big VAE, the report is long - thousands of keys for a Qwen-2.5-VL encoder, for instance. Don't read all of it. Skim the first few entries of each section to learn the prefix pattern, and check whether your model's block names line up with the scale node's widget names. If they match, your sliders are landing; if they don't, you've found the bug. The console print caps at 80 lines per section precisely so you're not drowning - the full list lives in keys_report.

Categoryadvanced/debug

Inputs (3)

NameTypeDefaultDescription
modeloptMODEL
clipoptCLIP
vaeoptVAE

Outputs (4)

NameTypeDescription
modelMODEL
clipCLIP
vaeVAE
keys_reportSTRING