Обзор
При использовании API действуют лимиты запросов. Они ограничивают количество запросов, токенов или другие показатели использования за определённый период.
Ответ с кодом 429 может указывать на временное превышение лимита запросов, исчерпание предоплаченного баланса или достижение лимита расходов либо использования. Прежде чем повторять запрос или менять настройки оплаты, изучите сведения об ошибке.
Определите причину
Прочитайте сообщение об ошибке и значение error.code, если оно указано. Для ошибок, связанных с оплатой, в error.type также может использоваться общее значение insufficient_quota.
| Ошибка или код | Что это означает | Что делать |
| Достигнут лимит запросов или токенов | Запросы превышают действующий лимит запросов. | Распределяйте запросы во времени и следуйте рекомендациям по повторным попыткам ниже. |
| credit_balance_exhausted | У организации не осталось предоплаченных кредитов. | Пополните баланс кредитов в настройках оплаты API. |
| organization_usage_limit_exceeded | Организация достигла лимита использования, установленного OpenAI. | Запросите увеличение одобренного лимита использования. |
| organization_spend_limit_exceeded | Организация достигла жёсткого лимита расходов. | Увеличьте или снимите лимит либо дождитесь ежемесячного сброса. |
| project_spend_limit_exceeded | Проект достиг жёсткого лимита расходов. | Увеличьте или снимите лимит проекта либо дождитесь ежемесячного сброса. |
Повторные запросы при ошибках, связанных с оплатой, расходами или квотой, не восстановят доступ. Сначала решите указанную в ошибке проблему с балансом или лимитом. Применение изменений жёстких лимитов расходов может занять некоторое время.
Для изменения лимита расходов нужны права на управление соответствующими настройками организации или проекта. Если у вас нет доступа, обратитесь к тому, кто управляет этими настройками.
О покупке предоплаченных кредитов см. статью «Настройка предоплаты за API и управление ею».
Различные способы контроля расходов описаны в руководстве по лимитам расходов на API.
Проверьте действующие лимиты запросов
Перейдите на страницу лимитов вашей организации, чтобы узнать её текущий уровень использования и лимиты.
Лимиты запросов могут действовать на уровне организации и проекта. Они не выделяются каждому пользователю отдельно. Лимиты также зависят от модели, а для некоторых семейств моделей действует общий лимит.
Проверьте, какой лимит указан в ошибке. Например, количество запросов в минуту и количество токенов в минуту ограничиваются отдельно. Вы можете достичь одного лимита, оставаясь в пределах другого.
Проверьте лимиты API для генерации изображений
Лимиты запросов к API для генерации изображений зависят от модели и вашего уровня использования. Выберите свою модель на странице моделей, чтобы узнать её лимиты.
Инструкции по настройке приведены в руководстве по генерации изображений для разработчиков. Подробнее об уровнях использования см. в руководстве по лимитам запросов к API.
Проверьте, от имени какой организации отправляется запрос
Если вы состоите в нескольких организациях, убедитесь, что запросы используют нужную организацию и проект.
Если ваш ключ API использует организацию по умолчанию, проверьте настройку организации по умолчанию. У разных организаций могут различаться условия оплаты и уровни использования.
Сократите число временных ошибок из-за превышения лимитов запросов
Распределяйте запросы во времени и избегайте всплесков
Распределяйте запросы во времени, а не отправляйте большое количество одновременно.
Лимиты запросов могут применяться к более коротким периодам, чем указанный интервал. Например, лимит в 60 запросов в минуту может также контролироваться посекундно. Поэтому кратковременный всплеск может вызвать ошибку, даже если средний объём использования, по вашим оценкам, ниже поминутного лимита.
Длинные промпты и неоправданно высокие ограничения на число выходных токенов также могут приводить к ошибкам превышения лимита токенов за единицу времени.
Повторяйте запросы с задержкой
При временных ошибках из-за превышения лимитов запросов:
Проверьте наличие заголовка Retry-After в ответе.
Если в заголовке указана допустимая задержка, подождите не меньше этого времени, прежде чем повторять запрос.
Если заголовок отсутствует или некорректен, используйте экспоненциальную задержку со случайным разбросом: увеличивайте время ожидания после каждой неудачной попытки и добавляйте небольшую случайную задержку.
Ограничьте и число повторных попыток, и общее время, отведённое на них.
Официальные SDK OpenAI уже повторяют запросы при подходящих для этого ошибках превышения лимитов запросов и учитывают Retry-After, если этот заголовок есть. Учитывайте эти попытки, прежде чем добавлять ещё один цикл повторных запросов.
Неудачные запросы тоже учитываются в поминутных лимитах. Непрерывная повторная отправка одного и того же запроса может продлить проблему.
Рекомендации по реализации и примеры приведены в руководстве по лимитам запросов к API. Изучите стороннюю библиотеку для повторных запросов, прежде чем использовать её в приложении.
Проверьте объём промпта и ответа
Удалите из промптов лишние инструкции, повторяющийся контекст и примеры. Протестируйте изменённый промпт, чтобы убедиться, что он по-прежнему даёт нужный результат.
Используйте параметр ограничения выходных токенов, который поддерживается вашей конечной точкой и моделью:
В Chat Completions используется max_completion_tokens.
В Responses используется max_output_tokens.
Не устанавливайте ограничение намного выше, чем требуется для запроса. Эти параметры учитывают как токены рассуждений, так и видимый ответ, поэтому при работе с моделью рассуждений оставляйте запас для обоих.
Проверьте свой уровень использования
Если ошибки сохраняются после сокращения всплесков запросов и проверки расхода токенов, откройте страницу лимитов, чтобы узнать о доступных способах их увеличения.
Платный уровень использования вашей организации повышается автоматически, когда общая сумма покупок кредитов достигает порогов Build, Launch и Grow. Более высокие уровни обычно предусматривают более высокие лимиты запросов. Требования к уровням приведены в руководстве по лимитам запросов к API.
Ваш одобренный месячный лимит использования не зависит от лимитов запросов и токенов за единицу времени. Увеличение одного лимита не означает, что другой тоже изменился.
Если проблема сохраняется
Перед обращением в поддержку
Подготовьте точный текст сообщения об ошибке, её код (если есть), идентификаторы соответствующих запросов, время ошибки с указанием часового пояса и значение соответствующего лимита в вашем аккаунте. Запишите, какие действия вы уже предприняли.
Обратитесь в службу поддержки OpenAI
Если после проверки лимита, указанного в ошибке, решить проблему не удалось, обратитесь в службу поддержки OpenAI через Справочный центр. Не указывайте ключи API и другие секретные данные для аутентификации.
