Лимиты использования Claude: что делать при ошибке
Узнайте, как различаются лимиты подписки Claude и API 429 rate limit. Смена модели не восстанавливает доступ. Разбираем способы снятия ограничений для пользователей и разработчиков.
Каковы лимиты использования Claude?
Лимиты использования Claude разделены на две независимые системы, и первым делом необходимо определить, какая именно из них ограничила ваш доступ. Подписка Claude (Pro, Max, Team или Enterprise) предоставляет динамический лимит использования, который является общим для всех моделей и чатов Claude; при его исчерпании вы увидите сообщение вида You've hit your session limit · resets 3:45pm. Claude API использует другой механизм: он измеряет скорость отправки запросов и токенов в расчете на минуту. При превышении этого лимита возвращается ошибка HTTP 429 с типом rate_limit_error и заголовком retry-after, в котором указано количество секунд, необходимое для ожидания.
Способы решения этих проблем не связаны между собой. Лимит подписки зависит от общего объема использования за определенный период, поэтому вам нужно либо дождаться сброса лимита, либо приобрести дополнительный объем. Лимит скорости API (rate limit) зависит от текущей интенсивности запросов и снимается через несколько секунд после того, как вы снизите нагрузку.
Объемы по тарифным планам и уровни лимитов часто меняются, поэтому здесь не приводятся конкретные цифры, чтобы избежать дезинформации. Актуальные значения для вашего аккаунта можно узнать с помощью команд, приведенных ниже.
Какой лимит был достигнут? Прочитайте точное сообщение
Claude Code указывает систему в выводимом тексте. Сверьтесь с ней, прежде чем вносить изменения.
You've hit your session limit · resets 3:45pm— это лимит подписки. Вы исчерпали доступный объем запросов для вашего тарифного плана в текущем окне.You've hit your weekly limit · resets Mon 12:00am— это то же самое ограничение, но для более длительного временного окна.You've hit your Opus limit · resets 3:45pm— это лимит подписки, который применяется только к запросам к модели Opus. Это единственный случай, когда смена модели помогает.API Error: Request rejected (429) · this may be a temporary capacity issue. If it persists, check https://status.claude.com.— это ограничение частоты запросов API (rate limit). Вы достигли лимита, установленного для вашего API-ключа, проекта Amazon Bedrock или Google Cloud. То, какой именно лимит применяется, зависит от того, как клиент проходит аутентификацию, поскольку использование клиента Bedrock или Vertex тарифицируется в рамках квоты вашего облачного проекта, а не организации Anthropic.API Error: Server is temporarily limiting requests (not your usage limit)— это кратковременное ограничение (throttle), не связанное с квотой вашего тарифного плана. Claude Code автоматически повторяет попытку с экспоненциальной задержкой, прежде чем вывести эту строку.
Лимиты подписки: сессионные, недельные и окно Opus
План подписки включает в себя динамически обновляемую квоту на использование. Когда она исчерпывается, Claude Code блокирует дальнейшие запросы до времени сброса, указанного в сообщении. Две особенности этой квоты чаще всего вызывают вопросы.
- Она общая с чатом Claude. Работа на claude.ai расходует ту же квоту, что и работа в терминале, поэтому активная переписка в чате днём сокращает время на кодинг вечером. Любая платформа, на которую вы входите под этой учётной записью, использует один и тот же пул ресурсов. Например, в Linux бета-версия настольного приложения и Claude Code CLI расходуют одну общую квоту на двоих, а не каждую по отдельности.
- Она общая для всех моделей. Сессионные и недельные лимиты не имеют бюджета для каждой модели в отдельности, за единственным исключением — лимита Opus.
Для планов Claude for Teams и Enterprise установленная схема представляет собой квоту на каждое рабочее место, которая обновляется в рамках скользящего пятичасового окна и недельного периода. Она общая с чатом Claude и Cowork, а её размер зависит от уровня подписки (Standard или Premium). Для планов Pro и Max достоверными данными являются время сброса, указанное в сообщении, и ваши собственные полосы /usage, а не цифры, скопированные из сторонних публикаций. Если вы всё ещё выбираете тариф, сравнение планов Claude поможет понять, какие ограничения накладывает каждый из них.
Почему переключение модели через /model не восстанавливает доступ
Это самая распространенная ошибка, и документация прямо указывает на это: лимиты сессии и недельные ограничения являются общими для всех моделей, поэтому смена модели не восстанавливает доступ. Выбор менее ресурсоемкой модели после исчерпания лимита сессии лишь меняет модель, которая будет отвечать. Это не увеличивает остаток доступных запросов, так как лимит не привязан к конкретной модели, поэтому переключение ничего не сбрасывает.
Исключением является лимит Opus — это ограничение, которое действительно применяется только к одной модели. Если сообщение гласит You've hit your Opus limit, то /model является верным решением. Переключитесь на другую модель и продолжайте работу, так как были заблокированы только запросы к Opus.
Восприятие лимита как ошибки в работе системы — вторая распространенная ошибка. Переустановка или повторная аутентификация ничего не изменят. Доступ восстановится автоматически после сброса временного окна или при покупке дополнительных кредитов на использование.
Что делать при достижении лимита подписки
- Узнайте время сброса. Окно сессии ограничено по времени. Не стоит ждать окончания недельного лимита, сидя за рабочим столом.
- Если достигнут лимит Opus, выполните
/modelи выберите другую модель. - Выполните
/usage, чтобы увидеть лимиты вашего тарифного плана, индикаторы использования и время их сброса./cost— это псевдоним для того же экрана. - Выполните
/usage-credits, чтобы продолжить работу после достижения потолка. В планах Pro и Max откроются настройки биллинга. В планах Team и Enterprise откроются настройки использования организации или будет отправлен запрос администраторам, если у вас нет доступа к биллингу. - Если вы упираетесь в один и тот же лимит каждую неделю, значит, тарифный план не соответствует вашему рабочему процессу, и стоит один раз изучить способы выхода из ограничений использования, вместо того чтобы решать эту проблему при каждом сбросе.
/usage-credits требует наличия подписки claude.ai, оформленной через /login. Эта функция недоступна при аутентификации через API key, так как API key не имеет лимитов плана, которые можно было бы расширить.
У использования кредитов есть один побочный эффект, о котором стоит знать заранее. Время жизни кэша промптов (prompt cache) при наличии подписки составляет один час, но сокращается до пяти минут, как только вы начинаете расходовать кредиты. В результате больше сессий начинаются «с нуля», а расход токенов в Claude Code для выполнения той же задачи возрастает.
Сообщения, которые выглядят как лимиты использования, но ими не являются
Четыре ошибки Claude Code ошибочно принимаются за лимиты использования, хотя ни одна из них таковой не является.
- Предупреждение о контексте или автоматическом сжатии (auto-compact) не является лимитом использования.
/contextвыводит строку, напримерContext exceeds the 200k-token limit by 94k tokens — run /compact or /clear to continue., когда объем диалога превышает контекстное окно модели. Старая история суммируется для освобождения места, при этом лимиты вашего тарифного плана остаются нетронутыми. Error during compaction: Conversation too long. Press esc twice to go up a few messages and try again.означает, что сам процесс/compactзавершился с ошибкой, так как осталось недостаточно свободного контекста для размещения создаваемого резюме.Credit balance is too lowозначает, что у вашей организации в Console закончились предоплаченные кредиты. Пополните баланс на странице platform.claude.com/settings/billing, где также доступна функция автоматического пополнения.API Error: Usage credits required for 1M context · run /usage-credits to turn them on, or /model to switch to standard context— это проверка прав доступа, а не исчерпанная квота. Выберите вариант модели без суффикса[1m]или установитеCLAUDE_CODE_DISABLE_1M_CONTEXT=1.
Еще одна ошибка поступает со стороны API. Ошибка 413 request_too_large — это ограничение размера отдельного запроса, а не ограничение частоты запросов (rate limit).
Лимиты API: что именно учитывает код 429
Messages API отслеживает три показателя отдельно для каждого класса моделей.
- запросы в минуту (RPM)
- входные токены в минуту (ITPM)
- выходные токены в минуту (OTPM)
У вашей организации также есть лимит расходов — это другой показатель: максимальная ежемесячная стоимость использования API. Как только вы достигаете лимита расходов вашего уровня, использование API приостанавливается до следующего месяца, если вы не запросите увеличение лимита. Никакой цикл повторных попыток (retry loop) здесь не поможет.
Четыре механизма определяют, когда возникает ошибка 429.
- Лимиты действуют для каждого класса моделей. Они применяются отдельно к каждой модели, поэтому вы можете одновременно использовать разные модели в пределах их соответствующих лимитов. Некоторые семейства совместно используют один «бак»: лимит для Opus является общим для Claude Opus 4.8, Opus 4.7, Opus 4.6 и Opus 4.5, в то время как Claude Sonnet 5 имеет свой собственный.
- Емкость пополняется непрерывно. API использует алгоритм «маркерной корзины» (token bucket), поэтому емкость пополняется непрерывно, а не сбрасывается в фиксированный момент времени. Лимит в 60 запросов в минуту может применяться как один запрос в секунду, поэтому 60 запросов, отправленных одновременно, все равно приведут к ошибке.
- В большинстве моделей в ITPM учитываются только некэшированные входные данные.
input_tokensиcache_creation_input_tokensучитываются.cache_read_input_tokensв большинстве моделей Claude не учитывается, за исключением Claude Haiku 3.5, как указано в документации. Таким образом, кэширование дает запас по лимитам скорости, а также скидку. Что касается вывода, высокий показательmax_tokensне учитывается в OTPM, так как OTPM считает только фактически сгенерированные токены. - Лимиты действуют на уровне организации. Рабочей области (workspace) можно назначить более низкий лимит, при этом общеорганизационные лимиты действуют всегда, даже если сумма лимитов рабочих областей превышает их. Лимит, который вы не переопределили для рабочей области, наследуется от организации, а не остается неограниченным.
Уровни Start, Build, Scale и Custom определяют фактические значения, которые назначаются автоматически на основе истории использования и статуса аккаунта. Новые организации могут начинать с лимитов ниже стандартных опубликованных, поэтому первая ошибка 429 может возникнуть раньше, чем предсказывает таблица. Резкое увеличение нагрузки активирует лимиты ускорения, которые возвращают 429, даже если вы находитесь в пределах своего уровня, поэтому наращивайте трафик постепенно. Каждая опубликованная цифра — это потолок: задокументированные лимиты являются максимально допустимым использованием, а не гарантированным минимумом. Чтобы запросить увеличение, используйте элемент управления "Request rate limit increase" на странице Limits в Claude Console.
Чтение ошибки 429: retry-after, заголовки и повторные попытки в SDK
Каждая ошибка API возвращает одинаковый конверт: вложенный объект error, содержащий тип и сообщение, а также поле request_id верхнего уровня.
{
"type": "error",
"error": {
"type": "rate_limit_error",
"message": "<names the rate limit you exceeded>"
},
"request_id": "req_011CSHoEeqs5C35K2UUqR7Fy"
}Остальная информация передается в заголовках.
retry-after— количество секунд, которое необходимо подождать перед повторной отправкой запроса. Более ранние попытки завершатся неудачей.anthropic-ratelimit-requests-limit,anthropic-ratelimit-requests-remainingиanthropic-ratelimit-requests-resetописывают бюджет ваших запросов.anthropic-ratelimit-input-tokens-*иanthropic-ratelimit-output-tokens-*предоставляют аналогичные данные для ITPM и OTPM с теми же суффиксами: limit (лимит), remaining (остаток) и reset (сброс).anthropic-ratelimit-tokens-*отображает значения для наиболее строгого ограничения, действующего в данный момент.
Заголовки сброса (reset) содержат временные метки в формате RFC 3339. Значения заголовков оставшихся токенов (remaining) округляются до ближайшей тысячи, поэтому воспринимайте их как приблизительный индикатор. У быстрого режима (fast mode) есть собственный пул и свои заголовки anthropic-fast-*. Считывайте их при каждом успешном вызове:
curl -s -D - -o /dev/null https://api.anthropic.com/v1/messages \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "content-type: application/json" \
-d '{"model":"claude-sonnet-5","max_tokens":16,"messages":[{"role":"user","content":"hi"}]}' \
| grep -i 'ratelimit\|retry-after\|request-id'Каждый ответ также содержит уникальный заголовок request-id, например req_018EeWyXxfu5pfWkrYcMdjWG. Он отображается как request_id в теле ошибки и как _request_id в ответах SDK для Python и TypeScript. Указывайте его при обращении в службу поддержки.
Прежде чем писать цикл с задержкой (backoff loop), проверьте, действительно ли он вам нужен. Официальные SDK автоматически повторяют попытки при временных сбоях, включая ошибки соединения, превышение лимитов (rate limits) и ошибки сервера 5xx, используя экспоненциальную задержку. По умолчанию выполняется две попытки с учетом заголовка retry-after, если он присутствует. Каждый клиент поддерживает опцию maximum-retries, позволяющую изменить или отключить это поведение.
import anthropic
client = anthropic.Anthropic(max_retries=5) # the SDK default is 2
try:
msg = client.messages.create(
model="claude-sonnet-5",
max_tokens=1024,
messages=[{"role": "user", "content": "hello"}],
)
except anthropic.RateLimitError as err:
headers = err.response.headers
print("still limited after retries; wait", headers.get("retry-after"), "seconds")
print("request id:", headers.get("request-id"))529 overloaded_error — это не ваша вина
Ошибка 429 означает, что вы отправляете запросы слишком быстро. Ошибка 529 overloaded_error означает, что API временно перегружен; это может произойти, когда API испытывает высокую нагрузку от всех пользователей. Это не связано с вашим ключом или кодом. Повторите запрос с использованием экспоненциальной задержки (exponential backoff), что SDK уже делают для ответов 5xx, и проверьте статус на status.claude.com, если проблема не исчезает. Ошибка 500 api_error — это внутренняя ошибка, которую следует повторить таким же образом; ни одна из них не является ограничением частоты запросов (rate limit).
Чтение собственных лимитов вместо таблицы
При наличии подписки экран /usage является основным. На нем отображаются индикаторы использования вашего тарифного плана и детализация потребления ресурсов, а переключатели d или w позволяют выбрать период: последние 24 часа или последние 7 дней. Учтите два нюанса. Блок Session показывает использование API-токенов и предназначен для пользователей API, поэтому подписчики могут игнорировать указанную там сумму в долларах. Данные берутся из локальной истории сессий на конкретном устройстве, поэтому информация об использовании с другого устройства или через claude.ai будет отсутствовать.
Что касается API, страница Usage в Claude Console содержит два графика: "Rate Limit - Input Tokens" и "Rate Limit - Output Tokens". На графике входных данных отображается почасовой максимум некэшированных входных токенов в минуту в сравнении с вашим текущим лимитом ITPM, а рядом указана скорость кэширования. Это позволяет отслеживать приближение к лимиту, а не сталкиваться с ним непосредственно в процессе эксплуатации.
Чтобы получить настроенные лимиты программным способом:
curl -s https://api.anthropic.com/v1/organizations/rate_limits \
-H "x-api-key: $ANTHROPIC_ADMIN_KEY" \
-H "anthropic-version: 2023-06-01"Для этого требуется Admin API key, а GET /v1/organizations/workspaces/{workspace_id}/rate_limits выполняет аналогичную задачу для всей рабочей области. Оба метода работают только на чтение: чтобы изменить лимит, используйте вкладку Limits в консоли.
Использование less для соблюдения лимитов
Обе системы учитывают одни и те же параметры, поэтому данные методы применимы к каждой из них.
- Тратьте меньше токенов за один запрос. Непрерывные сессии позволяют поддерживать кэш в актуальном состоянии, а
/clearмежду несвязанными задачами не требует затрат. В использовании токенов в Claude Code эти методы описаны подробно. - Снижайте нагрузку. Доступны уровни
low,medium,high,xhighиmax. Меню/effortтакже предлагаетultracode, что увеличивает расходы, а не снижает их. Глубокие рассуждения при простом переименовании элементов не приносят пользы. - Сокращайте параллелизм после ошибки 429. Уменьшите
CLAUDE_CODE_MAX_TOOL_USE_CONCURRENCYи избегайте запуска множества параллельных субагентов. Также выполните/status: случайныйANTHROPIC_API_KEYнаправляет запросы через ключ низкого уровня вместо вашей подписки. - Переносите неинтерактивные задачи в Message Batches API. Этот инструмент обрабатывает большие объемы данных асинхронно со скидкой 50% на входные и выходные токены и имеет собственные лимиты, поэтому ночные задания не будут конкурировать с вашей текущей сессией.
Сильнее всего это ощущается при работе с большими объемами данных в контексте: если вы занимаетесь анализом акций и опционов на основе рыночных данных в реальном времени, извлечение только необходимого фрагмента данных стоит значительно дешевле, чем вставка целых таблиц с котировками. Задачи, выполняемые программой, а не человеком, изначально следует запускать через API-ключ. Переход на API меняет не только способ оплаты, но и систему учета, так как у Claude API нет бесплатного уровня, за исключением небольшого кредита, предоставляемого при регистрации. В руководстве ваше первое приложение Claude API на VPS рассматриваются вопросы управления ключами и повторных попыток, а длительная работа агента не прервется при разрыве соединения, если вы используете Claude Code, запущенный на VPS внутри tmux.
FAQ
Почему переключение моделей не снимает ограничение на использование Claude?
Потому что лимиты сессии и недельные лимиты являются общими для всех моделей. Квота относится к тарифному плану, а не к конкретной модели, поэтому /model меняет только то, какая модель будет отвечать, а не остаток доступной квоты. Единственным исключением является You've hit your Opus limit, который применяется только к запросам к Opus. В этом случае переключение модели является задокументированным способом решения проблемы.
Что означает ошибка 429 rate_limit_error и сколько времени нужно ждать?
Это означает, что ваша учетная запись достигла лимита запросов для данного класса моделей: по количеству запросов в минуту, количеству входных токенов в минуту или количеству выходных токенов в минуту. Ответ содержит заголовок retry-after с указанием количества секунд, которые необходимо подождать; более ранние попытки повторного запроса завершатся неудачей. Официальные SDK уже выполняют повторные попытки при получении ошибок rate limit и 5xx с экспоненциальной задержкой (по умолчанию две попытки), учитывая этот заголовок. Ошибка 429, возникающая при нахождении в рамках лимитов вашего тарифного плана, указывает на ограничение ускорения из-за резкого скачка нагрузки.
Как посмотреть лимиты использования Claude и время их сброса?
В Claude Code выполните /usage, чтобы увидеть индикаторы вашего плана, время сброса и детализацию использования; /cost является псевдонимом, а d или w переключают отображение между последними 24 часами и последними 7 днями. Эти данные берутся из локальной истории сессии, поэтому они не учитывают использование с других устройств и через claude.ai. В API консоль отображает ваши лимиты, а GET /v1/organizations/rate_limits возвращает настроенные лимиты при использовании ключа Admin API.
Можно ли продолжить работу после достижения лимита плана Claude?
Иногда. Выполните /usage-credits, чтобы приобрести дополнительный объем использования сверх лимита для планов Pro и Max, или запросить его у администратора для планов Team и Enterprise; для этого требуется вход в claude.ai через /login, и эта возможность недоступна при аутентификации с помощью API key. В противном случае дождитесь времени сброса, переключите модель, если это был лимит Opus, или перенесите работу на использование API key, где тарификация идет по минутам, а не по временному окну.