🌐 翻訳: すべての言語
存在理由: 収益性ゲートは、コスト見積もりが厳密である場合にのみ安全である。 式が少しでもズレていると、実際にはより高くつくブロックまで変換してしまう。そのため このスイープは、出荷前に式をAPIの実際の数値に固定する — 残差ZEROまで。
what the sweep decides, visually:
patch model ⌈w/28⌉ × ⌈h/28⌉ + overhead ← current docs
retired /750 (w · h) / 750 ← old formula
│
▼ probe geometries chosen to separate the two by 25–180 tokens/row
measured 1568×728 page = 1,460 tokens
patch predicts 1,456 ✅ (residual ~0)
/750 predicts 1,522 ✗ (off by 62)
2つの未解決なジオメトリの問いを決着させる、無料のcount_tokensスイープ。
- 式 — APIは
ceil(w/28) × ceil(h/28)パッチ(現行ドキュメント)で課金するのか、 それとも廃止されたw·h/750なのか? プローブ集合は、この2つを1行あたり 25〜180トークンの差で切り分ける。 - ティア —
claude-fable-5は高解像度キャップ(長辺 ≤ 2576px、≤ 4784ビジュアル トークン)を得るのか?page-old-1928x1928の行が決め手: 実測が約4761であれば 高解像度WYSIWYG(古い大きいページは、現在の1568×728と同じ文字/トークン比のまま 約3.3倍多くの文字を1画像に収める); 約1521であればstandardティアのリサンプルで、 1568×728が正しいままとなる。
背景: 現行の1568×728ページの根拠となった2026-07-01のスイープ(可読性監査、
2026-07-01)はclaude-sonnet-4-5(standardティアのモデル)で計測されたが、
本番のターゲットはFable 5であり、ビジョンドキュメントではhigh-resolutionティアに
分類されている。その監査では現行ページを1460トークンとも計測しており、これは
/750式の1522よりもパッチ式の1456に近く、APIがすでにパッチ課金へ移行していた
ことを示唆していた。
pnpm run build # dist/ prerequisite (like all evals)
node benchmarks/billing-sweep/run.mjs --dry-run # predictions only, no key, $0
ANTHROPIC_API_KEY=sk-... node benchmarks/billing-sweep/run.mjs \
--models claude-fable-5,claude-sonnet-4-5 --probe-multi --probe-20plus必ずAPIに直接アクセスすること — OmniGlyphプロキシ経由では絶対にダメで、
ボディが変換されてしまう。count_tokensは無料; フルスイープは約25リクエストを行う。
モデルごとに、各プローブ行は測定された画像トークン数(画像ありからテキストのみ
ベースラインを引いたもの)を、4つの予測すべて(patch/legacy750 ×
standard/highres)に対して示す; サマリは平均絶対残差で仮説をランク付けする。
--probe-multiは画像1枚あたりの上限(2×1092² ≈ 2×1521)を確認し、
--probe-20plusは20枚超えのルール(2000pxを超える辺はリサイズではなく
リジェクトされるべき)を確認する。行はresults/*.jsonlに格納され、
予測ロジックはformulas.mjsにあり、tests/billing-sweep-formulas.test.tsで
ピン留めされている。
- パッチ式が確認された場合 → OmniGlyph PR #27(厳密なリサイズ変換)を移植し、
src/core/transform.ts内のANTHROPIC_PIXELS_PER_TOKENゲート計算を整合させる。 - Fableでhigh-resティアが確認された場合 → ティアごとのページジオメトリを再導入する
(Fable/Opus 4.8/Sonnet 5には1928×1928クラスのページ、standardには1568×728)、
GPTパスがすでに独自の
GPT_MAX_HEIGHT_PXを維持しているのと同じ構造で。