Лимиты и тарифы

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

Четыре оси лимитов

  • Частота (rpm) — сколько запросов в минуту принимает ключ.
  • Конкурентность — сколько запросов может выполняться одновременно; стриминг держит слот до конца потока.
  • Суточная квота — сколько запросов в сутки доступно на тарифе; окно сбрасывается каждые 24 часа.
  • Пожизненная квота изображений — сколько картинок ключ может сгенерировать за всё время.

Числа по тарифам

ЛимитFreePro
Запросов в минуту1060
Параллельных запросов110
Запросов в суткибез суточного лимита1 000
Изображений за всё время50без лимита

Что происходит при превышении

Запрос отклоняется с кодом 429 ещё до маршрутизации, поэтому отказ не тратит квоту. В теле — kind и, когда шлюз может его вычислить, retry_after_sec.

  • rate_limited — упёрся в частоту или конкурентность. Подожди и повтори.
  • quota_exceeded — исчерпана суточная или пожизненная квота. Повтор не поможет: дождись сброса или смени тариф.
{
  "success": false,
  "code": 429,
  "data": null,
  "error": {
    "kind": "rate_limited",
    "message": "rate limit exceeded (rpm)",
    "retry_after_sec": 8
  }
}

Где смотреть расход

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

Как жить в пределах лимита

  • Ставь свою очередь: на Free одновременный запрос ровно один, параллельные вызовы будут отбиты.
  • Экспоненциальный бэкофф с джиттером убирает синхронные всплески после 429.
  • Разводи окружения по разным ключам — тогда отладка не съедает квоту продакшена.
  • Для изображений считай не запросы, а картинки: n > 1 расходует пожизненную квоту быстрее.