Ideogram Load Image With Prompt
The Metadata Round-Trip That Actually Works From Disk
- image
- prompt_json
- status
The metadata loop closes here. IdeogramMetadataEmbedder writes a prompt into a PNG on save; IdeogramLoadImageWithPrompt reads it back by loading the file from disk by path - and that last part is the whole difference between this node and its sibling IdeogramMetadataReader.
Why does reading from disk matter? Because ComfyUI's IMAGE tensors don't carry metadata. A standard LoadImage → IMAGE path strips the tEXt chunks on the way to a tensor, so any node that receives a bare IMAGE is already too late. The pack's own README calls the tensor-based reader out on exactly this. Loading by path means the node reads the PNG file itself, extracts the embedded prompt from the file's metadata, and only then hands you an IMAGE tensor - metadata rescued before it gets destroyed. This is the node the pack wants you to use when you saved a file last week and need its prompt back.
Inputs
image_path- absolute path to a PNG, or a path relative to ComfyUI's output or input directories. The resolution logic tries it as-given, then relative to output, then relative to input - so a saved file underComfyUI/output/can be referenced by name.embed_key(default"ideogram_prompt") - the metadata key to recover. Must match the key the embedder used.
Outputs:
image- the loaded IMAGE. Importantly, this is always a valid IMAGE - on failure it returns a small black tensor rather than crashing, so the graph never breaks. That's the pack's graceful-failure philosophy in action.prompt_json- the recovered prompt, or""if nothing was found.status- what happened, in plain text.
The full loop
The showcase workflow showcase_05_embed_recover_roundtrip.json runs it end to end:
… → IdeogramMetadataEmbedder (save with prompt)
…later, Part B…
IdeogramLoadImageWithPrompt → prompt_json → IdeogramJSONValidator
Embed on save, recover on load, re-validate the recovered prompt. That's a genuinely useful archival workflow - the prompt is never lost, and it can be verified against the schema on the way back in.
Installing it
Part of the pack. ComfyUI Manager: search "Ideogram Palette and Prompt Tools". Or:
cd ComfyUI/custom_nodes
git clone https://github.com/SurrealByDesign/ComfyUI-Ideogram-Palette-and-Prompt-Tools
Restart ComfyUI. Only extra dependency: scikit-learn (Manager installs it, or pip install scikit-learn). Nodes under Ideogram/Palette, Python ≥ 3.10, tested on ComfyUI 0.24.0 / Python 3.12.
Gotchas and troubleshooting
- Empty
prompt_jsonbut the file loads fine? Either the embed key doesn't match, or the file was never written by the embedder (or was re-saved as JPEG, which destroystEXt). Checkstatus. - "Couldn't find the file"?
image_pathis resolved against output/input dirs as well as absolute - but a relative name must match the actual filename the embedder wrote, prefix and all. - Black image = graceful failure. If you see a black frame, the load failed and the node kept the graph alive. Check
statusto see why. - This reads PNG
tEXtmetadata. It's PNG-specific, full stop. Don't point it at JPEGs expecting a prompt to come back.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| image_path | STRING | — | |
| embed_key | STRING | ideogram_prompt | — |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |
| prompt_json | STRING | — |
| status | STRING | — |