Обмеження частоти
Обмеження частоти — це обмеження, які наш API накладає на кількість разів, коли користувач або клієнт може звертатися до наших сервісів протягом визначеного періоду часу.
Чому існують обмеження
Ми запровадили обмеження частоти в нашому API, щоб створити найкращий досвід для всіх. Ось чому вони важливі:
-
Щоб зберегти наш сервіс у безпеці та справності! Думайте про обмеження частоти як про доброзичливих охоронців — вони стежать за тим, щоб ніхто не міг перевантажити наш API надто великою кількістю запитів одночасно. Це допомагає захистити наш сервіс від можливого зловживання та забезпечує безперебійну роботу всього.
-
Щоб переконатися, що кожен отримує свою справедливу частку. Так само, як поділ іграшками на дитячому майданчику, ми хочемо переконатися, що всі наші користувачі мають рівний доступ до API. Обережно обмежуючи кількість запитів, які може зробити кожен користувач, ми гарантуємо, що нікому не доведеться надто довго чекати своєї черги.
-
Щоб зберегти швидку та надійну продуктивність. Керуючи загальним потоком запитів, ми можемо підтримувати швидкий час відповіді та стабільний сервіс для всіх наших чудових користувачів. Це як стежити за тим, щоб шосе не було надто переповненим — трафік рухається краще, коли ми запобігаємо заторам!
Як працюють обмеження
Обмеження частоти вимірюються двома способами:
- Запитів на секунду: це кількість мережевих запитів, які ви можете робити за секунду.
- Завдання в черзі: це кількість одночасних завдань генерації, які ви можете виконувати в черзі в будь-який момент часу.
Завдання в черзі — це завдання на вашому акаунті, які мають статус PENDING або IN_PROGRESS. Кожна кінцева точка, що створює завдання (наприклад, Текст у 3D, Зображення у 3D, Мульти-зображення у 3D, Ретекстурування, Ремеш, Rigging, Анімація, Текст у зображення, кінцеві точки 3D-друку та Creative Lab), перевіряє це обмеження перед прийняттям нового завдання. Запити, які не створюють завдання, такі як Balance, Usage, а також отримання, перелік чи стрімінг завдань, не враховуються в цьому обмеженні, хоча вони все одно враховуються в обмеженні запитів на секунду.
Обмеження застосовуються на рівні акаунту, тому вони спільні для всіх ваших API-ключів та Playground. Завдання, які ви запускаєте у веб-застосунку Meshy, також враховуються у ваших завданнях у черзі.
Окрім обмежень частоти, на швидкість виконання ваших завдань також впливає пріоритет обробки завдань.
Кожен рівень користувача має специфічні обмеження частоти та рівні пріоритету, розроблені відповідно до їхніх потреб. Ось поточні обмеження за рівнями:
| Рівень користувача | Запитів на секунду | Завдання в черзі | Рівень пріоритету |
|---|---|---|---|
| Pro | 20 | 10 | За замовчуванням |
| Premium | 20 | 30 | Вищий, ніж Pro |
| Ultra | 20 | 100 | Найвищий |
| Studio | 20 | 20 | Вищий, ніж Pro |
| Enterprise | 100 | За замовчуванням 100, можна налаштувати | Найвищий |
Якщо ви перевищите ці обмеження, ви отримаєте відповідь 429 Too Many Requests від нашого API. Існує два типи перевищень, які можуть це спричинити, кожен з яких має свою відповідь:
- Перевищення запитів: це трапляється, коли ви робите забагато запитів за секунду. Ви отримаєте відповідь
429 Too Many Requestsз повідомленнямRate limit exceeded. - Перевищення черги: це трапляється, коли у вас забагато одночасних завдань генерації, що виконуються. Ви отримаєте відповідь
429 Too Many Requestsз повідомленнямNoMorePendingTasks(або, коли у вас закінчаться кредити,NoMoreConcurrentTasks). Ця429не маєRetry-After: зачекайте, поки одне з ваших завдань завершиться, перш ніж створювати інше.
Заголовки обмеження частоти
Відповіді API містять ці заголовки, щоб ви могли регулювати темп своїх запитів:
| Заголовок | Опис |
|---|---|
X-RateLimit-Limit | Кількість запитів, дозволених за секунду на вашому рівні. |
X-RateLimit-Remaining | Кількість запитів, що залишилися в поточну секунду. |
X-RateLimit-Reset | Кількість секунд до повного відновлення вашого бюджету. |
Retry-After | Кількість секунд, які потрібно зачекати перед наступним запитом. Надсилається разом з 429 при перевищенні запитів, а також коли ви отримуєте завдання, яке все ще має статус PENDING або IN_PROGRESS. |
Коли присутній заголовок Retry-After, зачекайте вказану кількість секунд перед надсиланням наступного запиту.