Parameter Parser πͺ½
Turn raw PNG metadata into real, typed values
- formatted
- model
- sampler
- seed
- steps
- cfg
- positive_prompt
- negative_prompt
A raw metadata string is a wall of text. Parameter Parser πͺ½ is the node that slices it into useful pieces. You feed it the raw metadata (from Load Image + Metadata, or pasted in), and it hands back eight outputs - a formatted summary plus separate, correctly-typed values for the model, sampler, seed, steps, CFG, and both prompts. If you've ever wanted to grab the seed out of a downloaded image so you can reproduce it, this is the node.
What comes out
formatted- a human-readable multi-line summary: model, LoRAs,Seed | CFG | Steps | Sampler, resolution/denoise, and (optionally) the prompt.model- checkpoint/model name as a string.sampler- sampler name, with the scheduler appended when one's available (e.g.euler/ancestral).seed- as an actual INT, not a string. Feed it straight into a KSampler's seed.steps- INT.cfg- FLOAT.positive_prompt/negative_prompt- the two prompt strings.
That typed output is the whole point: seed is a number you can plug into a sampler, cfg is a float you can compare, not just print.
How it decides what it's looking at
The node sniffs the format before parsing: metadata starting with { is treated as ComfyUI's embedded prompt JSON; metadata containing a Steps: line is treated as the A1111/Civitai parameters dialect; anything else gets an attempt at the ComfyUI parser anyway. Empty input returns a harmless "No metadata" string and zeros - a much nicer failure mode than a crash. If it genuinely can't make sense of the text, formatted becomes "Could not parse metadata."
Two optional inputs give you control: show_prompt (whether the positive prompt appears in formatted) and max_prompt_length (truncation, 20β500, default 100). Prompts are long and ugly; you almost always want them truncated in the summary while the full text still lives in positive_prompt/negative_prompt.
The workflow it belongs to
The canonical chain is: Load Image + Metadata β metadata_raw β Parameter Parser β seed/sampler/steps/cfg into a Parameter Overlay (to bake a caption into the image), or seed into a KSampler to reproduce a look. It's also handy on its own: paste a parameters string from a Civitai page and immediately get the model name and seed as values you can wire anywhere.
Installing it
ComfyAngel installs once for all its nodes:
cd ComfyUI/custom_nodes
git clone https://github.com/ThepExcel/ComfyAngel.git
Restart ComfyUI, or search "ComfyAngel" in ComfyUI Manager. Pillow is the only dependency - no model downloads.
The one thing that will always disappoint you: this parser can only extract what's actually in the file. Screenshots, JPEG re-encodes, and stripped uploads carry no metadata to parse - the text chunks are gone before you ever load them. Garbage in, "No metadata" out.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| metadata | STRING | β | |
| show_promptopt | BOOLEAN | true | β |
| max_prompt_lengthopt | INT | 10020β500 | β |
Outputs (8)
| Name | Type | Description |
|---|---|---|
| formatted | STRING | β |
| model | STRING | β |
| sampler | STRING | β |
| seed | INT | β |
| steps | INT | β |
| cfg | FLOAT | β |
| positive_prompt | STRING | β |
| negative_prompt | STRING | β |