Nodes/Sage Utils/Pony Score
ComfyUI Node

Pony Score

The score_9, score_8_up incantation, generated instead of memorized

By arcum42·Created 2 years ago·Updated 28 days ago· 33
Pony Score
    • score_text
    score_start9
    score_end4
    up_totrue

    Every Pony prompt opens the same way: score_9, score_8_up, score_7_up, score_6_up, score_5_up, score_4_up. It's not a style choice, it's a workaround. Pony's training fused the quality-tag string together, so the model treats the whole sequence as one quality marker - and the community consensus is you basically have to paste the full string or you leave quality on the table.

    Pony Score generates that string for you. Two numbers and a checkbox in, the exact incantation out.

    How it works

    Three inputs:

    • score_start - where the range begins, 0–9, default 9.
    • score_end - where it stops, 0–9, default 4.
    • up_to - whether scores below 9 get the _up suffix, default on.

    The node walks down from start to end and emits each score tag. score_9 is always plain (there's no score_9_up). Everything below 9 gets _up when the checkbox is on. So the default produces:

    score_9, score_8_up, score_7_up, score_6_up, score_5_up, score_4_up,
    

    Which is the canonical Pony quality header. Comma and trailing space included, because the training-string quirk means exactness matters.

    The v6 / v7 catch

    This is where the tooltip earns its keep: "(v6 uses up, v7 doesn't)". For Pony v6, the _up suffix is part of the incantation - score_8_up and friends. For v7, the style dropped the _up suffix, so the tags are just score_8, score_7, and so on. Flip up_to off for v7 and you get the right shape. The KB's Pony notes also flag that v7's quality tags are weaker and less reliable than v6's anyway, so if you're on v7 this node is doing less heavy lifting.

    What you wire it into

    The score_text output is a STRING. Join it into your positive prompt via the pack's Join Text / Triple Join Text nodes, sitting right before Sage_PonyRatingv6 and Sage_PonySource - or let the Pony Prefix node in the same family assemble score + rating + source in one go.

    Installation

    Same pack, one install. ComfyUI Manager, search "Sage Utils", or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/arcum42/ComfyUI_SageUtils
    cd ComfyUI_SageUtils
    pip install -r requirements.txt
    

    Restart ComfyUI. Only dependency is dynamicprompts; no models to download.

    The honest take

    It's a for-loop over a range wearing a node costume, and you could type the string yourself in the time it took to read this. But typed by hand, it's easy to drop a tag or flip _up for the wrong generation - and with Pony, the exactness of the string is the whole game. If you build Pony prompts more than occasionally, this node turns a memorized incantation into two numbers and a checkbox you can stop proofreading.

    CategorySage Utils/text/prompt/pony

    Inputs (3)

    NameTypeDefaultDescription
    score_startINT90–9The starting score for the Pony score string.
    score_endINT40–9The ending score for the Pony score string.
    up_toBOOLEANtrueIf true, adds '_up' to the score string, except for score_9. (v6 uses up, v7 doesn't)

    Outputs (1)

    NameTypeDescription
    score_textSTRINGThe generated Pony score string.