Замер на реальных данных: сколько токенов контекста frontier-модели экономит выгрузка объёмной обработки на локальную Qwen3-Coder 30B — и модель падений: после скольких провалов делегации выгоднее сделать самому.
Все числа замера ниже — фактический прогон на этом железе. Токены — tiktoken
o200k_base как прокси токенизатора frontier (ratio-надёжен, абсолюты ±10–15%).
Конфиги 8 ГБ / 12 ГБ в таблице ниже — расчётная экстраполяция по той же физике,
не отдельный прогон.
Задача — bulk-обработка (суммаризация лога, извлечение полей, классификация): читать сырой файл целиком в контекст frontier-модели дорого. Альтернатива — локальная модель жуёт файл у себя (0 токенов frontier) и отдаёт компактную JSON-выжимку; frontier видит только выжимку.
Счётчик: tiktoken o200k_base как прокси токенизатора frontier
(точный API-счётчик недоступен без ключа). Для отношения экономии это корректно — solo и
delegated меряются одним счётчиком, systematic bias сокращается; абсолюты ±10–15%. Калибровка
сошлась: 96 КБ = 27 680 ток ≈ 3.5 симв/ток.
| Файл | КБ | solo ток | deleg ток | экономия | |
|---|---|---|---|---|---|
| текст-карточка | 2.5 | 511 | 509 | 0.4% | |
| код-анализ | 26.5 | 6 732 | 579 | 91.4% | |
| changelog | 50.9 | 14 225 | 435 | 96.9% | |
| JSON-лог | 96.4 | 27 680 | 1 243 | 95.5% |
Между break-even (~3 КБ) и 90%+ (~26 КБ) — узкая зона. Вывод: делегируй bulk уже с ~10 КБ / ~150 строк, не жди «сотен КБ и тысяч строк».
Экономия — это input-токены (файл в контексте = input; делегация меняет его на компактную выжимку). Долларовая цена = сэкономленные токены × input-цена модели:
За один файл — десятые цента. Значимость проявляется в объёме. Ниже — экономия за 1000 файлов одного класса (типичный bulk-прогон):
| Файл (×1000) | экон. ток | Fable 5 $10/1M |
Opus 4.8 $5/1M |
Sonnet 5 $3/1M |
Sonnet intro $2/1M |
|---|---|---|---|---|---|
| текст-карточка 2.5 КБ | 2 тыс | $0.02 | $0.01 | $0.01 | <$0.01 |
| код-анализ 26 КБ | 6.15 млн | $61.53 | $30.76 | $18.46 | $12.31 |
| changelog 51 КБ | 13.8 млн | $137.90 | $68.95 | $41.37 | $27.58 |
| JSON-лог 96 КБ | 26.4 млн | $264.37 | $132.19 | $79.31 | $52.87 |
Замер сделан на RTX 4090 с qwen3-coder:30b. На слабом железе ставят модель
поменьше. Две независимые оси, не путать:
Проверка пессимизмом (мелкая модель, D×2, JSON-лог): (27 680−2 500)/27 680 = 91% вместо 95.5% — всё ещё 90%+. Порог рентабельности (~10 КБ) и цифры экономии переносятся на 7b/14b почти без изменений.
| Параметр | Ноут 3070 · 8 ГБ | Десктоп 3060 · 12 ГБ | Референс 4090 · 24 ГБ |
|---|---|---|---|
| Модель класса | qwen2.5-coder:7b | qwen2.5-coder:14b | qwen3-coder:30b✓ замер |
| VRAM модели (Q4) | ~4.4 ГБ | ~9 ГБ | 18 ГБ (MoE) |
| Экономия % (≥26 КБ) | 83–94% | 88–96% | 91–97% ✓ |
| Порог рентабельности | ~10 КБ / 150 стр | тот же | тот же |
| $-экономия / 1000 файлов | одинакова на любом железе — задаётся frontier-моделью (см. секцию «деньги»), не картой | ||
| Скорость ген. (оценка) | 50–90 tok/s | 20–30 tok/s | ~34 tok/s |
| Надёжность выжимки | ниже | средняя | якорь |
| Дефолт N подряд → solo | 1 | 2 | 2 |
| Делегировать числа | нет | осторожно, строже валидация | да, со сверкой |
Скорости — грубая оценка по VRAM-bandwidth (3060 ≈360 ГБ/с, 4090 ≈1008 ГБ/с); 30b — MoE с ~3B активных, потому быстрая несмотря на 18 ГБ веса. 8/12 ГБ — расчёт, не прогон.
| Железо | VRAM | Модель | Quant | num_ctx | keep_alive |
|---|---|---|---|---|---|
| Ноут 3070 / 4060 | 8 ГБ | qwen2.5-coder:7b | Q4_K_M | 8192 | 5m |
| Десктоп 3060 | 12 ГБ | qwen2.5-coder:14b | Q4_K_M | 16384 | 10m |
| Десктоп 4090 (замер) | 24 ГБ | qwen3-coder:30b | Q4·MoE | 32768 | 30m |
| CPU-only fallback | — | qwen2.5-coder:3b | Q4 | 4096 | 2m |
Каждый провал делегации тоже жжёт токены frontier: надо прочитать ошибку/мусор и решить «повторить или escalate». Обозначим цену одного провала f. Решение forward-looking (уже потраченное — sunk cost, в расчёт не идёт):
Провалы на одном входе не независимы — патологичный файл ломает систематически. Оценка вероятности успеха по Лапласу после k провалов подряд: p̂ = 1/(k+2) → (1−p)/p = k+1. Критерий сворачивается в порог:
Измеренная стоимость f одного провала в токенах контекста frontier:
| Тип падения | f, ток | Как измерено | |
|---|---|---|---|
| пустой ответ | 130 | обёртка вызова | |
| HTTP 500 | 143 | строка ошибки | |
| timeout | 145 | traceback | |
| VRAM-guard | 150 | строка | |
| bad_json (проза вместо JSON) | 885 | реальный прогон, 755 ток прозы | |
| галлюцинация | D + α·S | валидация дочитывает долю α источника |
Инфра-сбои дёшевы (~140 ток), bad_json дороже, галлюцинация — самая дорогая: она невидима, и проверка выжимки заставляет дочитывать сам источник.
| Файл | S−D | инфра ~140 | bad_json 885 | галлюц α=0.25 | галлюц α=0.5 |
|---|---|---|---|---|---|
| текст-карточка 2.5 КБ | 2 | 0 | 0 | 0 | 0 |
| код-анализ 26 КБ | 6 153 | 41–47 | 6 | 2 | 1 |
| changelog 51 КБ | 13 790 | 91–106 | 15 | 3 | 1 |
| JSON-лог 96 КБ | 26 437 | 176–203 | 29 | 3 | 1 |
Суть: дешёвый и видимый провал (пусто/HTTP/timeout) — ретрай почти бесплатен, не паникуй. Дорогой и скрытый (галлюцинация) — уходи в solo рано, пока не потратил больше, чем сэкономил.
tiktoken, не токенизатор frontier. Отношения (экономия %, порог) устойчивы; абсолютные токены ±10–15%.