Блог / Экономия токенов

Как экономить токены при работе с AI-агентами: 7 способов с цифрами

Токены агента съедают не ответы, а повторы: пересказ проекта, файлы целиком, раздутый system prompt. 7 способов срезать расход в 1,4–4 раза, с замерами.

•4 мин чтения
Экономия токенов Гайд

Коротко: токены съедает не работа агента, а повторное снабжение его контекстом. Семь рабочих способов: память вместо пересказа проекта, точечный поиск вместо чтения файлов, короткий system prompt, дисциплина сессий, подбор модели под задачу, кэширование промптов и замер расхода. На нашем репозитории это дало от 1,4 до 3,3 раза меньше токенов на старт сессии; на точечных вопросах — до 4,2 раза.

Куда на самом деле уходят токены

Прежде чем экономить, посмотрите на анатомию расхода. В каждом запросе агента оплачиваются четыре корзины:

  1. Системный промпт — правила, инструкции, описания инструментов. Платится в каждом запросе без исключений.
  2. История сессии — весь диалог с начала, включая неактуальное. Растёт квадратично по духу: чем длиннее сессия, тем дороже каждый следующий ход.
  3. Файлы и код — самая тяжёлая корзина у кодовых агентов: «прочитай репозиторий» легко означает десятки тысяч токенов.
  4. Выводы инструментов — логи, результаты поиска, диффы. Часто возвращаются целиком, когда нужна пара строк.

Все семь способов ниже бьют по этим корзинам. Поехали по убыванию эффекта.

1. Память вместо пересказа проекта

Самая дорогая привычка — объяснять проект заново в каждой сессии. Стек, договорённости, «вчера чинили баг» — это тысячи токенов в день, вручную.

Мы замерили это на собственном репозитории: старт сессии с дайджестом памяти стоит ~4 200 токенов, чтение проекта с нуля — ~8 900. Разница 2,1 раза на каждом старте (методика и полные цифры). Память — это сущности, решения и открытые задачи, которые агент читает одним вызовом с жёстким бюджетом объёма, вместо того чтобы заново сканировать файлы.

Для этого и сделан MaxGraph: локальный MCP-сервер, который ведёт граф памяти и отдаёт выжимку в начале сессии. Работает и в триале, ставится одним промптом.

2. Точечный поиск вместо файлов целиком

«В каком статусе задача по миграции?» не требует чтения CHANGELOG. Вопрос, размазанный по двум файлам, обходится в ~4 300 токенов чтения против ~1 000 за один поиск по памяти — разница до 4,2 раза.

Практическое правило: если ответ — факт или решение, агент должен искать его в памяти или поиском по коду (grep, семантический поиск), а не читать файлы целиком. Файл целиком оправдан, только когда вы правите именно его.

3. Короткий system prompt

Каждая строка в system prompt оплачивается в каждом запросе. Наблюдение из практики: периодически перечитывайте свои CLAUDE.md / AGENTS.md и выкидывайте правила, которые ни разу не сработали. Правило «на всякий случай» стоит вам каждый день; правило «однажды понадобится» — никогда.

Хороший тест: если агент нарушил правило хотя бы раз за месяц — оно нужно. Если ни разу не нарушил и не пригодилось — кандидат на удаление.

4. Дисциплина сессий: закрывайте, не тяните

Длинная сессия — это история, которую вы тащите за собой в каждом запросе. К концу дня типичная сессия кодового агента весит столько, что каждый новый вопрос стоит как небольшая статья.

Правильнее: завершить этап, зафиксировать итог (у нас это делает session_close — итоги уходят в память) и начать следующую сессию с чистого листа плюс дайджест. Сжатие контекста (compaction) — тот же механизм, только в аварийном режиме: лучше закрывать сессию до того, как её начнёт резать сам клиент. Подробнее про сжатие: что такое компактизация контекста.

5. Модель под задачу, а не одна на всё

Роутинг «прочитай лог и скажи, упало ли» не требует флагманской модели. Если ваш стек позволяет (у многих клиентов есть выбор модели по задаче), рутинные чтения и классификации отдавайте дешёвой модели, а проектирование и дебаг — дорогой. Экономия на порядок по цене токена, без потери качества там, где оно важно.

6. Кэширование промптов

Если провайдер поддерживает prompt caching (Anthropic, OpenAI и другие кэшируют повторяющийся префикс запроса), стабильный system prompt и стабильный порядок контекста дают скидку на кэшированную часть — у Anthropic она существенная. Условие одно: начало запроса должно быть байт-в-байт одинаковым между вызовами. Дайджест памяти с фиксированной структурой (как у нас) кэшируется лучше, чем пересказ в свободной форме.

7. Мерить, иначе это гадание

Нельзя экономить то, что не измеряется. Минимум: считайте токены на старт сессии и на типичный вопрос до и после изменения. Мы ведём такие замеры на себе и публикуем их отдельными статьями — потому что «стало дешевле» без цифры не ответ.

FAQ

Экономия токенов — это потеря качества? Нет, если резать повторы, а не сигнал. Память возвращает ровно релевантное: решения, открытые баги, задачи. Чтение «всего подряд» добавляет шум, а не качество — на длинных контекстах модель ещё и хуже находит середину.

Сколько реально можно сэкономить? На нашем репозитории: 1,4–3,3 раза меньше токенов на старт сессии, до 4,2 раза на точечных вопросах. Это замер, не обещание: методика открыта, повторите на своём проекте.

Когда экономить НЕ надо? Когда контекст и есть работа: ревью большого диффа, анализ длинного документа. Там чтение целиком оправдано, и дешевле его не сделать. Экономия — про повторяющиеся расходы, не про разовые.

Что дальше

MaxGraph

Дай своему агенту память

Триал 7 дней без карты. Установка — один промпт, дальше агент сделает сам.

Тарифы ✓ Скопировано