Pony Prefix
Builds the score_9 incantation so you don't have to memorize it
- string
There's a weird little piece of AI history baked into every Pony Diffusion prompt, and this node exists to spare you from typing it by hand. Pony V6 XL was trained with a quality-rating system: images were hand-scored 1–5 by AstraliteHeart, an aesthetic classifier learned those preferences, and the whole training set got captioned with score tags. The intent was graded control - "give me everything score_8 and up." What actually happened, per the team's own admission, is a training quirk where the model learned the entire concatenated string as the signal, not the individual tags. So instead of a clean modular system, you're stuck typing out score_9, score_8_up, score_7_up, score_6_up, score_5_up, score_4_up more or less verbatim if you want the quality boost to land. This node builds that string for you, plus the related rating and source tags, so you don't have to keep a cheat sheet open.
Where it matters and where it doesn't
This is important: score tags only mean anything on Pony V6 XL and its derivatives. They're inert on Illustrious, NoobAI, base SDXL, Flux, Chroma - anywhere else. And even within the Pony ecosystem the practice is fading - community data shows people actually writing out the full score prefix has dropped roughly 75% year over year, even though talk about the tags has barely declined, because a lot of what's left is retrospective complaint and boilerplate pasted onto models where it does nothing. Pony V7 kept the vocabulary in a weaker, non-concatenated form and its own model card concedes the tags underperform V6's. So: reach for this node on a V6-family checkpoint, skip it everywhere else, and don't paste its output into your default negative/positive template out of habit.
Inputs and outputs
add_score- off by default. Toggles whether the score portion (thescore_9, score_8_up…string) is included at all.score_start/score_end- default 9 and 4, matching the model card's own recommended range. Rarely worth changing from the defaults.rating- a combo, defaultnone. Picks arating_tag (rating_safe,rating_questionable,rating_explicitper the model's own convention) to steer content rating.source- a combo, defaultnone. Picks asource_style tag (source_anime,source_furry,source_cartoon,source_pony) that switches which of the model's trained aesthetics you're drawing from - a common trick is putting your desired source in the positive prompt and the unwanted ones in your negative.
Output is a single string - the assembled prefix, meant to sit at the front of your positive prompt, ahead of your actual subject description.
Installing it
ComfyUI Manager: search Sage Utils, install, restart. Manually:
cd ComfyUI/custom_nodes
git clone https://github.com/arcum42/ComfyUI_SageUtils
cd ComfyUI_SageUtils
pip install -r requirements.txt
Restart ComfyUI. Nothing model-specific to download for this node - it just builds a string.
Common issues
The number one mistake is using this on a non-Pony model and being confused when it does nothing - it won't hurt anything, but it also won't help, and it'll eat a chunk of your prompt's token budget for no return. Second: if you're not seeing the quality lift you expect even on a genuine Pony V6 checkpoint, remember the mandatory string is what got trained in, not the individual tags - turning add_score off, or trimming the range, defeats the whole mechanism. And if you're on Pony V7 specifically, temper expectations: the model's own documentation admits the tags "have much weaker performance compared to V6" - this node will still build a syntactically correct string, it's the model underneath that's less responsive to it.
Inputs (5)
| Name | Type | Default | Description |
|---|---|---|---|
| add_score | BOOLEAN | false | Include a generated score string in the prefix. |
| score_start | INT | 9 | The starting score for the prefix score range. |
| score_end | INT | 4 | The ending score for the prefix score range. |
| rating | COMBO | none | The rating to include in the prefix. |
| source | COMBO | none | The source type to include in the prefix. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| string | STRING | The generated Pony prefix string. |