Инженер Anthropic делится советами по кэшированию токенов Claude Code, чтобы экономить 300 млн токенов в неделю

iconBlockbeats
Поделиться
Share IconShare IconShare IconShare IconShare IconShare IconCopy
AI summary iconСводка

expand icon
Обновление о списании нового токена показывает, что инженер Anthropic поделился стратегиями кэширования токенов Claude Code, которые позволили сэкономить более 300 миллионов токенов за неделю. Ежедневная экономия составила 91 миллион токенов, при этом кэшированные токены стоят всего 10% от стоимости обычного ввода. Основные рекомендации включают избегание пауз в сессиях дольше одного часа, использование передачи сессий и хранение крупных документов в Проектах. Переключение моделей и режим Opus могут нарушить кэширование. Новости о запуске токена показывают, что разработчики сосредоточены на повышении эффективности затрат для длительных сессий.
Как инженеры Anthropic действительно экономят токены
Автор оригинала: Nate Herk
Компиляция: Peggy, BlockBeats


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


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


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


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


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


Следует перевести следующий текст:


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



Я не менял никаких настроек. Это просто кэширование запроса работает в фоновом режиме.


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


Кратко


Стоимость кэширования токенов составляет всего 10% от стоимости обычных входящих токенов. 91 миллион кэшированных токенов фактически учитываются как примерно 9 миллионов токенов.


Время жизни кэша для подписки Claude Code — 1 час; по умолчанию для API — 5 минут; для суб-агентов всегда — 5 минут.


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


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


Как именно рассчитываются платежи за кэширование?


Стоимость каждого кэшированного токена составляет 10% от стоимости обычного входного токена.



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


На панели есть два числа, на которые стоит обратить внимание:


Создание кэша: одноразовая стоимость, возникающая при записи содержимого в кэш. Она начнет действовать в следующем диалоге.
Кэш-чтение: Токены, повторно использованные Claude из кэша, например, ваши CLAUDE.md, определения инструментов, предыдущие сообщения и т. д. Стоимость на 10 раз ниже, чем при обработке в качестве входных данных.



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


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


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


Но если точность низкая, всем будет нехорошо.



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


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


Кэширование зависит от сопоставления по префиксу, то есть «совпадения по префиксу».


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


Новая сессия, которая развивается примерно так:



Согласно документации Claude Code, новая сессия обычно работает следующим образом:


Первый диалог: кэш отсутствует. Системные подсказки, контекст вашего проекта (например, CLAUDE.md, memory, правила) и ваше первое сообщение будут повторно обработаны и записаны в кэш.


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


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


Кэш сам по себе можно разделить на три уровня:



От Thariq в X:


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


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


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


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


Смешение 1 часа и 5 минут


Это самое распространенное место для недопонимания.


Подписка на Claude Code: стандартное время жизни (TTL) — 1 час.


Claude API: стандартное время жизни (TTL) — 5 минут. Вы можете заплатить больше, чтобы увеличить его до 1 часа.
Sub-agent по любому плану: всегда 5 минут.

Веб-чат Claude.ai: официально не зафиксировано. Возможно, так же, как и в подписной версии, но я еще не подтвердил.


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


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


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


Три привычки, охватывающие 95% пользователей


Ниже перечислены те части, которые, по моему мнению, действительно полезны в повседневном использовании.


Не останавливайтесь надолго


Если вы были неактивны более часа, предыдущий контент, скорее всего, уже истек в кэше. Ваше следующее сообщение восстановит кэш. В такой ситуации вместо попыток возобновить уже «остывшую» старую сессию проще и дешевле сделать четкий переход и начать новую сессию.


При переключении задачи начните заново


/compact или /clear и так нарушают кэш, поэтому лучше воспользоваться этим моментом для настоящего сброса.


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


Команда compact иногда также работает медленно. А этот навык handoff обычно завершается менее чем за минуту.


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


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


Какие действия могут незаметно повредить кэш?


Несколько действий могут сбросить кэш без явного уведомления.


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


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


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


Моя бесплатная панель токенов


Скриншот, который я показывал ранее, взят из дашборда токена.



https://github.com/nateherkai/token-dashboard


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


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


Сводка


Prompt caching — это то, что можно изучить очень глубоко. Статья Thariq описывает это более полно; если вы хотите увидеть полную картину, стоит её прочитать.


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


[Оригинальная ссылка]



Нажмите, чтобы узнать о вакансиях BlockBeats


Добро пожаловать в официальное сообщество律动 BlockBeats:

Телеграм-канал с подпиской: https://t.me/theblockbeats

Телеграм-чат: https://t.me/BlockBeats_App

Официальный аккаунт Twitter: https://twitter.com/BlockBeatsAsia

Отказ от ответственности: Информация на этой странице может быть получена от третьих лиц и не обязательно отражает взгляды или мнения KuCoin. Данный контент предоставляется исключительно в общих информационных целях, без каких-либо заверений или гарантий, а также не может быть истолкован как финансовый или инвестиционный совет. KuCoin не несет ответственности за ошибки или упущения, а также за любые результаты, полученные в результате использования этой информации. Инвестиции в цифровые активы могут быть рискованными. Пожалуйста, тщательно оценивайте риски, связанные с продуктом, и свою устойчивость к риску, исходя из собственных финансовых обстоятельств. Для получения более подробной информации, пожалуйста, ознакомьтесь с нашими Условиями использования и Уведомлением о риске.