🌐 ترجمهشده: همهٔ زبانها
مجموعهای که مرز پارتو بین هزینه و خوانایی رندرهای متن-به-تصویر را، بهازای هر ارائهدهنده (Anthropic / OpenAI / Gemini)، هندسهٔ صفحه، سلول گلیف، و سبک اطلس اندازهگیری میکند.
صفحات ارزانتر (متراکمتر) کاراکتر بیشتری بهازای هر توکن حمل میکنند اما سرانجام خوانا بودن را از دست میدهند. یک پیکربندی فقط زمانی مجاز به عرضه است که هر دو برقرار باشند — هزینه پایین است و مدل هنوز آن را کامل میخواند:
cost ▲
(tokens│ cheap
/char)│ · high-res 1928² ← ~2/30 reads (billing trap, blocked)
│ ·
│ ● std 1-bit page ← 30/30 reads ✅ the production pick
│ ·
│ expensive · AA page ← 25/30 (5 abstain)
└────────────────────────────────▶ read accuracy
100%
the sweet spot is the ● : lowest cost that still reads 30/30.
هر پاسخ دقیقاً به یکی از سه پیامد امتیازدهی میشود — پیامد میانی همان چیزی است که گیت را قابلاعتماد میکند:
✅ correct exact string read back
🟡 abstained model said "ILEGIVEL" — an HONEST "I can't read it"
🔴 silent_wrong model returned a confident WRONG value ← the dangerous mode
پیکربندیای که حتی یک 🔴 تولید کند، هرچقدر هم ارزان، رد صلاحیت میشود.
نامتقارنی مرکزی: از زمان بررسی صورتحساب (2026-07-05،
benchmarks/billing-sweep/)، هزینه دقیقاً بهصورت آفلاین قابلپیشبینی
است — پچهای ۲۸ پیکسلی + ۴/بلاک روی Anthropic
(src/core/anthropic-vision.ts)، پروفایلهای پچ/تایل روی OpenAI
(src/core/openai.ts)، تایلها/media_resolution روی Gemini
(gemini-cost.ts). فقط دقت خواندن به API نیاز دارد.
- پیکره (
corpus.ts): پرکنندهٔ متراکم بهسبک log/JSON + needleهای کاشتهشده از کلاسهایی که ماتریس گیجکنندگی میگوید شکست میخورند (hex ۱۲ کاراکتری، camelCase، ارقام 6/8/5/3) + distractorهای نزدیک-به-هم ساختهشده از جفتهای گیجکننده اندازهگیریشده. اگر مدل با distractor پاسخ دهد، سردرگمی پیشبینیشده بود — این همان حالت خطای بیصدایی است که تشخیص داده میشود، نه فقط اشتباه شمرده شود. قطعی (mulberry32). - پیکربندیها (
configs.ts): شبکهٔ منتخب — صفحات استاندارد 1568×728 در برابر وضوحبالا 1928×1928 (A/B که هندسهٔ بهازای هر لایه را تعیین میکند)، AA در برابر ۱-بیت (تناقض رندر فشرده را حل میکند)، سلول 7×10/10×16 (حالت ایمن Opus)، نوار GPT، و دو شرطبندی Gemini (≤384² = 258 ثابت؛media_resolution: low= 280 ثابت → حدود ۱۱۶ کاراکتر/توکن اگر خوانا باشد). - امتیازدهی (
score.ts): تطابق دقیق قطعی، بدون داور LLM. سه پیامد:correct/abstained(نشانگر ILEGIVEL — خطای صادقانه) /silent_wrong(حالت خطرناک)، با یک پرچم distractor.
pnpm exec tsx benchmarks/density-frontier/run.ts --dry-run # جدول هزینه، $0
ANTHROPIC_API_KEY=... OPENAI_API_KEY=... GEMINI_API_KEY=... \
pnpm exec tsx benchmarks/density-frontier/run.ts --trials 2 # ~9 needles+3 gist × config × trialپیکربندیهای مشخص: --configs anthropic-std-5x8-aa,anthropic-hires-5x8-aa.
پاسخها در results/*.jsonl قرار میگیرند (یک خط بهازای هر پرسش، همراه
با پاسخ خام برای حسابرسی).
یک پیکربندی فقط زمانی به پیشفرض تولید تبدیل میشود که: gist == خط پایهٔ
متنی و صفر رشتهٔ دقیق اشتباه بیصدا و صرفهجویی مثبت.
اولین اجرای اجباری anthropic-std-5x8-aa در برابر anthropic-hires-5x8-aa
روی Fable است — بررسی نقطهای خوانایی صفحهٔ بزرگ پیش از فعالسازی لایهٔ
وضوحبالا.
لایههای انتقال بالا متن→PNG را درون harness رندر میکنند و تصاویر را
ارسال میکنند. --via-omniroute برعکس این کار را انجام میدهد، که مسیر
تولید است: متن متراکم را به یک نمونهٔ در حال اجرای OmniRoute ارسال
میکند، اجازه میدهد موتور omniglyph صفحات را رندر کند و به Anthropic
ارسال کند، و خواندنها + صرفهجوییها را اندازهگیری میکند. اگر خواندنها
مانند مسیر مستقیم بمانند و OmniRoute فشردهسازی گزارش دهد، اثبات
میشود که render+forward در OmniRoute صفحات را تخریب نمیکند.
پیشنیازها (عملیاتی):
- OmniRoute در حال اجرا (
npm run dev، پیشفرضhttp://localhost:20128). - یک ارائهدهندهٔ Anthropic پیکربندیشده در OmniRoute با یک کلید
واقعی (مسیر مستقیم — گیت
providerTransport==='direct'فقط برای ارائهدهندهٔanthropicعبور میکند). - موتور
omniglyphفعالشده در پیکربندی فشردهسازی OmniRoute (config.engines.omniglyph.enabled = true) — هدرengine:omniglyphفقط با روشن بودن موتور فعال میشود. (این موتورstable:false/پیشنمایش است؛ آن را صریحاً فعال کنید.) - یک کلید API OmniRoute در
OMNIROUTE_API_KEY(همان کلیدی که کلاینت برای احراز هویت در برابر OmniRoute استفاده میکند، نه کلید Anthropic).
OMNIROUTE_URL=http://localhost:20128 \
OMNIROUTE_API_KEY=<your-omniroute-key> \
pnpm exec tsx benchmarks/density-frontier/run.ts \
--via-omniroute --configs anthropic-std-5x8-1bit --trials 2هر پاسخ omnirouteSavings: { originalTokens, compressedTokens, savingsPercent }
(از هدر پاسخ X-OmniRoute-Compression) را در JSONL ثبت میکند؛ ردیف
جدول نشان میدهد چند پاسخ فشرده برگشتند + میانهٔ صرفهجویی. معیار P3:
همان تعداد برخورد verbatim/gist مسیر مستقیم (عدم افت کیفیت) همراه با
omnirouteSavings غیر-null (اثبات اینکه یک رندر واقعاً رخ داده، نه
خواندن متن خام). اگر did NOT compress ظاهر شود، موتور در OmniRoute
فعال نیست (یا بدنه از گیتهای fail-closed عبور نکرده).
تستها برای بخشهای خالص: tests/density-frontier.test.ts (شامل
buildOmnirouteRequest و parseCompressionSavings از لایهٔ انتقال
via-omniroute).