Экономия 300 миллионов токенов в неделю: Руководство по кешированию Claude Code инженеров Anthropic

Оригинальный заголовок: Как инженеры Anthropic на самом деле экономят токены
Автор оригинала: Nate Herk
Перевод: Peggy, BlockBeats

Автор оригинала: BlockBeats

Источник оригинала:

Перепечатка: Mars Finance

Редакторский комментарий: Многие при использовании Claude Code замечают, что расход токенов слишком быстрый, а длительные сессии легко съедают лимит. Но с точки зрения инженеров Anthropic, на самом деле на стоимость влияет не столько количество написанного кода, сколько возможность системы постоянно переиспользовать уже обработанный контекст.

Основная идея статьи — как с помощью кеширования экономить токены. За неделю автор повторно использовал более 300 миллионов токенов через кеш, а в один день — 91 миллион. Поскольку стоимость кешированных токенов составляет всего 10% от стоимости обычных входных токенов, это означает, что 91 миллион кешированных токенов фактически стоят примерно столько же, сколько 9 миллионов обычных токенов. Длительные сессии Claude Code кажутся более «выносливыми» не потому, что модель работает бесплатно, а потому, что успешно переиспользуются большие объемы повторяющегося контекста.

Ключ к Prompt caching — «не прерывать кеш». Claude Code кеширует слоисто системные подсказки, определения инструментов, CLAUDE.md, правила проекта и историю диалогов; если последующие запросы начинаются с одинакового префикса, Claude может напрямую читать кеш, не обрабатывая заново весь контекст. Внутри Anthropic также следят за уровнем использования prompt cache, потому что это влияет не только на лимит пользователя, но и напрямую на стоимость обслуживания модели и эффективность работы.

Для обычных пользователей не обязательно разбираться во всех технических деталях, достаточно усвоить несколько ключевых правил: не оставлять сессию без активности более часа; при смене задачи делать передачу сессии; избегать частых переключений моделей; большие документы лучше помещать в Projects, а не вставлять их повторно в диалог.

Эта статья скорее не о том, как экономить токены, а о том, как применять инженерный подход к использованию Claude Code: считать контекст активом, постоянно его переиспользовать, избегать повторных вычислений в длинных сессиях.

Ниже — оригинальный текст:

На этой неделе я сэкономил 300 миллионов токенов, в один день — 91 миллион, за неделю — более 300 миллионов.

Я не менял никаких настроек. Это просто нормальное функционирование prompt caching в фоновом режиме.

Но когда я по-настоящему понял, что такое кеш и как избегать его «прерывания», при том же лимите использования моя сессия могла длиться дольше. Поэтому я подготовил краткое руководство по prompt caching Claude Code по принципу 80/20, без глубокого погружения в API.

TL;DR

Стоимость кешированных токенов — всего 10% от стоимости обычных входных токенов. 9100 тысяч кешированных токенов фактически стоят примерно 900 тысяч.

Кеширование в подписке Claude Code имеет TTL 1 час; по умолчанию в API — 5 минут; у Sub-agent — всегда 5 минут.

Кеш делится на три уровня: системный, проектный и диалоговый.

Переключение модели в сессии разрушает кеш, включая режим «opus plan».

Как считается оплата за кеш?

За каждый кешированный токен стоимость — 10% от обычного.

Поэтому, когда мой дашборд показывает, что за день было использовано 91 миллион токенов из кеша, фактическая оплата примерно равна обработке 9 миллионов токенов. Именно поэтому при длительном использовании Claude Code кажется, что сессия почти «бесплатна» и удлиняется.

На дашборде есть два важных числа:

Cache create — разовая стоимость записи в кеш. Она действует в следующем диалоге.
Cache read — количество токенов, которые Claude использует из кеша, например, CLAUDE.md, определения инструментов, предыдущие сообщения. В сравнении с повторной обработкой как входных данных, это дешевле в 10 раз.

Если число Cache read высоко, значит кеш используется эффективно; если низко — значит вы платите за одни и те же контексты многократно.

Thariq из Anthropic сказал очень важную фразу: «Мы реально мониторим попадания в кеш prompt cache, и при низком уровне попаданий запускаем тревоги, даже объявляем о SEV-уровне инцидента.»

Он также написал хорошую статью в X. Когда уровень попаданий в кеш высокий, происходят четыре вещи: Claude Code ощущается быстрее, снижаются издержки Anthropic, ваш лимит становится более долговечным, а длительные кодовые сессии — более реальны.

Но при низком уровне попаданий все страдают.

Итак, мотивация обеих сторон совпадает: Anthropic хочет, чтобы у вас было больше попаданий в кеш, а вы — чтобы их было больше. Единственные, кто мешает — это мелкие привычки, которые незаметно сбрасывают кеш.

Как кеш растет в каждой новой итерации диалога?

Кеш основан на принципе «префиксного совпадения» — «prefix matching».

Без глубокого погружения в технические детали достаточно понять: если содержимое до определенной позиции совпадает с уже кешированным, Claude может переиспользовать эти токены.

Общий сценарий новой сессии:

По документации Claude Code, новая сессия обычно так работает:

Первая итерация: кеша еще нет. Системные подсказки, контекст проекта (например, CLAUDE.md, memory, правила), а также первое сообщение обрабатываются заново и записываются в кеш.

Вторая итерация: все, что было в первой, уже в кеше. Claude обрабатывает только новые ответы и следующую реплику. Стоимость этой итерации значительно ниже.

Третья и далее: аналогично. Предыдущий диалог остается в кеше, только новая часть обрабатывается заново.

Кеш делится на три слоя:

Из статьи Thariq:

Системный слой (System layer): включает базовые инструкции, определения инструментов (read, write, bash, grep, glob) и стиль вывода. Этот слой — глобальный кеш.

Проектный слой (Project layer): включает CLAUDE.md, memory, правила проекта. Этот слой кешируется по проектам.

Диалоговый слой (Conversation): включает ответы и сообщения, он растет с каждой новой итерацией.

Если в процессе диалога меняется системный или проектный слой, весь кеш нужно пересоздавать заново — это самое дорогое. Представьте: вы дошли до 16-й реплики, вдруг изменили системные подсказки или сделали паузу в час — все токены с первой по шестнадцатую придется перерабатывать заново.

Разница между 1 часом и 5 минутами

Это самое распространенное заблуждение.

Подписка Claude Code: TTL по умолчанию — 1 час.
API: по умолчанию — 5 минут, можно за доплату увеличить до 1 часа.
Sub-agent: всегда 5 минут.

Веб-чат на Claude.ai: официально не указано, но, скорее всего, как и в подписке, — 1 час, я не проверял.

Несколько месяцев назад многие жаловались, что лимит быстро расходуется. Тогда казалось, что Anthropic тайно снизил TTL с 1 часа до 5 минут без уведомления. Но это не так — TTL в Claude Code по-прежнему 1 час.

Проблема в том, что документация по Claude Code и API раздельна, и эти вещи изначально разные, что вызывает путаницу.

Если вы много работаете через Sub-agent или напрямую через API, 5 минут важны. Но для 95% пользователей Claude Code важен только 1-часовой интервал.

Три привычки, покрывающие 95% случаев

Вот что реально полезно в повседневной работе:

Не оставляйте сессию без активности более часа

Если вы неактивны более часа, кеш устаревает. Следующая ваша реплика вызовет пересоздание кеша. В такой ситуации лучше завершить старую сессию и начать новую — обычно это дешевле.

При смене задачи делайте явную передачу сессии

/compact или /clear уничтожают кеш, поэтому лучше делать это сознательно.
Я создал свой «skill» для передачи сессии, чтобы заменить /compact. Он подытоживает, что сделано, что осталось, какие важные файлы, и куда дальше двигаться. Потом я вызываю /clear и вставляю этот итог — и продолжаю, как будто ничего не прерывалось.

Команда /compact иногда работает медленно. Мой handoff skill обычно завершает работу за минуту.

В диалогах Claude лучше помещать большие документы в Projects

Официальных подробностей о кешировании в Claude.ai мало, но Projects явно используют другую оптимизацию по сравнению с обычным диалогом. Поэтому, если нужно вставить большой документ, лучше положить его в Project, а не вставлять в диалог.

Что разрушает кеш без предупреждения?

Несколько действий могут полностью сбросить кеш:

Переключение модели: кеш зависит от префикса, у каждой модели свой кеш. Переключение модели — это как смена модели, и кеш пересоздается заново.

Режим «opus plan»: он использует Opus в планировании и Sonnet — в исполнении. Я рекомендовал его в видео по оптимизации токенов, и есть причина. Но важно понять: каждый раз смена плана — это смена модели, а значит, и пересоздание кеша. В долгосрочной перспективе это помогает экономить лимит, но нужно знать, что происходит «под капотом».

Редактирование CLAUDE.md в процессе диалога: это допустимо, изменения вступают в силу только после перезапуска, текущий кеш не трогаются.

Мой бесплатный дашборд по токенам

Скриншоты, которые я показывал, — из простого репозитория на GitHub. Вы даете ссылку Claude Code, и он на локальной машине собирает все ваши диалоги, не начиная с нуля. Там можно видеть ежедневные показатели input, output, cache create и cache read.

Важно: этот дашборд показывает локальные данные по токенам. Если вы переключаетесь между устройствами, цифры могут отличаться. У каждого устройства своя статистика.

Итог

Prompt caching — очень глубокая тема. Статья Thariq раскрывает ее еще шире, если хотите — стоит почитать.

Но вам не нужно знать все детали, чтобы получать пользу. Достаточно усвоить главное 80/20: кешированные токены в 10 раз дешевле обычных; TTL в Claude Code — 1 час; смена модели разрушает кеш; при смене задач делайте четкую передачу сессии — это обычно выгоднее, чем ждать, пока старый диалог «протухнет».

Посмотреть Оригинал
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
  • Награда
  • 5
  • Репост
  • Поделиться
комментарий
Добавить комментарий
Добавить комментарий
GateUser-0fdb3438
· 3ч назад
Кэширование стратегии +1, в следующий раз при проектировании архитектуры хорошо спланировать жизненный цикл контекста
Посмотреть ОригиналОтветить0
BudgetDeFi
· 6ч назад
Повторное использование кэша — это настоящее мастерство снижения затрат, 300 миллионов токенов экономии достаточно для проведения сколько угодно раундов тестирования
Посмотреть ОригиналОтветить0
0xPeachy
· 7ч назад
Хотите узнать, сколько из этих 300 миллионов — это повторяющиеся фрагменты кода, кажется, уровень повторного использования инженерного кода должен быть очень высоким
Посмотреть ОригиналОтветить0
DrawTheCandlestickChartIn
· 7ч назад
Пользователи Claude Code в восторге, наконец-то узнали, куда делись лимиты
Посмотреть ОригиналОтветить0
GateUser-83c80dd0
· 7ч назад
91 миллионов единиц кэширования за один день, какой должна быть их точность попадания? Интересно, какие детали у их стратегии кэширования
Посмотреть ОригиналОтветить0
  • Закреплено