速率限制
速率限制是我們的 API 對使用者或用戶端在指定時間段內存取我們服務的次數所施加的限制。
為什麼需要限制
我們在 API 中設定速率限制,是為了幫助所有人獲得最佳體驗。以下是其中的重要原因:
-
為了保證我們服務的安全穩定!可以把速率限制想像成友善的保全——他們確保沒有人能用過多請求一次性壓垮我們的 API。這有助於保護我們的服務免受潛在濫用,並維持一切順暢運作。
-
為了確保每個人都能獲得公平的份額。就像在遊樂場分享玩具一樣,我們希望確保所有使用者都能平等地存取 API。透過溫和地限制每個使用者可以發出的請求數量,我們確保沒有人需要等待太久才能輪到自己。
-
為了保持效能的敏捷與可靠。透過管理請求的整體流量,我們能夠為所有優秀的使用者維持快速的回應時間與穩定的服務。這就像確保高速公路不會太壅塞——防止塞車後交通才能更順暢!
限制如何運作
速率限制透過兩種方式衡量:
- 每秒請求數:這是您每秒可以發出的網路請求數量。
- 佇列任務數:這是您在任意給定時間可以在佇列中並行執行的生成任務數量。
佇列任務包括 Text to 3D、Image to 3D、Text to Texture 和 Remesh endpoint。其他 endpoint,如 Upload 和 Balance,不計入此限制。
限制是按帳戶套用的。這代表這些限制在您所有的 API key 之間是共享的。
除了速率限制外,任務處理優先順序也會影響您任務的處理速度。
每個使用者等級都有專門設計的速率限制與優先順序層級,以符合其需求。以下是目前各等級的限制:
| 使用者等級 | 每秒請求數 | 佇列任務數 | 優先順序層級 |
|---|---|---|---|
| Pro | 20 | 10 | 預設 |
| Premium | 20 | 30 | 高於 Pro |
| Ultra | 20 | 100 | 最高 |
| Studio | 20 | 20 | 高於 Pro |
| Enterprise | 100 | 預設 100,可自訂 | 最高 |
如果您超過這些限制,將會收到來自我們 API 的 429 Too Many Requests 回應。有兩種情況會觸發此回應,每種情況的回應各不相同:
- 請求命中:當您每秒發出過多請求時會發生這種情況。您將收到帶有
RateLimitExceeded訊息的429 Too Many Requests回應。 - 佇列命中:當您有過多並行生成任務正在執行時會發生這種情況。您將收到帶有
NoMoreConcurrentTasks訊息的429 Too Many Requests回應。