Grok Image Describer Pro
Image In, Ready-Made Prompt + Negative Out (Describer Pro)
- image
- description
- positive_prompt
- negative_prompt
The plain Grok Image Describer hands you a caption and stops. The Pro version goes the rest of the way: it reads an image with Grok Vision, then turns the analysis into three ready-to-use outputs - a description, a positive prompt, and a negative prompt. That's the whole "captioner feeding an enhancer feeding the sampler" pipeline (llm-in-comfyui.md) collapsed into one node from the babydjacNODES pack.
The key difference from the light version is what happens after the API call. Grok writes the description, and then the node does a bunch of deterministic Python to build prompt-ready output: keyword mapping, score tags, style tags, and a big curated negative.
How it works
- Grok Vision describes the image (key resolves from widget, then
XAI_API_KEY/GROK_API_KEYenv vars). - Keyword mapping - the node scans the description for a hardcoded list of terms (
large bust,cleavage,tank top,thong,buttocks,heels,bun,kitchen,bent forward,voluptuous,oil, …) and emits corresponding weighted tags like(large breasts:1.3). This is a crude but effective tagger-by-keyword. - Score tags -
score_strategyorders the Pony quality tags:ascending=score_7_up, score_8_up, score_9,descending= the reverse,manual= a fixed order. Pony-checkpoint users know these tags matter (pony.md). - Style tags + negative - photorealistic style tags get appended, and the negative prompt is a long, robust list covering
score_4, score_5, score_6, anatomy issues, and(drawn, furry, illustration, cartoon, anime, comic:1.5)to keep Pony output photoreal.
prepend_text/append_text let you inject your own text around the description, and debug_output dumps extra info when you're trying to figure out why the tag mapping did what it did.
The inputs that matter
- image - required.
- api_key - env-var fallback, as above.
- score_strategy - pick
ascending(from 7 up to 9) ordescending(9 first) - the latter matches how most Pony prompt guides write it. - prepend_text / append_text - cheap ways to steer the description without editing tags.
Outputs: description, positive_prompt, negative_prompt - three STRINGs. Wire positive/negative to your Pony/realism checkpoint's conditioning.
Install
ComfyUI Manager → babydjacNODES, or git clone https://github.com/babydjac/babydjacNODES into ComfyUI/custom_nodes, restart, hard-refresh. No extra pip deps.
Gotchas
- The keyword map is tiny and specific. It covers ~13 terms. An image that Grok describes in words outside that list gets no mapped tags - so the positive prompt can look thin even when the description is rich.
extra_tags-style inputs don't exist here (unlike the PonyXL prompter), so you can't easily add your own vocabulary. - The negative is baked in and aggressive. The
(source_anime, source_furry, source_cartoon)blocking is great for photoreal Pony but actively wrong if you want anime output. There's no way to soften it in this node. - Cost. A vision call plus the post-processing - every run is paid.
If your workflow is "reference image → Pony prompt + negative, done," the Pro describer is the pack's closest thing to a one-stop shop. Just don't expect the tag mapping to generalize beyond its hardcoded vocabulary.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | — | |
| api_key | STRING | — | |
| prepend_text | STRING | — | |
| append_text | STRING | — | |
| score_strategy | COMBO | 3 options: ascending, descending, manual | |
| debug_output | COMBO | 2 options: disable, enable |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| description | STRING | — |
| positive_prompt | STRING | — |
| negative_prompt | STRING | — |