Skip to main content

AiCutyBench — GPT-Image-2.5 は AiCuty を再現できるか(歩留まり実測)

· 6 min read
AICU API Team
api.aicu.ai

AICU 公式キャラクター AiCuty を、GPT-Image-2.5 がどれだけ確実に再現できるかを測りました。 主観の「なんとなく似てる」ではなく、正本のデザイン仕様(プロンプト=設計図)を判定軸に、生成物を機械採点して歩留まりを出す—— これを AiCutyBench として、再現可能な形でまとめています。この記事はその過程と結果の記録です。

なぜ「歩留まり」で測るのか​

キャラクター API の価値は「1 枚きれいに出る」ことではなく、何度呼んでも同じキャラが出ることです。 GPT-Image-2.5 には seed がないため、再現性は「同じ設計図(プロンプト)から、どれくらいの確率で合格品が出るか」=歩留まりで評価するのが正直です。

方法(AiCutyBench)​

  1. グラウンドトゥルース=正本プロンプト。AiCuty の各キャラには公式リポジトリに「設計図」としてのプロンプトがあり(github.com/aicuai/AiCuty)、 そこから「変えても残る特徴」を判定軸として抜き出します(例: Mei なら高いサイドポニー・星のヘアピン・そばかす・スカート下のショートパンツ…の 8 項目)。
  2. 生成: 正本プロンプトを text-to-image(参照画像なし)で gpt-image-2.5-flare / sunburst に渡す。
  3. 採点: 生成物を GPT-4o Vision に渡し、判定軸ごとに present / partial / absent を判定させ、総合スコア(0–100)を出す。
  4. 歩留まり: 同条件で N 枚生成し、スコア 85 以上を合格として合格率を出す。

主観を排し、同じ手順を誰が回しても同じ数字が出る設計です(スクリプトは AiCuty リポジトリの bench/ に置いています)。

結果 1: 歩留まり(正本プロンプト → text-to-image)​

GPT-Image-2.5 Flare(6 人 × 各 10 枚 = 60 枚)

キャラ合格歩留まり平均スコア各回のスコア
Mei Soleil10 / 10100%92100 90 95 85 87 95 90 95 87 95
Saki Noire10 / 10100%100100 95 100 100 100 100 100 100 100 100
Elena Bloom10 / 10100%99100 95 95 100 100 100 100 95 100 100
Nao Verde10 / 10100%9895 100 100 90 100 100 95 100 95 100
Mina Azure10 / 10100%100100 100 100 100 100 100 100 100 100 100
Marsha Arancia10 / 10100%100100 100 100 100 100 100 100 100 100 100
合計60 / 60100%98—

GPT-Image-2.5 Sunburst(各 5 枚)

キャラ合格歩留まり平均スコア各回のスコア
Mei Soleil5 / 5100%95100 100 87 100 90
Saki Noire5 / 5100%99100 100 100 100 95
  • 6 人全員・60 枚すべてが合格(歩留まり 100%)。「正本プロンプトを渡せば、ほぼ毎回そのキャラが出る」が数字で言えました。
  • Mei のスコアのばらつき(85〜100)は、主にそばかすの有無。細部の取りこぼしが起きるのはここです。
  • Saki(濃色・情報量の多い衣装・左目にかかる前髪・指を唇に)はほぼ毎回満点。複雑な設計でも、設計図が明確なら再現できます。
  • Elena・Nao も最低 90〜95 で、減点はどの回も 1 項目分(partial)程度。合格ライン 85 を割った回はありません。
  • Mina・Marsha は 10 枚とも満点。色数が少なく輪郭のはっきりした設計ほど安定します。
  • Sunburst は平均スコアがわずかに高い(Mei 92 → 95)が、歩留まりは同じ。

結果 2: quality 5 段階(Mei・Flare・1024×1024)​

quality出力画像トークン生成時間忠実度
low19615.3 s87
medium43913.1 s90
high1,75621.6 s88
xhigh3,12229.2 s100
max7,02451.9 s100
  • 出力トークン(=生成コストの実体)は low → max で約 36 倍。
  • トークン数はサイズではなく形状で変わり、正方形がいちばん高い。同じ high でも 1024×1024 = 1,756、1920×1088 = 1,325(画素数は約 2 倍なのに少ない)、1728×800 = 893、1536×512 = 535。横長バナーは正方形より安い。この表の数字は 1024×1024 のもの。
  • 忠実度は low〜high でほぼ横ばい、xhigh で満点に跳ね上がる。max は xhigh の約 2.3 倍のトークンで忠実度は同じ。
  • 実務の目安: 速く回すなら medium、細部まで確実に再現したいなら xhigh。max は必要な時だけ。

途中で分かったこと(正直に)​

  • 「作り直し」はダメ。既存のリファレンスシートを "Recreate" させると、レイアウトごと描き直して崩れる。絵は作り直さず高画質化し、文字は画像生成に任せず PIL で合成する二段構えが正解(文字は画像モデルが崩す)。
  • 正本プロンプトを使うと細部が来る。単体の参照画像+汎用プロンプトでは Mei のショートパンツがスカートになった。正本の設計図プロンプトにしたら、ショートパンツまで再現された。
  • 多人数同時は楽器・衣装の取り違えが起きる。6 人を 1 枚にすると、担当楽器(Mei=ドラム、Mina=キーボード、Saki=ベース)が入れ替わることがある。キャラごとに楽器と衣装を明示し、直らない箇所は局所編集で 2 回目を回す。
  • input_fidelity は GPT-Image-2.5 系(Flare / Sunburst)も gpt-image-2 も受け付けない(400 invalid_input_fidelity_model。gpt-image-1.5 系のパラメータ)。顔やロゴの忠実度は、プロンプトで参照画像の役割を書いて担保する。
  • Flare と Sunburst は同じ設定なら消費トークンが同じ。差は品質と待ち時間だけ。

商品化判断の材料として​

  • 正本プロンプト × GPT-Image-2.5 Flare で、6 キャラ・計 60 枚が歩留まり 100%(平均スコア 98)。Sunburst も 2 キャラ・10 枚で 100%。 「呼ぶたびに同じキャラが出る」がキャラクター API の前提条件で、それは満たせました。
  • 残る詰めどころは「そばかす」のような微細な特徴の取りこぼし(最低スコア 85、Mei)。xhigh 指定、または判定軸で落ちた特徴をプロンプトで強調して 2 回目を回す、で埋まります。
  • 結論: キャラクター API の生成エンジンとして GPT-Image-2.5 は採用に足る、が AiCutyBench の答えです。 採用の形(既定モデルの切替、quality の既定値、多人数構図の扱い)はこの結果をもとに決め、決まり次第この blog でお知らせします。

AiCutyBench のスクリプト・正本プロンプト・判定軸・結果 CSV は github.com/aicuai/AiCuty の bench/ にあります。同じ手順で再現できます。