Пять небольших симуляций: как контекст теряет точность, во сколько обходится «всё в одном чате», и как тестированные процедуры (скиллы / MCP) держат качество при минимуме токенов.
Каждое новое сообщение модель перечитывает всю переписку заново. Поэтому в одном длинном чате суммарно обработанные токены растут как O(n²). Новый чат на задачу — растёт линейно.
Длинный чат: на i-м сообщении обрабатывается i·t токенов (вся переписка). Сумма = t·n(n+1)/2. Новый чат: каждый раз ~t, сумма = n·t. Цена = токены ÷ 1e6 × тариф (сверху).
Источники: Anthropic — prompt caching (контекст пересчитывается каждый запрос). Квадратичность — механика, не из одной статьи.
Каждое сжатие (/compact, повторное резюме) — это пересказ пересказа. Часть фактов теряется на каждом шаге, как при многократном пересохранении JPEG. Жмите кнопку и смотрите, что выживет.
У каждого факта на каждом сжатии есть шанс выжить p. Ожидаемая доля после k сжатий ≈ p^k. Здесь выживание разыгрывается случайно — поэтому результат немного «живой».
Источники: Chroma — Context Rot. Потеря фактов — иллюстрация lossy-резюме.
Сильнее всего модель помнит самое начало и самый конец. Двигайте «длину контекста»: лента то сжимается (начало и конец близко к середине — всё помнится), то растягивается (середина далеко от краёв и «забывается»). Жёлтая игла — ваш факт. Выжимать весь лимит невыгодно вдвойне: точность сползает (и середина, и края), а цена прочтения растёт линейно — 1М ≈ в 5 раз дороже 200К за то же потерянное.
recall ≈ (0.28 + 0.71·e^(−d/20K)) · (1 − 0.25·len/1М), где d — расстояние факта до ближайшего края. Длиннее контекст → середина дальше от краёв И весь уровень ниже. Числа иллюстративные, чтобы показать форму (Stanford «lost in the middle», Chroma «context rot»).
Источники: Stanford — Lost in the Middle, Chroma — Context Rot.
Когда задача повторяется, можно каждый раз «думать заново» — но тогда почти каждый запрос тащит цикл отладки: модель ошиблась → правки → перечитывание → ещё токены и ваше время. Тестированная процедура (скилл или MCP) этот цикл убирает: дёшево, предсказуемо, без отладки. Главная экономия — именно на отладке и времени, а не только на токенах запроса.
Ad-hoc за раз = A·(1 + отладка%). «Заново»: i·Aэфф. Скилл: B + i·c. Окупаемость N* = B/(Aэфф − c). Карточка «на отладку» = A·отладка%·n — это сгоревшие токены ПЛЮС ваше время (его в токенах не видно, но оно реально). Числа иллюстративные.
Источники: Экономика амортизации (не из статьи). Model Context Protocol — про MCP.
Один и тот же смысл на разных языках стоит разное число токенов. Английский — самый «дешёвый». Введите текст и сравните.
| Фраза «Hello / Привет / 你好» — один смысл | ≈ токенов |
|---|---|
| English: "Refactor this function and add tests." | ≈ 8 |
| Русский: «Сделай рефакторинг этой функции и добавь тесты.» | ≈ 18–22 |
| 中文 / 日本語 (аналогично) | ≈ 16–20 |
Байты — точно (UTF-8). Токены — приблизительная оценка по типу письма (латиница ≈ 0.25 токена/символ, кириллица ≈ 0.5, иероглифы ≈ 1.0), а не настоящий BPE-токенайзер. Цена = токены × 1000 ÷ 1e6 × тариф (сверху).
Источники: Frontiers — токенизация, OpenAI Tokenizer (точный счёт).
А вы точно умеете писать промты?
Хороший промт собран из блоков. Кликай, чтобы выключать их по одному. Дротики — ответы модели: при полном промте они кучно в цели, без блоков разлетаются (тема и границы расплываются). Задача-пример: «Напиши на Python функцию валидации email с тестами».
Промтинг — это целая научная область: систематический обзор 2024 «The Prompt Report» (30+ авторов) собрал 58 техник промтинга и мета-анализ всей литературы. arXiv
У каждого блока свой вес: Задача 34%, Границы 20%, Контекст 16%, Формат 14%, Пример 10%, Роль 6%. «Точность» = сумма весов включённых блоков. Чем ниже — тем шире разлёт дротиков и больше переспросов. Веса иллюстративные, по практикам промтинга (не замеры).
Источники: Anthropic — prompt engineering.