最近、多くのお客様から gpt image 2.5 で画像を一括生成した際に、同じ現象が起きるという報告が寄せられています。画像を拡大すると、細かなカラーバンドが見えるというものです。特に、人物の額や鼻筋、頬など、滑らかな肌色の部分に、かすかなピンク色の縦線が浮かび上がるケースが典型的です。あるお客様からは、「これにもカラーバンドは出るけれど、image2 ほど目立たない」という声がありました。品質パラメータを最高レベルまで上げるとカラーバンドは消えましたが、料金も数倍に跳ね上がりました。
この問題には一定の傾向があります。gpt-image-2.5 で発生するカラーバンドの多くは、quality パラメータと直接関係しています。品質レベルによって、モデルが1枚の画像に割り当てる出力トークン数、つまり「計算予算」が決まるためです。予算が不足すると、高周波のディテールが十分に収束せず、残った誤差が淡いピンク色の縦線やカラフルな斑点として画像に現れます。
この記事では、まず手元のカラーバンドがどのタイプに該当するのかを判断し、次に quality の設定がなぜカラーバンドに影響するのかを解説します。最後に、品質レベルの換算表、コスト比較、そしてできるだけ余計な費用をかけずに画像を生成するための方法を紹介します。

1. gpt image 2.5 のカラーバンド問題:5つのタイプ
「カラーバンド」という言葉は、ユーザーがさまざまな現象をまとめて呼んでいるものです。技術的には、少なくとも5つの異なる原因があります。まずタイプを見分けてから対処すれば、遠回りを大幅に減らせます。quality の調整で解決できるものもあれば、モデルとは無関係で、転送や圧縮の工程で発生しているものもあるためです。
1.1 表で gpt image 2.5 のカラーバンドのタイプを判別する
| カラーバンドのタイプ | 見た目 | よく見られる位置 | 根本的な原因 | quality の調整は有効か |
|---|---|---|---|---|
| カラフルな縦線/ノイズ | 淡いピンクやマゼンタの細い縦線、または赤・緑の小さな斑点。通常のサイズではほとんど見えない | 額、頬、鼻筋など滑らかな肌色の部分、暗部、夜景 | モデルの生成段階でディテールが十分に収束していない | ✅ 大きな効果あり |
| 格子/チェッカー模様 | 規則的な小さな正方形、ハニカム、波紋 | 雲、布、石材、水面 | モデルの生成段階で発生する構造的なアーティファクト | ✅ 一部有効 |
| グラデーションのバンディング | 空や壁に、輪状の段階的な色の境界が現れる | 広い範囲の滑らかなグラデーション | 非可逆圧縮または8bit量子化 | ❌ 出力形式の変更が必要 |
| 横方向の表示崩れ/帯状ノイズ | 画像の下半分が一面に色化けしたり、灰色のブロックになったりする | 画像の下部 | base64 転送の途中切断、または不完全なデコード | ❌ 転送の確認が必要 |
| 複数回の編集によるノイズ蓄積 | 編集するたびにノイズが増える | 画像全体 | 編集チェーンの繰り返しによるアーティファクトの蓄積 | ⚠️ 元画像からやり直す必要あり |
最初の2つはモデル側の問題で、gpt-image-2 のリリース後、コミュニティで特に多く議論されたアーティファクトです。OpenAI 開発者コミュニティでは、あるユーザーがこのアーティファクトについて、「画像によって見え方が異なり、点描画のようなものもあれば、JPEG圧縮の跡のようなものもあり、画像全体にカラフルな星が散らばったように見えるものもある」と説明しています。gpt-image-2.5 では、私たちが受け取ったお客様からの報告の中で、最も多いのが最初のタイプに含まれる「縦線」のパターンです。後半の3つはエンジニアリング上の経路に起因する問題で、quality をどれだけ上げても改善しません。
1.2 お客様の事例:何倍も拡大して初めて見えるピンク色の縦線
冒頭で紹介したお客様のフィードバックに戻りましょう。雨の夜、窓辺で撮影したリアルな人物画像は、最初に見たときにはかなりきれいでした。そのため、お客様にカラーバンドの位置を囲んで示してもらいました。印を付けられたのは額、鼻筋、両頬の部分で、いずれも広く滑らかな肌色の領域でした。私たちが当初予想していた髪や夜景の光ではありません。画像を何倍も拡大して、ようやく皮膚に沿って縦方向に分布する、かすかなピンク色の縦線が見えてきました。
興味深いのは、私たちには何倍も拡大しないと見えなかった一方で、お客様側では複数の人が一目で気づいていたことです。これは、gpt image 2.5 のカラーバンドの見え方が、閲覧環境に大きく左右されることを示しています。画面のピクセル密度、明るさ、色温度(True Tone や Night Shift などの自動的な暖色調整)、画像の拡大方法などが影響します。PPI の高い Retina ディスプレイでは、「ウィンドウに合わせる」表示によって1ピクセル幅の淡い線が平均化されることがあります。一方、一般的なディスプレイで100%表示にしたり、明るさを上げたり、スマートフォンで拡大したりすると、かえって見えやすくなります。そのため、カラーバンドの有無を判断するときは、自分の画面だけを基準にせず、最終ユーザーが普段使うデバイスを基準にする必要があります。
次の3ステップで確認すると、目視だけで探すよりも確実です。
- 元の PNG を用意する:チャットアプリで転送した圧縮画像は使わないでください。圧縮によって淡い縦線が消えたり、新しい色ブロックが生じたりすることがあります。
- 滑らかな領域を確認する:200〜400%まで拡大し、額、頬、鼻筋、単色の壁、空を重点的に確認します。これらの場所は本来のテクスチャによる隠れが少ないため、縦線が最も目立ちます。
- 色差チャンネルを拡大する:スクリプトを使って輝度を均一化し、色の偏差だけを拡大します。ピンク色の縦線がはっきり現れます。
展開:色差チャンネルを拡大し、ピンク色の縦線を確認するスクリプト
import numpy as np
from PIL import Image
img = Image.open("portrait.png").convert("YCbCr")
y, cb, cr = [np.asarray(c, dtype=float) for c in img.split()]
# 輝度を均一化し、色差だけを6倍に拡大すると、淡いピンク色の縦線が目立つマゼンタの帯になる
gain = 6
cb2 = np.clip(128 + (cb - 128) * gain, 0, 255)
cr2 = np.clip(128 + (cr - 128) * gain, 0, 255)
flat = np.full_like(y, 128)
check = np.stack([flat, cb2, cr2], axis=-1).astype("uint8")
Image.fromarray(check, "YCbCr").convert("RGB").save("chroma_check.png")
# 縦線を大まかに定量化する:列ごとに赤の色差の平均を求め、緩やかな変化を除いて変動幅を見る
col = cr.mean(axis=0)
detrended = col - np.convolve(col, np.ones(25) / 25, mode="same")
print("縦線の強度:", round(detrended[25:-25].std(), 3))
スクリプトが出力する chroma_check.png で、肌色の領域に規則的な縦方向のマゼンタの帯が現れた場合、それは典型的なモデル側の縦線です。「縦線の強度」の数値を使えば、同じ prompt で異なる quality レベルを横並びに比較できます。通常は、品質レベルが高いほど数値が低くなります。
💡 確認のポイント:カラーバンドが見つかったら、まず元の PNG を保存してから拡大確認してください。チャットアプリで転送された圧縮画像だけを見て判断するのは避けましょう。APIYI(apiyi.com)を通じて、同じ prompt を medium、high、xhigh の3つのレベルでそれぞれ実行し、結果を並べて比較することをおすすめします。これだけで、そのカラーバンドが quality の調整で改善できるタイプかどうかを判断できます。
二、gpt image 2.5のカラーバンドとqualityパラメータの関係
なぜ quality を上げるとカラーバンドを解消できるのかを理解するには、まず gpt image 2.5 の品質レベル設計を確認する必要があります。gpt-image-2.5 には Flare と Sunburst の2つのバージョンがあり、Flare は速度重視、Sunburst は品質を優先した、より高負荷なバージョンです。Sunburst は2026年9月8日にスナップショット gpt-image-2.5-sunburst-2026-09-08 としてリリースされました。OpenAIの公式モデルドキュメントによると、low、medium、high、xhigh、max、auto の6種類の quality 設定に対応しており、gpt-image-2 より xhigh と max の2段階が追加されています。
2.1 qualityのレベルは、実質的に計算リソースの予算
gpt imageシリーズにおいて、quality は後処理用のフィルターではありません。各画像の出力トークン数を直接決定するパラメータです。トークン数が多いほど、モデルが画面の細部を描写するための「筆致」が増えます。その結果、髪の毛や光の斑点、テクスチャといった高周波情報だけでなく、滑らかな領域における微妙な色の変化も、正確に再現されやすくなります。トークン予算が限られている場合、モデルは構図や主体を優先して維持するため、細部の領域には収束しきれていない残差が残り、カラーバンドやノイズとして現れることがあります。
この説明は、実際の検証結果とも一致しています。低いレベルほどカラーバンドが目立ちやすく、写実的な人物画像では特に発生しやすくなります。一方、レベルを xhigh や max まで引き上げると、問題はほぼ解消されます。
では、なぜ残差は肌色のような滑らかな領域に現れやすいのでしょうか。髪や背景の光の斑点にはもともと豊富なテクスチャがあるため、残差が「隠れやすい」からです。それに対して額や頬には本来ほとんどテクスチャがないため、規則的な色差があると人間の目にすぐ捉えられてしまいます。
なお、OpenAIは現在、これらのアーティファクトの正確な原因を公開していません。コミュニティでは、不可視ウォーターマーク、ノイズ除去器による偏り、周波数干渉など、さまざまな仮説が提唱されています。「計算リソースの予算不足」という見方は、現時点で quality との相関を最もよく説明できる、工学的な観点です。

2.2 レベル名が変わった:2.5のhighは、2のmediumに相当
これは、多くのユーザーがつまずく重要なポイントです。gpt-image-2 から gpt-image-2.5 に移行する際、コード内の quality="high" をそのまま残していると、最高レベルを使い続けているつもりでも、実際には計算リソースの予算が4分の1に縮小されています。
OpenAI公式の計算ツールにおける定数を整理したデータによると、1024×1024サイズの場合、gpt-image-2.5 の high は1,756出力トークンを消費します。これは gpt-image-2 の medium とちょうど同じです。一方、2.5の max は7,024トークンを消費し、gpt-image-2 の high に相当します。出力トークンの単価は100万トークンあたり30ドルで、変更されていません。
| gpt-image-2.5のレベル | 出力トークン(1024×1024) | 公式の1枚あたりの価格 | おおよそ相当するgpt-image-2のレベル | カラーバンドのリスク |
|---|---|---|---|---|
| low | 196 | 約 $0.006 | 2のlowを下回る水準 | 🔴 高 |
| medium | 439 | 約 $0.013 | 新たに追加された中間レベル | 🔴 高 |
| high | 1,756 | 約 $0.053 | 2のmedium | 🟡 中 |
| xhigh | 3,122 | 約 $0.094 | 2のmediumとhighの中間 | 🟢 低 |
| max | 7,024 | 約 $0.211 | 2のhigh | 🟢 極めて低 |
この表からも、顧客が「image2ほど目立たない」と話していた理由が分かります。gpt-image-2.5 はモデルレベルでノイズが改善されており、第三者による評価でも、ノイズパターンは「軽減されたものの、完全には解消されていない」とされています。そのため、同じトークン予算で比較すると、カラーバンドは gpt-image-2 より軽減されています。しかし、予算が high 以下にとどまる場合、ディテールの多い人物画像では依然として残留する可能性があります。

🎯 移行のアドバイス: gpt-image-2 から gpt-image-2.5 に切り替える際は、以前の quality パラメータをそのまま使わず、必ず再評価してください。APIYI(apiyi.com)では、同じインターフェース上で gpt-image-2 と gpt-image-2.5-sunburst を切り替えられます。
modelフィールドを変更するだけで A/B 比較を実施できます。
3. gpt image 2.5 のカラーバンド対策
原因が分かれば、解決策は大きく2つに分けられます。モデル側のカラーバンドには計算リソースの予算を適切に配分し、エンジニアリング側のカラーバンドには出力処理と伝送経路を見直します。まずは、最小限の実用的な呼び出しコードを紹介します。
3.1 クイックスタート:適切な quality で gpt image 2.5 を呼び出す
以下は、OpenAI互換インターフェース経由で gpt-image-2.5-sunburst を呼び出す最小構成の例です。人物や夜景など、ディテールが多いシーンでは xhigh から始めることをおすすめします。
import base64
from openai import OpenAI
client = OpenAI(api_key="YOUR_API_KEY", base_url="https://api.apiyi.com/v1")
result = client.images.generate(
model="gpt-image-2.5-sunburst",
prompt="夜景窗边的女性肖像,雨夜城市灯光虚化,电影感布光",
size="1024x1536",
quality="xhigh", # 细节密集画面建议 xhigh 起步
output_format="png", # 无损输出,避免压缩色带
)
with open("portrait.png", "wb") as f:
f.write(base64.b64decode(result.data[0].b64_json))
展開:ドラフトを低品質設定で作成し、最終版を高品質設定で出力するスクリプト
import base64
from openai import OpenAI
client = OpenAI(api_key="YOUR_API_KEY", base_url="https://api.apiyi.com/v1")
MODEL = "gpt-image-2.5-sunburst"
def gen(prompt: str, quality: str, n: int = 1, size: str = "1024x1024"):
resp = client.images.generate(
model=MODEL, prompt=prompt, size=size,
quality=quality, n=n, output_format="png",
)
return [base64.b64decode(d.b64_json) for d in resp.data]
def draft_then_final(prompt: str, drafts: int = 4):
# 第一步:用 medium 低成本出多张草稿,只看构图和创意
for i, img in enumerate(gen(prompt, "medium", n=drafts)):
open(f"draft_{i}.png", "wb").write(img)
# 第二步:人工选定方向后,只对最终稿使用高档位
revised = input("输入修改后的 prompt(直接回车沿用原 prompt): ").strip()
final = gen(revised or prompt, "xhigh")[0]
open("final.png", "wb").write(final)
print("定稿已保存为 final.png")
if __name__ == "__main__":
draft_then_final("夜景窗边的女性肖像,雨夜城市灯光虚化,电影感布光")
段階的に画像を生成する考え方は、必要なところにだけコストをかけることです。ドラフト段階では medium で素早く試行錯誤し、構図が決まってから xhigh や max で最終版を出力します。これにより、最終画像のカラーバンドを避けながら、すべての試行画像に最高品質の料金を支払う必要もなくなります。
🚀 クイックスタート:異なる
quality設定での画像生成結果をすぐに検証したい場合は、APIYI(apiyi.com)の利用がおすすめです。OpenAI互換インターフェースを提供しているため、既存の gpt-image-2 コードはbase_urlとmodelを置き換えるだけで、上記のスクリプトを実行できます。
3.2 シーンに応じて gpt image 2.5 の quality 設定を選ぶ
すべての画像に max が必要なわけではありません。カラーバンドの見えやすさは、画像の内容や最終的な表示サイズに大きく左右されます。フラットなイラストやアイコンなど、低周波成分の多い画像であれば、medium でもノイズはほとんど目立ちません。
| 使用シーン | 画面の特徴 | 推奨設定 | 理由 |
|---|---|---|---|
| クリエイティブなドラフト、構図の探索 | 全体の方向性だけを確認 | medium | 最も低コストで、カラーバンドが判断に影響しにくい |
| フラットなイラスト、アイコン、UI素材 | 色面が大きく、ディテールが少ない | high | 低周波の画像ではノイズが目立ちにくい |
| EC商品画像、ポスター | 素材の質感やテクスチャが多い | xhigh | 布や金属の質感でアーティファクトが目立ちやすい |
| 写実的な人物、夜景 | 広い滑らかな肌色や暗部がある | xhigh または max | ピンク色の縦線が最も発生しやすいシーン |
| 印刷、大画面での表示 | 拡大して閲覧される | max | 拡大すると、わずかな残差も目立つ |

3.3 エンジニアリング側でのカラーバンド修正方法
上の表を見て、カラーバンドが後半の3つのケースに該当すると判断した場合、quality を上げても余計なコストがかかるだけです。以下の表に沿って、項目ごとに確認してください。
| 問題の症状 | 確認すること | 修正方法 |
|---|---|---|
| 空や壁に段階的な色の帯が現れる | output_format と output_compression を確認 |
png を使用するか、jpeg/webp の圧縮率を90以上に設定 |
| 画像の下部全体が灰色になったり、色が崩れたりする | base64 デコード後のファイルサイズを比較 | タイムアウト時間を延長し、PNGファイル末尾の完全性を確認してから保存 |
| 編集を数回繰り返すとノイズが増えていく | 各回の出力を確認 | 常に最初のノイズのない元画像を編集入力として使用 |
| CDNやフロントエンドで表示すると初めて現れる | 元画像をダウンロードして比較 | 画像サービスによる二次的な非可逆圧縮を無効化 |
複数回の編集によるノイズの蓄積については、特に注意が必要です。コミュニティのテストでは、同じセッション内で3枚目から5枚目まで連続して反復編集すると、ノイズが明らかに増幅されることが分かっています。何度も修正するワークフローでは、毎回最初のクリーンな元画像に戻り、修正内容を1つの指示にまとめてください。直前の出力画像に、さらに修正を重ねていく方法は避けましょう。
3.4 プロンプトによる補助的な対策
パラメーターだけでなく、プロンプトもある程度の緩和策になります。プロンプトの末尾に clean, noise-free, smooth skin gradients, no grain のような表現を加えると、モデルに粒状感を抑えるよう促せます。ただし効果には限界があり、低品質設定で根本的に計算予算が不足している場合の解決にはなりません。
より効果的なのは、画像内の高周波成分を減らすことです。例えば夜景の人物画像で、「密集した都市のネオンボケ」を「柔らかな都市の灯りのボケ」に変更します。ディテールの密度が下がれば、同じ設定でもカラーバンドが発生する可能性を大きく抑えられます。
4. gpt image 2.5 における色付き縦縞のコストとの兼ね合い
冒頭で紹介した顧客の「超高品質はなくなったのに、価格が何倍にもなった」という言葉に戻りましょう。これは、現時点で避けては通れないトレードオフです。high から xhigh に上げると、1枚あたりのコストは約1.8倍、max まで上げると4倍になります。すべてを max に切り替えると、月間予算は大幅に増加します。
| 画像生成の方針 | 100枚を最終採用した場合の出力コスト(1024×1024、公式価格) | 色付き縦縞のリスク | 適したチーム |
|---|---|---|---|
| すべて high | 約 $5.3 | 人物シーンでは比較的高い | イラスト、素材系のビジネス |
| すべて xhigh | 約 $9.4 | 低い | 多くの商用画像生成 |
| すべて max | 約 $21.1 | 非常に低い | 印刷、ブランド用の大判画像 |
| 1枚につき medium の草稿を4枚+xhigh の最終版を1枚 | 約 $14.7 | 最終版では低い | 大量の試行が必要なクリエイティブチーム |
おすすめは、すべてを一律に切り替えるのではなく、用途に応じて段階的に使い分ける方法です。イラスト系は high のまま、人物画像や商品画像には xhigh を使い、印刷物や大型ディスプレイ向けの素材だけ max にします。多くのチームでは、このように調整することで全体のコスト増を50%以内に抑えながら、ユーザーが気づく色付き縦縞をほぼ解消できます。
💰 コスト最適化: 画像生成量の多いビジネスには、APIYI(apiyi.com)経由で gpt-image-2.5-sunburst を利用する方法がおすすめです。従量課金に対応しており、複数の品質段階を柔軟に切り替えられるほか、利用明細も確認できます。用途ごとに各段階の実際のコストを計算しやすくなります。具体的な料金は、コントロールパネルに表示される内容をご確認ください。
5. よくある質問
Q1: gpt image 2.5 の high でも色付き縦縞が出ます。モデルが壊れているのでしょうか?
いいえ、故障ではありません。gpt-image-2.5 の high は、gpt-image-2 の medium に相当する程度で、割り当てられる計算リソースにも限りがあります。写実的な人物画像で、肌の色の部分に淡いピンク色の縦線や少量のカラーノイズが現れるのは、既知の現象です。
まずは第1章の表を参考に、色付き縦縞の種類を確認してください。モデル側に起因する縦線やノイズであれば、品質段階を xhigh に上げることで、通常は解消できます。APIYI(apiyi.com)を使い、同じプロンプトで high と xhigh の結果を比較してから、この追加コストをかける価値があるか判断するのもよいでしょう。
Q2: なぜ gpt-image-2.5 の色付き縦縞は、gpt-image-2 ほど目立たないのでしょうか?
gpt-image-2.5 では、モデルレベルでノイズが最適化されています。第三者による評価でも、ノイズパターンは軽減されているものの、完全には解消されていないとされています。そのため、同じトークン予算で比較すると、2.5 の色付き縦縞はやや軽くなっています。ただし、低い品質段階でも完全に安心して使えるという意味ではありません。
Q3: quality を auto に設定すれば、色付き縦縞を防げますか?
auto ではモデルが品質段階を自動的に決めるため、結果を制御できません。medium や high が選ばれる可能性もあります。色付き縦縞が問題になりやすい本番環境では、xhigh または max を明示的に指定するのがおすすめです。これにより、画像品質とコストの両方を予測しやすくなります。
Q4: Flare 版は Sunburst 版より色付き縦縞がひどくなりますか?
Flare は速度を重視した軽量版で、公式にも一部のディテールを速度と引き換えにするモデルとして位置づけられています。そのため、ディテールの多いシーンではノイズが現れやすくなります。画質を重視するビジネスには Sunburst がおすすめです。
どちらのバージョンも APIYI(apiyi.com)の統一インターフェースから呼び出せます。model パラメータを変更するだけで切り替えて比較できます。
Q5: すでに生成した、色付き縦縞のある画像を後から修復できますか?
ある程度の補正は可能です。たとえば、色差チャンネルに軽いノイズ除去を施したり、画像編集ソフトで周波数分離を使って色帯だけを処理したりできます。
ただし、後処理による修復ではディテールの一部が失われる可能性があります。コスト面では、より高い品質段階で最初から再生成したほうが、結果的に割に合うことが多いでしょう。
Q6: 同じ画像なのに、色付き縦縞が見える人と見えない人がいるのはなぜですか?
色付き縦縞の見え方は、画面の画素密度、明るさ、色温度、表示倍率などによって変わります。高 PPI の画面で「ウィンドウに合わせる」表示にすると、幅1ピクセルの淡いピンク色の縦線が平均化されて見えにくくなることがあります。また、True Tone や Night Shift を有効にした画面では、淡いピンク色と肌の色の違いがさらに分かりにくくなります。
商用納品では、顧客や最終ユーザーが使うデバイスを基準にしてください。1.2節の色差チェック用スクリプトで客観的に判断し、自分の画面での見た目だけを基準にしないことが大切です。
六、まとめ
gpt image 2.5 で画像にカラーバンドが発生する現象は、決して不可解なものではありません。まず種類を見分け、それぞれに応じた対策を取ることが重要です。
- モデル側のカラーバンド(肌の部分に現れるピンク色の縦筋、カラーノイズ、格子状のテクスチャ)は、quality の設定と強く関係しています。本質的には、出力トークンの予算不足により、ディテールの収束が不十分な状態です。
- 品質設定の名称が変更されています:gpt-image-2.5 の high は、概ね gpt-image-2 の medium に相当し、max は概ね gpt-image-2 の high に相当します。移行時には quality を改めて設定し直す必要があります。
- 実装側のカラーバンド(色の帯、画像下部の乱れ、複数回の編集による劣化)は quality とは関係ありません。出力形式の変更、転送データの完全性の検証、または元画像に戻って編集し直すといった対応が必要です。
- コスト管理では、用途ごとに品質設定を使い分け、「低品質設定で下書き+高品質設定で最終版を作成」という段階的なワークフローを採用することが重要です。すべての処理で max を使うべきではありません。
APIYI(apiyi.com)を通じて、gpt-image-2.5-sunburst、gpt-image-2 などの画像モデルを統一的に利用することをおすすめします。同じコードベースで用途に応じて quality を設定すれば、カラーバンドの問題を許容できる範囲に抑えながら、必要なディテールにだけ計算リソースを配分できます。
著者について: APIYI 技術チーム。OpenAI の画像モデルを本番環境に導入する際の課題を長期的に追跡しており、画質のアーティファクト、コンテンツ審査によるブロック、複数モデルのルーティングなどを扱っています。APIYI 公式サイト apiyi.com では、gpt-image-2.5、gpt-image-2 など主要な画像モデルの導入方法と技術サポートを確認できます。
参考資料:
– OpenAI GPT-Image-2.5 Sunburst モデルドキュメント: developers.openai.com/api/docs/models/gpt-image-2.5-sunburst
– OpenAI 開発者コミュニティ GPT Image 2 問題集: community.openai.com
– GPT Image 2.5 の品質設定と料金分析: tokencost.app
