Главная / Документация / Ограничения частоты запросов

Ограничения частоты запросов

Как работает ограничение частоты запросов, что здесь означает 429 и как создать клиент, который не вызывает такой ответ.

Лимиты обеспечивают справедливое распределение общей мощности вышестоящего сервиса. Они применяются к аккаунту, а не к ключу, поэтому добавление ключей не повышает ваш предел.

Что ограничивается

ПараметрПринцип действия
Одновременные запросыЗапросы аккаунта, находящиеся в обработке. Обычная причина ошибки 429.
Запросы в минутуЧастота запросов при длительной нагрузке.
Токены в минутуСуммарная пропускная способность для входных и выходных токенов.

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

Правильная обработка 429

  1. Увеличивайте задержку экспоненциально со случайным разбросом — 1 с, 2 с, 4 с, 8 с, каждый раз добавляя или вычитая случайную долю интервала.
  2. Ограничивайте число одновременных запросов на стороне клиента с помощью семафора, вместо того чтобы отправлять всё сразу и повторять отклонённые запросы.
  3. Ставьте пакетные задания в очередь, вместо того чтобы максимально распараллеливать их; пропускная способность ограничена числом токенов в минуту, а не количеством открытых сокетов.
  4. Рассматривайте 529 иначе, чем 429 — это ограничение мощности вышестоящего сервиса, а не проблема на вашей стороне; обычно оно исчезает в течение нескольких секунд.
import asyncio

sem = asyncio.Semaphore(8)      class=class="s">"c"># ceiling on concurrency, tune to your plan

async def ask(client, body):
    async with sem:
        return await client.post(class="s">"/v1/messages", json=body)
Агентные инструменты, такие как Claude Code, по своей архитектуре активно запускают параллельные запросы. Если при интенсивной работе с агентом вы видите ошибки 429, уменьшите параллелизм инструмента, прежде чем переходить на более высокий тариф.

Снижение нагрузки вместо повторных попыток