Nodes/ComfyAngel/Parameter Parser πŸͺ½
ComfyUI Node

Parameter Parser πŸͺ½

Turn raw PNG metadata into real, typed values

By ThepExcelΒ·Created 8 months agoΒ·Updated about a month agoΒ· 14
Parameter Parser πŸͺ½
    • formatted
    • model
    • sampler
    • seed
    • steps
    • cfg
    • positive_prompt
    • negative_prompt
    β—„metadataβ–Ί
    β—„show_prompttrueβ–Ί
    β—„max_prompt_length100β–Ί

    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.

    CategoryComfyAngel/Utility

    Inputs (3)

    NameTypeDefaultDescription
    metadataSTRINGβ€”
    show_promptoptBOOLEANtrueβ€”
    max_prompt_lengthoptINT10020–500β€”

    Outputs (8)

    NameTypeDescription
    formattedSTRINGβ€”
    modelSTRINGβ€”
    samplerSTRINGβ€”
    seedINTβ€”
    stepsINTβ€”
    cfgFLOATβ€”
    positive_promptSTRINGβ€”
    negative_promptSTRINGβ€”