Grænser
GET /v1/access viser de grænser for kald og de tekstgrænser i Redact, der gælder for din nøgle. Tekstgrænser og positioner tæller UTF-16-kodeenheder, ligesom længden af en streng i JavaScript og .NET.
Grænser for antal kald
Hvert kald tæller med i flere grænser pr. minut på én gang. Den første, der nås, svarer 429 rate_limited med Retry-After, det antal sekunder, du skal vente, højst 60.
| Grænse | Kald pr. minut | Deles af |
|---|---|---|
| Person | Fastsat af komplai for hvert værktøj i jeres organisation, højst 120. GET /v1/access viser den i services[].limits.requests_per_minute. | Alle en persons personlige API-nøgler og personens brug af hubben, på tværs af værktøjer |
| Integration | Fastsat af komplai for Redact i jeres organisation | Alle nøgler til en af organisationens integrationer, også efter komplai har udstedt en ny nøgle |
| Organisation | 120 | Alle i organisationen, personer og integrationer, i API'et og i apps |
| API | 300 | Alle organisationer, i API'et og i apps |
| IP-adresse | 300 for kald med en komplai-nøgle, 60 for andre kald | Alle kald fra samme IP-adresse |
Et 429 fra grænsen pr. IP-adresse har også x-ratelimit-limit, x-ratelimit-remaining og x-ratelimit-reset, som beskriver den grænse. En ekstra nøgle giver ikke flere kald: Dine nøgler deler din grænse.
Det tæller med:
- GET /v1/access tæller som ét kald.
- Hver læsning af et tekstjobs status eller resultat tæller med. Vent mindst 2 sekunder mellem læsningerne.
- DELETE /v1/redact/jobs/{id} tæller kun med i grænsen pr. IP-adresse.
- POST /v1/decide/batch tæller som ét kald for op til 100 tekster.
- GET /v1/openapi.json kræver ingen nøgle og tæller kun med i grænsen pr. IP-adresse.
Noget arbejde kører uden kø, så når alle pladser er optaget, svarer kaldet 429 processing_capacity_busy med Retry-After: Hver API-proces kører organisationens regler i Redact i højst to arbejdsprocesser og læser højst to PDF- eller Word-filer ad gangen. Sprogmodellen på lokal infrastruktur har en fælles kø. Er den fuld, svarer et synkront kald 503 model_busy, mens et tekstjob venter på sin tur.
AI-forbrug
Et kald, der kører en model i komplais EU-cloud, måles til udbyderens pris og tæller med i:
- organisationens månedlige loft for AI-forbrug, som er aftalt med komplai
- organisationens egen grænse, når jeres administrator har sat en, der er lavere end loftet
- din personlige grænse, når administratoren har sat en. Den gælder kun personlige API-nøgler; organisationens integrationsnøgle har ingen.
Når den laveste af dem er nået, svarer kald i EU-cloud 429 ai_credit_exhausted eller person_ai_credit_exhausted. Det hjælper ikke at vente: Det månedlige loft starter forfra næste måned. API'et flytter aldrig selv et kald til lokal infrastruktur; vælg lokal behandling i kaldet.
Lokal infrastruktur er uden betaling for AI. Jeres egne AI-forbindelser betaler I direkte til udbyderen, og de tæller ikke med i loftet. Jeres administrator kan se loftet og sætte organisationens egen grænse og personlige grænser under Organisation › AI-forbrug › Grænser. Du ser dit eget forbrug under API og integrationer › Forbrug.
Størrelser
| Operation | Grænser |
|---|---|
| POST /v1/redact/detect | Tekst: 16.000 UTF-16-kodeenheder. Body: 100.000 bytes. |
| POST /v1/redact | Tekst: 750.000 UTF-16-kodeenheder, eller 2.000.000 med Prefer: respond-async. |
| POST /v1/redact/jobs | Tekst: 2.000.000 UTF-16-kodeenheder, omkring 800 normalsider à 2.400 tegn. |
| POST /v1/redact/restore | Tekst: 750.000 UTF-16-kodeenheder. Listen over betegnelser (mapping): 100.000 poster, 2.000.000 UTF-16-kodeenheder og 500 faste betegnelser. Teksten med originalerne sat tilbage: 8.000.000 UTF-16-kodeenheder. |
| POST /v1/redact/file Beta | Fil: 50 MiB efter afkodning og 2.000 PDF-sider. Filnavn: 255 tegn. Udtrukket tekst: 750.000 UTF-16-kodeenheder. |
| POST /v1/redact/file/jobs Beta | Som POST /v1/redact/file, med op til 2.000.000 UTF-16-kodeenheder udtrukket tekst. |
| Alle resultater fra Redact | 32 MiB. |
| POST /v1/chat/completions | 32 beskeder og 80.000 UTF-16-kodeenheder indhold. Body: 400.000 bytes. max_tokens: højst 32.768 og modellens max_output_tokens. response_format: 32.768 bytes, med et skema på højst 24 niveauer og 2.048 værdier. |
| POST /v1/decide Beta | 80.000 tegn som JSON. Body: 320.000 bytes. 64 spørgsmål med op til 32 kriterier hver. |
| POST /v1/decide/batch Beta | 100 tekster. 200.000 tegn som JSON. Body: 800.000 bytes. |
| POST /v1/coding/chat/completions Beta | Body: 2.000.000 bytes og 2.000.000 tegn som JSON. 512 beskeder og 64 værktøjer. max_tokens eller max_completion_tokens: højst 32.000. |
De enkelte felter har deres egne grænser, fx højst tre værdier i detectors eller fire strenge i stop. Hver operations side i API-referencen viser dem.
Redact begrænser også det arbejde, en tekst må kræve: kandidatfund, matchede tegn og koreferencematchning vokser med tekstens længde, og organisationens regler har en tidsgrænse, der vokser med teksten og antallet af regler. En tekst ud over grænserne svarer 413 processing_complexity_exceeded. Grænserne står i text_contract.complexity_limits i GET /v1/access. Fordi de vokser med teksten, hjælper det sjældent at dele den op.
Tid
| Kald | Grænse | Når den nås |
|---|---|---|
| POST /v1/redact, POST /v1/redact/file | 300 sekunder | En kørsel, som komplai vurderer ikke kan nå at blive færdig, afvises, før noget kører, med 413 use_job. En kørsel, der alligevel når grænsen, ender med 504 processing_timeout. |
| Læsning af en PDF- eller Word-fil | 120 sekunder | 413 file_too_complex |
| POST /v1/chat/completions | 120 sekunder til modellens svar | 504 timeout |
| POST /v1/decide, POST /v1/decide/batch | 30 sekunder | 502 service_unavailable |
| POST /v1/coding/chat/completions | 600 sekunder til hele svaret | 504 timeout, eller en fejlhændelse med timeout, når streamen er begyndt |
| Tekstjob | Ingen grænse, så længe jobbet kommer videre | Efter 65 minutter uden fremskridt ender jobbet med redact_job_stalled. Efter tre afbrydelser ender det med redact_job_attempts_exhausted. |
Giv din HTTP-klient en tidsgrænse, der er lidt længere end kaldets, så du får komplais svar i stedet for din egen timeout. Brug et tekstjob eller Prefer: respond-async til lange tekster frem for at vente længere.
Et tekstjob og dets krypterede resultat gemmes, indtil du sletter jobbet, eller indtil dets expiresAt. Opbevaringstiden regnes fra, når jobbet slutter.