Rate Limits
Ang mga rate limit ay mga paghihigpit na ipinapataw ng aming API sa bilang ng beses na maaaring i-access ng isang user o client ang aming mga serbisyo sa loob ng isang tinukoy na panahon.
Bakit May mga Limitasyon
Naglagay kami ng rate limit sa aming API upang matulungan kaming makalikha ng pinakamahusay na karanasan para sa lahat. Narito ang mga dahilan kung bakit ito mahalaga:
-
Upang panatilihing ligtas at maayos ang aming serbisyo! Isipin ang mga rate limit bilang magiliw na bantay - tinitiyak nilang walang makakapagpaputok ng masyadong maraming request sa aming API nang sabay-sabay. Nakakatulong ito na protektahan ang aming serbisyo mula sa posibleng maling paggamit at panatilihing maayos ang takbo ng lahat.
-
Upang matiyak na patas ang bahagi ng bawat isa. Kagaya ng pagbabahagi ng mga laruan sa palaruan, gusto naming tiyakin na pantay-pantay ang access ng lahat ng aming user sa API. Sa mahinahong paglilimita kung ilang request ang maaaring gawin ng bawat user, sinisiguro naming walang sinumang maghihintay nang masyadong matagal para sa kanilang turn.
-
Upang panatilihing mabilis at maaasahan ang performance. Sa pamamahala sa kabuuang daloy ng mga request, mapapanatili namin ang mabilis na response time at matatag na serbisyo para sa lahat ng aming kahanga-hangang mga user. Parang siniseguro na hindi masyadong pupuno ang isang highway - mas maayos ang daloy ng trapiko kapag naiiwasan natin ang bara sa trapiko!
Paano Gumagana ang mga Limitasyon
Ang mga rate limit ay sinusukat sa 2 paraan:
- Requests per Second: Ito ang bilang ng mga network request na maaari mong gawin bawat segundo.
- Queue Tasks: Ito ang bilang ng mga sabay-sabay na generation task na maaari mong patakbuhin sa queue anumang oras.
Kasama sa queue tasks ang Text to 3D, Image to 3D, Text to Texture, at Remesh na mga endpoint. Ang ibang mga endpoint tulad ng Upload at Balance ay hindi kasama sa limitasyong ito.
Ang mga limitasyon ay ipinapataw batay sa bawat account. Ibig sabihin, ang mga limitasyon ay ibinabahagi sa lahat ng iyong mga API key.
Bukod sa rate limits, ang priority ng pagproseso ng task ay makakaapekto rin sa bilis ng iyong mga task.
Ang bawat user tier ay may kani-kaniyang tiyak na rate limit at antas ng priority na idinisenyo upang tumugma sa kanilang mga pangangailangan. Narito ang kasalukuyang mga limitasyon ayon sa tier:
| User Tier | Requests per Second | Queue Tasks | Antas ng Priority |
|---|---|---|---|
| Pro | 20 | 10 | Default |
| Premium | 20 | 30 | Mas mataas kaysa Pro |
| Ultra | 20 | 100 | Pinakamataas |
| Studio | 20 | 20 | Mas mataas kaysa Pro |
| Enterprise | 100 | Default na 100, maaaring i-customize | Pinakamataas |
Kung malampasan mo ang mga limitasyong ito, makakatanggap ka ng 429 Too Many Requests na response mula sa aming API. May dalawang uri ng pagkakataon na maaaring magpagana nito, bawat isa ay may kaibang response:
- Request Hit: Nangyayari ito kapag masyado kang maraming ginawang request bawat segundo. Makakatanggap ka ng
429 Too Many Requestsna response na may mensahengRate limit exceeded. - Queue Hit: Nangyayari ito kapag masyado kang maraming sabay-sabay na tumatakbong generation task. Makakatanggap ka ng
429 Too Many Requestsna response na may mensahengNoMorePendingTasks(o, kapag naubos na ang iyong credits,NoMoreConcurrentTasks). Ang429na ito ay walangRetry-After: hintayin na matapos ang isa sa iyong mga task bago gumawa ng isa pa.
Rate Limit Headers
Ang mga API response ay may kalakip na mga header na ito upang matulungan kang i-pace ang iyong mga request:
| Header | Deskripsyon |
|---|---|
X-RateLimit-Limit | Bilang ng mga request na pinapayagan bawat segundo ayon sa iyong tier. |
X-RateLimit-Remaining | Bilang ng mga request na natitira sa kasalukuyang segundo. |
X-RateLimit-Reset | Bilang ng segundo bago mapuno muli ang iyong budget. |
Retry-After | Bilang ng segundo na dapat hintayin bago ang iyong susunod na request. Ipinapadala kasabay ng Request Hit na 429, at kapag kinukuha mo ang isang task na PENDING o IN_PROGRESS pa rin. |
Kapag naroroon ang Retry-After, hintayin ang bilang ng segundong iyon bago magpadala ng susunod na request.