OpenAI
Для перекладу цієї сторінки виконано машинний переклад. Ви можете переглянути оригінальну статтю англійською.

Усунення проблем із лімітами запитів API та помилками 429

Визначте причину помилки API 429, зменште пікові навантаження від запитів і виберіть подальші дії залежно від ліміту запитів, кредитів або використання.

Оновлено: 17 days ago

Огляд

На використання 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 використовує організацію за замовчуванням, перевірте налаштування організації за замовчуванням. Різні організації можуть мати різні умови оплати й рівні використання.

Зменште кількість тимчасових помилок через ліміт запитів

Рівномірно розподіляйте запити й уникайте пікових навантажень

Розподіляйте запити в часі, а не надсилайте велику кількість одночасно.

Ліміти запитів можуть застосовуватися до коротших періодів, ніж указаний інтервал. Наприклад, ліміт у 60 запитів на хвилину може також застосовуватися до інтервалів тривалістю 1 секунду. Тому короткий сплеск запитів може спричинити помилку, навіть якщо середній рівень використання здається нижчим за похвилинний ліміт.

Довгі запити й завеликі без потреби ліміти вихідних токенів також можуть спричиняти помилки через швидкість обробки токенів.

Повторіть спробу із затримкою

У разі тимчасових помилок через ліміт запитів:

  1. Перевірте наявність заголовка відповіді Retry-After.

  2. Якщо заголовок містить коректне значення затримки, зачекайте щонайменше стільки часу, перш ніж повторити спробу.

  3. Якщо заголовка немає або його значення некоректне, застосуйте експоненційне збільшення затримки з випадковим відхиленням: після кожної невдалої спроби збільшуйте затримку й додавайте невелику випадкову паузу.

  4. Обмежуйте як кількість повторних спроб, так і загальний час на них.

Офіційні SDK OpenAI уже повторюють запити після помилок через ліміт запитів, якщо це допустимо, і враховують Retry-After, коли цей заголовок наявний. Перш ніж додавати ще один цикл повторних спроб, урахуйте ці автоматичні повтори.

Невдалі запити також враховуються в похвилинних лімітах. Безперервне повторне надсилання того самого запиту може подовжити проблему.

Рекомендації та приклади реалізації наведено в посібнику з лімітів запитів API. Перш ніж використовувати у своєму застосунку сторонню бібліотеку для повторних спроб, перевірте її.

Перегляньте розмір запиту й вихідних даних

Видаліть із запитів непотрібні інструкції, повторюваний контекст і приклади. Протестуйте оновлений запит і переконайтеся, що він усе ще дає потрібний результат.

Використовуйте параметр вихідних токенів, який підтримують ваша кінцева точка та модель:

  • Chat Completions використовує max_completion_tokens.

  • Responses використовує max_output_tokens.

Не встановлюйте ліміт, значно більший за потреби запиту. Ці параметри враховують як токени міркування, так і видимі вихідні дані, тому під час використання моделі міркування передбачте запас для обох.

Перегляньте свій рівень використання

Якщо після зменшення пікових навантажень і перевірки використання токенів помилки не зникають, перегляньте доступні способи збільшення лімітів на сторінці «Ліміти».

Зі зростанням витрат на API OpenAI може автоматично перевести організацію на вищий рівень використання. Зазвичай це підвищує ліміти запитів для більшості моделей.

Затверджений місячний ліміт використання не пов’язаний із лімітами кількості запитів і токенів. Збільшення одного ліміту не підтверджує, що інший також змінився.

Якщо проблема не зникає

Перш ніж передавати проблему на вищий рівень

Підготуйте точний текст повідомлення про помилку, усі коди помилок, відповідні ідентифікатори запитів, час помилки із зазначенням часового поясу та відповідний ліміт, указаний у вашому обліковому записі. Занотуйте, які дії ви вже виконали.

Зверніться до служби підтримки OpenAI

Якщо після перевірки зазначеного ліміту вам не вдалося розв’язати проблему, зверніться до служби підтримки OpenAI через Довідковий центр. Не додавайте ключі API чи інші секретні дані автентифікації.

Чи була ця стаття корисною?