AI metadata
last updated
Stable Diffusion tools like A1111, Forge and ComfyUI save how an image was made inside the file: the prompt, the model, the seed, sometimes the whole workflow. monbooru reads all of it as images arrive, shows it on the image’s page, and lets you search on it.
It reads PNG, JPEG and WebP files. AVIF and JPEG XL files aren’t read.
What you see#
An image’s page gets a Generation data block: prompt, negative prompt, model, sampler, seed and the rest, with the raw parameters or the full ComfyUI workflow underneath.
At the top of the block is the generation hash, a short fingerprint of the recipe (prompt, model, sampler, steps, CFG, but not the seed). Every image made from the same recipe shares it, so clicking it lists all your re-rolls of that prompt together.
A PNG that only carries ComfyUI’s editor graph, without the API version of the workflow, gives up its nodes but no prompt, seed or model.
Searching#
| Search | Finds |
|---|---|
ai:any |
any image with generation data (ai:a1111, ai:comfyui, ai:none also work) |
prompt:catgirl |
images whose prompt contains “catgirl” |
model:sdxl |
images made with a model whose name contains “sdxl” |
sampler:dpm |
images made with a matching sampler |
seed:12345 |
images with that exact seed |
generated:abcd1234abcd |
images sharing that generation hash |
They combine like any other search: ai:comfyui model:sdxl prompt:cat
finds the ComfyUI images of cats made with an SDXL model.
Searching inside a ComfyUI workflow#
prompt:, model: and sampler: only see the handful of values
monbooru picks out of a workflow, from the nodes it knows. A custom
node it doesn’t know can be taught to it, see
Configuration.
comfyui: searches the whole thing: every node the workflow uses and
every value set on it, custom nodes included.
| Search | Finds |
|---|---|
comfyui:IPAdapterAdvanced |
workflows that use that node |
comfyui:lora_name=my_lora.safetensors |
a node input set to that value |
comfyui:lora_name=*detail* |
the same with a wildcard |
comfyui:steps=20..30 |
a number in a range |
comfyui:"title=Base pass" |
a node by its title; quote values with spaces |
The easiest way in is the Generation data block itself: every node
name and value there is a link that runs the search finding it. Typing
comfyui: in the search bar also suggests the nodes and values your
own images use.
A search term matches anywhere in the workflow, so
comfyui:KSampler comfyui:steps=28 finds workflows that have both,
not necessarily on the same node.
