Таймауты и размер тела
Поток идёт на контексте, отвязанном от клиента: если соединение оборвалось, генерация всё равно доходит до конца и деньги списываются. Потоковое ограничение в 15 минут — это не «сколько вы успеете прочитать», а верхняя граница работы всей генерации.
Частота запросов
Лимиты частоты считаются на пользователя, а не на ключ, и проверяются раньше всего остального: если превышены, до модели дело не доходит.Оба лимита выключены по умолчанию. Включены ли они для вашего аккаунта и какие значения у них — вопрос настроек аккаунта, поэтому конкретное число здесь не приводится. Ориентируйтесь на поведение: получили
429 — значит, превысили тот предел, который задан у вас.429:
- Отступайте экспоненциально и добавляйте джиттер, иначе параллельные клиенты будут бить в один и тот же момент.
- Объединяйте запросы: если задача допускает батчинг, это заметно экономит квоту токенов.
- Отличайте два кода:
token_limit_exceeded— вы упираетесь в объём,rate_limit_exceeded— в число запросов. Это разные меры.
Лимиты тарифа
Отдельно от частоты запросов тариф может ограничивать число запросов и суммарное число токенов за день, неделю или месяц. Что происходит при их исчерпании — зависит от эндпоинта.
Повтор внутри периода бесполезен: счётчик сбросится по расписанию тарифа. Вариантов два — дождаться сброса или сменить тариф. Текущий объём потребления виден в Биллинге.
Прочие ограничения
Загруженные изображения могут быть перекодированы без потерь, если это даёт меньший файл. Поэтому
size в ответе на загрузку может оказаться меньше размера отправленного файла. Это норма.Политика повторов
Практические замечания
Поток обходит потолок в 300 секунд. Для длинной генерации переходите наstream: true: вместо одного запроса на 300 секунд вы получаете поток, идущий до 15 минут. Подробности — в разделе Потоковая передача.
Параллельные потоки складываются. Каждый открытый поток занимает место в квоте параллельных генераций. Планируйте конкурентность под свой лимит, а не под число ядер клиента.
Клиентский таймаут должен быть больше серверного. Поставьте в клиенте 320 секунд против серверных 300 — иначе вы получите локальный обрыв на ровном месте, где сервер ещё готов был ответить.
Отменяйте ненужные потоки. Закрытое соединение освобождает слот сразу, а не по истечении 15 минут.
Что дальше
Ошибки
Коды и цикл повторов
Запрос чату
Формат запроса и потоковая передача
Создать задачу
Лимиты медиа-задач и идемпотентность
Загрузить файл
Квота хранилища и предел в 100 МБ
Биллинг
Списания, тарифы и потребление
Аутентификация
Ключи и их ограничения
Модели и цены
Контекстные окна и стоимость токенов
