# Как не переплачивать за контекст

Каждое слово, которое ты отправил модели, лежит в памяти видеокарты до конца диалога. У модели на 70 миллиардов параметров длинный диалог занимает около 42 гигабайт на один запрос — при 80 гигабайтах на всю серверную карту. Отсюда и цена, и тормоза, и то, что к сотому сообщению модель начинает плыть. Ниже — что включить, что чистить и чего вообще не тащить в окно, чтобы платить за работу, а не за место.

## Шаг 1. Включить кэш — это самая быстрая экономия

- 01 «Кэшируй всё, что повторяется от запроса к запросу» — Системный промт, инструкции, определения инструментов, большой документ, по которому идёт работа. Повторное чтение из кэша стоит 0,1 от цены обычного входного токена — то есть в десять раз дешевле.
- 02 «Держи стабильное в начале запроса, изменчивое — в конце» — Кэш работает по префиксу: он совпадает только до первого различия. Если в начало попадает текущая дата или имя пользователя, дальше не совпадёт ничего.
- 03 «Проверь, что префикс дотягивает до минимума» — Короткие куски не кэшируются вообще. Порог зависит от модели: 512 токенов на Opus 5, 1024 на Opus 4.8 и Sonnet 5, 4096 на моделях линейки 4.5-4.6.
- 04 «Считай запись, а не только чтение» — Запись в кэш дороже обычного входа: 1,25x при жизни кэша 5 минут и 2x при часе. Если между обращениями проходит больше времени, чем живёт кэш, ты платишь наценку и не получаешь скидку.
- 05 «Час жизни бери осознанно» — Настройка "cache_control": {"type": "ephemeral", "ttl": "1h"} окупается на длинных сессиях с паузами. На плотном потоке запросов хватает пятиминутного кэша по умолчанию.

## Шаг 2. Чистить контекст автоматом, а не героически

- 01 «Включи очистку результатов инструментов» — Стратегия clear_tool_uses_20250919 выбрасывает старые ответы инструментов, когда контекст переваливает порог. По умолчанию срабатывает на 100 000 входных токенов и оставляет три последних вызова.
- 02 «Разберись с блоками рассуждений» — Стратегия clear_thinking_20251015 решает, сколько прошлых размышлений остаётся в окне. На новых моделях они хранятся все и считаются как обычный вход — на длинной сессии это заметная строка счёта.
- 03 «Подключи серверную компакцию для долгих сессий» — Она сама сворачивает раннюю часть разговора в конспект при подходе к пределу окна. Порог по умолчанию — 150 000 токенов, включается заголовком compact-2026-01-12.
- 04 «Не чисти то, что агент только что записал» — Если работаешь с памятью, добавь её в exclude_tools у очистки. Иначе один проход вычистит ровно те записи, ради которых память и включалась.
- 05 «Смотри, сколько именно вычистилось» — Ответ возвращает поле context_management с числом убранных токенов по каждой стратегии. Это единственный честный способ понять, работает настройка или стоит для вида.

## Шаг 3. Не тащить в окно лишнее

- 01 «Помни, что в окно входит всё» — Системный промт, каждое сообщение истории, результаты инструментов, картинки, документы, определения тулов и сам ответ модели. Не только то, что ты набрал руками.
- 02 «Выноси знания в файлы, а не в историю» — Инструмент памяти позволяет агенту записывать выводы на диск и читать их по требованию. Знание переживает сессию, а окно остаётся коротким.
- 03 «Убирай определения инструментов, которые не нужны прямо сейчас» — Двадцать описаний тулов — это тысячи токенов в каждом запросе, даже если модель вызовет один. Отложенная подгрузка описаний решает это без потери возможностей.
- 04 «Считай токены до отправки, а не по счёту в конце месяца» — Отдельный метод подсчёта бесплатный и принимает тот же запрос целиком — с системным промтом, тулами, картинками и документами.
- 05 «Пересчитай прикидки под новую модель» — Модели от Opus 4.7 и новее считают тот же текст примерно на 30% щедрее старого токенизатора. Старые оценки стоимости на них не переносятся.

## Цифры, на которые опираться

строки «Показатель → Значение»: Чтение из кэша → 0,1x — повторный контекст стоит в десять раз дешевле обычного входа; Запись в кэш → 1,25x / 2x — наценка за 5 минут жизни кэша и за час. Одноразовый запрос кэшировать невыгодно; Минимум для кэша → 512-4096 токенов в префиксе, порог зависит от модели. Ниже порога кэш просто не создаётся; Порог очистки тулов → 100 000 входных токенов по умолчанию, после чего выбрасываются старые результаты; Порог компакции → 150 000 токенов по умолчанию, после чего ранняя часть разговора сворачивается в конспект; Окно → 1 млн токенов на старших моделях, по стандартной цене и без отдельного заголовка; Новый токенизатор → +30% — примерно столько токенов даёт тот же текст на моделях от Opus 4.7; KV-память → ~42 ГБ на один длинный запрос к модели в 70 млрд параметров. Вот из чего складывается цена длинного контекста

## Порядок: с чего начать

- 01 «Кэш на неизменное» — Пятнадцать минут работы, эффект на каждом запросе. Начни с системного промта и определений инструментов — они повторяются всегда.
- 02 «Автоочистка на длинных сессиях» — Там, где агент ходит по инструментам десятками вызовов, очистка старых результатов снимает больше, чем любая правка промта.
- 03 «Ревизия того, что вообще летит в окно» — Посчитай запрос методом подсчёта токенов и посмотри, из чего он состоит. Обычно половина — то, что модели в этой задаче не нужно.

врезка `// Больше контекста не значит лучше`: текст «С ростом числа токенов у модели падает точность извлечения — внимание размазывается по всем парам слов сразу. Отбор важного работает лучше, чем «загружу всё, разберётся».»

врезка `// Кэш меняет цену, а не место`: текст «Кэшированный префикс всё равно занимает окно целиком. Кэширование экономит деньги, но не спасает от переполнения.»

врезка `// Замеряй до и после`: текст «Каждый ответ возвращает разбивку входа на обычные токены, запись в кэш и чтение из кэша. Если доля чтения не растёт — настройка не сработала, сколько бы ты её ни включал.»

## Где смотреть первоисточники

строки «Показатель → Значение»: platform.claude.com/docs/en/build-with-claude/prompt-caching → Множители 0,1x / 1,25x / 2x, пороги префикса по моделям, точки разрыва кэша; platform.claude.com/docs/en/build-with-claude/context-editing → Очистка результатов инструментов и блоков рассуждений, пороги и поле отчёта; platform.claude.com/docs/en/build-with-claude/compaction → Серверная компакция: как разговор продолжается дальше предела окна; platform.claude.com/docs/en/build-with-claude/context-windows → Что именно входит в окно, размеры по моделям и почему точность падает на длине; platform.claude.com/docs/en/agents-and-tools/tool-use/memory-tool → Вынос знаний в файлы вместо раздувания истории диалога; platform.claude.com/docs/en/build-with-claude/token-counting → Бесплатный подсчёт токенов до отправки и поправка на новый токенизатор; anthropic.com/engineering/effective-context-engineering-for-ai-agents → Внимание как конечный бюджет: почему отбор важнее объёма; research.google/blog/turboquant-redefining-ai-efficiency-with-extreme-compression → Три бита на координату, память минимум в шесть раз меньше, без дообучения и калибровки; arxiv.org/abs/2504.19874 → Сама работа: случайный поворот, полярные координаты, однобитная поправка на остатке; inferenceengineering.tech/exercises/kv-cache-sizing → Формула, по которой считаются те самые гигабайты на запрос; nvidia.com/en-us/data-center/h100 → Точка отсчёта: 80 гигабайт памяти на карту H100 SXM

---

Источник: https://localhost:3000/m/kak-ne-pereplachivat
