dokumentace
Nápověda

Chyby a limity

Markdown

Stavové kódy, jejich význam a další postup. Všechny chyby jsou ve formátu JSON a obsahují Request ID.

Úplný průvodce

Formát chyby

Chyba se vrací ve formátu API, které jste zavolali: objekt error pro OpenAI, {"type": "error", "error": {...}} pro Anthropic a error s poli status a details pro Gemini. SDK je proto rozpoznají jako běžné chyby API.

  • error.code a error.reason – třída chyby z níže uvedené tabulky; obě hodnoty se shodují. error.type – standardní hodnota daného formátu (například invalid_request_error nebo server_error).
  • error.request_id (v Anthropic – request_id na nejvyšší úrovni), hlavička X-Request-ID a konec textu zprávy – identifikátor požadavku.
  • V Gemini je třída v error.details: ErrorInfo.reason – stejný kód velkými písmeny (například MODEL_OVERLOADED), domain – ailoot.ai; identifikátor požadavku je v RequestInfo.requestId.
  • Ve formátu Gemini chyba 5xx, kterou nelze automaticky opakovat, a result_pending_check se vracejí se statusem 409 a status ABORTED: Gemini SDK a CLI je tak samy neopakují. Třída chyby je v ErrorInfo.reason (například MODEL_TIMEOUT nebo RESULT_PENDING_CHECK).
  • Odpověď ve formátu OpenAI obsahuje také pole na nejvyšší úrovni code a message – pro starší klienty.
{
  "code": "API_KEY_REQUIRED",
  "error": {
    "code": "invalid_api_key",
    "message": "No API key was sent with the request. Nothing was charged. Please check that the full key is sent in the Authorization header as \"Bearer <key>\". Request ID: 3b28d3de-5b02-4d07-9f3c-4b9a7d0e68d6.",
    "param": null,
    "reason": "invalid_api_key",
    "request_id": "3b28d3de-5b02-4d07-9f3c-4b9a7d0e68d6",
    "type": "invalid_request_error"
  },
  "message": "No API key was sent with the request. Nothing was charged. …"
}

Chybové kódy

HTTPTřída (reason)Co se staloCo dělat
400invalid_requestPožadavek není správný: chybné tělo nebo parametr; model nepodporuje pole, přílohu nebo nástroj z požadavku; klíč byl předán v adrese Opravte požadavek podle textu chyby: odeberte nepodporované pole, přílohu nebo nástroj; klíč předávejte v hlavičce. Odmítnutí kvůli nepodporovanému poli, příloze nebo nástroji nastává před rezervací – nic nebylo odečteno
400context_length_exceededPožadavek překračuje kontext modeluZkraťte historii nebo použijte model s větším kontextem
400content_policy_violationPožadavek byl zamítnut pravidly modeluPřeformulujte požadavek
401invalid_api_keyKlíč chybí nebo je neplatnýZkontrolujte, že jste předali celý klíč
401api_key_disabledKlíč je deaktivovanýAktivujte klíč nebo vytvořte nový
402insufficient_balance, insufficient_quotaVolný zůstatek nestačí ani na minimální rezervu (insufficient_quota – stejný případ ve formě, kterou používá OpenAI SDK)Doplňte zůstatek nebo snižte max_tokens
402api_key_quota_exhaustedCelkový limit útraty klíče je vyčerpánZvyšte limit klíče v uživatelském panelu
402payment_disputedNa účtu je dluh ze sporné platbyNové požadavky jsou pozastaveny do splacení – kontaktujte podporu
403api_key_expiredPlatnost klíče vypršelaVytvořte nový klíč
403account_inactiveVáš účet je deaktivovanýKontaktujte podporu
403permission_deniedTento požadavek není pro klíč povolen (například kvůli IP adrese)Zkontrolujte omezení klíče
404model_not_foundTakový model neexistujePorovnejte ID s /v1/models
404unsupported_endpointModel v tomto formátu nefungujeVyberte jiný formát nebo model
404not_foundTaková cesta nebo objekt neexistuje (například úloha)Zkontrolujte adresu a identifikátor
409duplicate_requestOperace se stejným klíčem idempotence již byla přijata a možná i dokončenaZkontrolujte výsledek první operace, novou neodesílejte
409not_ready, video_not_readyVideo nebo jiná úloha ještě nejsou hotovéStav zjistěte později
409, 503result_pending_checkOvěřujeme výsledek požadavku. U videoúlohy jde o příznak result_pending_check: true v odpovědi na dotaz na stav, samotná úloha zůstává in_progressPožadavek znovu neodesílejte – stav se objeví v historii (GET https://ailoot.ai/api/v1/usage). Videoúlohu nevytvářejte znovu: zkontrolujte ji později přes GET /v1/videos/{id}
410model_retiredModel byl vyřazen z provozuVyberte novou verzi v GET /v1/models
413request_too_largeTělo požadavku je příliš velkéZmenšete soubory nebo zkraťte historii
429rate_limit_exceeded, gateway_concurrency_limit, gateway_queue_fullPříliš mnoho požadavků nebo souběžných požadavků z vašeho účtuPočkejte (hlavička Retry-After, obvykle 10 s) a zkuste to znovu
429usage_limit_reachedLimit útraty klíče za časové okno je vyčerpán (5 hodin, 1 den nebo 7 dní)Počkejte, až se časové okno obnoví, nebo zvyšte limit klíče
500internal_errorChyba AilootKontaktujte podporu a uveďte Request ID
502invalid_model_response, empty_response, incomplete_responseModel vrátil chybnou, prázdnou nebo neúplnou odpověďNajděte Request ID v historii účtu. Pokud je tam výsledek nebo zaúčtovaná částka, opakování vytvoří druhý placený požadavek. Chybějící záznam nepotvrzuje, že požadavek nebyl odeslán nebo proveden: neopakujte odeslání s neznámým stavem; kontaktujte podporu a uveďte Request ID.
502result_not_deliveredVýsledek nebyl doručen vinou Ailoot, rezervovaná nebo odečtená částka byla vrácenaPožadavek lze odeslat znovu
503model_overloadedModel je dočasně přetíženýPokud X-Should-Retry: true – opakujte po počtu sekund uvedeném v Retry-After; pokud false – nejprve zkontrolujte Request ID v historii
503model_unavailableModel je dočasně nedostupnýVyberte jiný model. Pokud X-Should-Retry: true, zopakujte požadavek po počtu sekund uvedeném v Retry-After; pokud false, nejprve zkontrolujte Request ID v historii
503service_unavailableDočasná chyba na straně AilootPokud X-Should-Retry: true – opakujte po počtu sekund uvedeném v Retry-After; pokud false – nejprve zkontrolujte Request ID v historii
503charge_not_confirmedOdpověď nebyla vydána: nepodařilo se potvrdit odečtení částky; rezerva byla vrácena, peníze nebyly odečtenyPokud X-Should-Retry: true – opakujte po počtu sekund uvedeném v Retry-After; pokud false – nejprve zkontrolujte Request ID v historii
504model_timeoutModel neodpověděl včas, výsledek se ještě může objevitNeposílejte požadavek znovu, dokud neověříte Request ID v historii

Kódy pro odpovědi modelu a ověřování výsledku (502, 503 a 504) nyní označují model nebo požadavek: model_unavailable, model_timeout, invalid_model_response, incomplete_response, charge_not_confirmed a result_pending_check. Pokud váš kód porovnává error.code s dřívějšími hodnotami, nahraďte je kódy z tabulky; mapování starých kódů na nové vám poskytne podpora.

Kdy požadavek zopakovat

  • Nejprve zkontrolujte X-Should-Retry: při false, result_pending_check nebo model_timeout požadavek automaticky neopakujte. Najděte Request ID v historii uživatelského panelu: jsou tam vidět výsledek i odečtená částka.
  • Opakování je bezpečné, pokud přišlo X-Should-Retry: true: počkejte Retry-After sekund. U 5xx samotný kód nestačí: výsledek se již mohl objevit. Nejprve zkontrolujte historii v uživatelském panelu nebo kontaktujte podporu s Request ID. To je obzvlášť důležité u obrázků, videa, hudby a dlouhých kroků agentů.
  • Opakování nepomůže: 400, 401, 402, 403, 404 – nejprve opravte požadavek, klíč nebo zůstatek.

Limity

Frekvence a počet souběžných požadavků jsou omezeny pro celý váš účet, nikoli pro jednotlivý klíč. Při překročení přijde 429 rate_limit_exceeded s hlavičkou Retry-After: 10. Pokud je přetížený samotný model – 503 model_overloaded s Retry-After: 30. Pokud potřebujete větší zátěž, kontaktujte podporu.

Limity útraty se nastavují u klíče: celkový limit – 402 api_key_quota_exhausted, časová okna 5 hodin, 1 den a 7 dní – 429 usage_limit_reached. Podrobnosti – Klíče a adresa API.

Modely NVIDIA: fronta

Seznam modelů lze získat i při nulovém zůstatku; pro generování je potřeba dostatek prostředků na rezervaci. Modely NVIDIA (Nemotron a další) používají společnou frontu: při vysoké zátěži může odpověď přijít později nebo se vrátí chyba „model je dočasně přetížený“ s hlavičkou Retry-After – zkuste to znovu po uvedené době. Ceny najdete v katalogu, částka se odečítá stejně jako u ostatních modelů.

Limity velikosti určuje model: kontext (kolik tokenů lze odeslat) a maximální délku odpovědi. Jsou uvedeny v katalogu.

Historie a náklady

Historie a náklady · GET https://ailoot.ai/api/v1/usage · JWT · Authorization: Bearer $TOKEN

JWT ≠ sk-… · Přihlášení a relace

Máte další dotazy? Pošlete Request ID a popis – pomůžeme situaci objasnit.Napsat podpoře