Source: https://ailoot.ai/docs/sl/errors/
Canonical: https://ailoot.ai/docs/sl/errors/
Language: sl

[Pomoč](https://ailoot.ai/docs/sl/) 

# Napake in omejitve

[Markdown](https://ailoot.ai/docs/sl/errors/index.md)

Kode odgovorov, njihov pomen in kako ukrepati. Vse napake so v JSON in vsebujejo Request ID.

## [](https://ailoot.ai/docs/sl/errors/#format)Format napake

Napaka prispe v formatu API-ja, ki ste ga poklicali: objekt `error` pri OpenAI, `{"type": "error", "error": {...}}` pri Anthropic in `error` s poljema `status` in `details` pri Gemini. Zato jih SDK prepoznajo kot običajne napake API-ja.

- `error.code` in `error.reason` – razred napake iz spodnje tabele; vrednosti se ujemata. `error.type` – standardna vrednost formata (na primer, `invalid_request_error` ali `server_error`).
- `error.request_id` (pri Anthropic – `request_id` na najvišji ravni), glava `X-Request-ID` in konec besedila sporočila – identifikator zahteve.
- Pri Gemini je razred v `error.details`: `ErrorInfo.reason` – ista koda z velikimi črkami (na primer, `MODEL_OVERLOADED`), `domain` – `ailoot.ai`; identifikator zahteve je v `RequestInfo.requestId`.
- Pri formatu Gemini napaka 5xx, ki je ni dovoljeno samodejno ponoviti, in `result_pending_check` prispeta s statusom 409 in `status` `ABORTED`: tako ju Gemini SDK in CLI ne ponovita sama. Razred napake je v `ErrorInfo.reason` (na primer, `MODEL_TIMEOUT` ali `RESULT_PENDING_CHECK`).
- Odgovor v formatu OpenAI vsebuje še polji na najvišji ravni `code` in `message` – za starejše odjemalce.

```json
{
  "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. …"
}
```

```json
{
  "type": "error",
  "error": {
    "type": "authentication_error",
    "code": "invalid_api_key",
    "reason": "invalid_api_key",
    "message": "… Nothing was charged. … Request ID: 94ed3e31-4373-41ce-bf8a-0d1ed3f7235e."
  },
  "request_id": "94ed3e31-4373-41ce-bf8a-0d1ed3f7235e"
}
```

```json
{
  "error": {
    "code": 401,
    "status": "UNAUTHENTICATED",
    "message": "The API key is not valid. Nothing was charged. … Request ID: e7aa743b-9d0d-4064-b206-2562609f545b.",
    "details": [
      {
        "@type": "type.googleapis.com/google.rpc.ErrorInfo",
        "reason": "INVALID_API_KEY",
        "domain": "ailoot.ai",
        "metadata": {
          "code": "invalid_api_key",
          "reason": "invalid_api_key",
          "request_id": "e7aa743b-9d0d-4064-b206-2562609f545b"
        }
      },
      {
        "@type": "type.googleapis.com/google.rpc.RequestInfo",
        "requestId": "e7aa743b-9d0d-4064-b206-2562609f545b"
      }
    ]
  }
}
```

“Nothing was charged” pomeni, da sredstva niso bila bremenjena. Če prejmete X-Should-Retry: false, ne ponavljajte samodejno; najprej preverite Request ID v zgodovini.

## [](https://ailoot.ai/docs/sl/errors/#codes)Kode napak

| HTTP | Razred (reason) | Kaj se je zgodilo | Kaj storiti |
| --- | --- | --- | --- |
| 400 | `invalid_request` | Zahteva je neveljavna: napačno telo ali parameter; model ne podpira polja, priloge ali orodja iz zahteve; ključ je poslan v naslovu | Zahtevo popravite glede na besedilo napake: odstranite nepodprto polje, prilogo ali orodje; ključ pošljite v glavi. Zavrnitev zaradi nepodprtega polja, priloge ali orodja se zgodi pred rezervacijo – nič ni bremenjeno |
| 400 | `context_length_exceeded` | Zahteva presega kontekst modela | Skrajšajte zgodovino ali izberite model z večjim kontekstom |
| 400 | `content_policy_violation` | Zahteva je zavrnjena zaradi pravil modela | Preoblikujte zahtevo |
| 401 | `invalid_api_key` | Ključ manjka ali je napačen | Preverite, ali je ključ poslan v celoti |
| 401 | `api_key_disabled` | Ključ je izklopljen | Vklopite ključ ali ustvarite novega |
| 402 | `insufficient_balance`, `insufficient_quota` | Prostih sredstev ni dovolj niti za najmanjšo rezervacijo (`insufficient_quota` – isti primer v obliki, ki jo običajno uporablja OpenAI SDK) | Dodajte sredstva ali znižajte max\_tokens |
| 402 | `api_key_quota_exhausted` | Skupna omejitev porabe ključa je izčrpana | Na nadzorni plošči zvišajte omejitev ključa |
| 402 | `payment_disputed` | Na računu je dolg zaradi izpodbijanega plačila | Nove zahteve so začasno ustavljene do poravnave – pišite podpori |
| 403 | `api_key_expired` | Veljavnost ključa je potekla | Ustvarite nov ključ |
| 403 | `account_inactive` | Vaš račun je izklopljen | Pišite podpori |
| 403 | `permission_denied` | Ta zahteva s ključem ni dovoljena (na primer zaradi IP) | Preverite omejitve ključa |
| 404 | `model_not_found` | Takšen model ne obstaja | ID primerjajte z /v1/models |
| 404 | `unsupported_endpoint` | Model ne deluje v tem formatu | Izberite drug format ali model |
| 404 | `not_found` | Takšna pot ali objekt (na primer opravilo) ne obstaja | Preverite naslov in identifikator |
| 409 | `duplicate_request` | Operacija z istim ključem idempotentnosti je že sprejeta in morda tudi končana | Preverite rezultat prve operacije; nove ne pošiljajte |
| 409 | `not_ready`, `video_not_ready` | Video ali drugo opravilo še ni pripravljeno | Stanje zahtevajte pozneje |
| 409, 503 | `result_pending_check` | Preverjamo rezultat zahteve. Pri videoopravilu je to zastavica `result_pending_check: true` v odgovoru o stanju; samo opravilo ostane `in_progress` | Zahteve ne pošljite ponovno – stanje bo prikazano v zgodovini (GET https://ailoot.ai/api/v1/usage). Videoopravila ne ustvarjajte ponovno: pozneje ga preverite prek GET /v1/videos/{id} |
| 410 | `model_retired` | Model ni več v uporabi | Novo različico izberite v GET /v1/models |
| 413 | `request_too_large` | Telo zahteve je preveliko | Zmanjšajte datoteke ali skrajšajte zgodovino |
| 429 | `rate_limit_exceeded`, `gateway_concurrency_limit`, `gateway_queue_full` | Preveč zahtev ali sočasnih zahtev z vašega računa | Počakajte (glava `Retry-After`, običajno 10 s) in ponovite |
| 429 | `usage_limit_reached` | Časovno okno porabe ključa je izčrpano (5 ur, 1 dan ali 7 dni) | Počakajte, da se okno obnovi, ali zvišajte omejitev ključa |
| 500 | `internal_error` | Napaka Ailoot | Pišite podpori z Request ID |
| 502 | `invalid_model_response`, `empty_response`, `incomplete_response` | Model je vrnil neveljaven, prazen ali nepopoln odgovor | Poiščite Request ID v zgodovini uporabniškega računa. Če je tam rezultat ali obremenitev, bo ponovitev ustvarila drugo plačljivo zahtevo. Odsotnost zapisa ne potrjuje, da zahteva ni bila poslana ali izvedena: ne ponavljajte pošiljanja z neznanim stanjem; obrnite se na podporo in navedite Request ID. |
| 502 | `result_not_delivered` | Rezultat ni dostavljen po krivdi Ailoot; rezervacija je sproščena ali je bremenitev povrnjena | Zahtevo lahko pošljete ponovno |
| 503 | `model_overloaded` | Model je začasno preobremenjen | Če je X-Should-Retry: true – ponovite po številu sekund, navedenem v Retry-After; če je false – najprej preverite Request ID v zgodovini |
| 503 | `model_unavailable` | Model je začasno nedostopen | Izberite drug model. Če je X-Should-Retry: true – ponovite po številu sekund, navedenem v Retry-After; če je false – najprej preverite Request ID v zgodovini |
| 503 | `service_unavailable` | Začasna napaka na strani Ailoot | Če je X-Should-Retry: true – ponovite po številu sekund, navedenem v Retry-After; če je false – najprej preverite Request ID v zgodovini |
| 503 | `charge_not_confirmed` | Odgovor ni izdan: bremenitve ni bilo mogoče potrditi; rezervacija je sproščena, sredstva niso bremenjena | Če je X-Should-Retry: true – ponovite po številu sekund, navedenem v Retry-After; če je false – najprej preverite Request ID v zgodovini |
| 504 | `model_timeout` | Model ni odgovoril pravočasno; rezultat se lahko še pojavi | Zahteve ne pošljite ponovno, dokler ne preverite Request ID v zgodovini |

Kode za odgovore modela in preverjanje rezultata (502, 503 in 504) zdaj poimenujejo model ali zahtevo: `model_unavailable`, `model_timeout`, `invalid_model_response`, `incomplete_response`, `charge_not_confirmed` in `result_pending_check`. Če vaša koda primerja `error.code` s prejšnjimi vrednostmi, jih zamenjajte s kodami iz tabele; pri povezovanju starih kod z novimi vam pomaga [podpora](https://ailoot.ai/docs/sl/support/).

## [](https://ailoot.ai/docs/sl/errors/#retry)Kdaj ponoviti zahtevo

- **Najprej preverite X-Should-Retry**: pri `false`, `result_pending_check` ali `model_timeout` ne ponavljajte samodejno. Poiščite Request ID v zgodovini nadzorne plošče: tam sta prikazana rezultat in bremenitev.
- **Ponovitev je varna, ko prejmete X-Should-Retry: true**: počakajte `Retry-After` sekund. Pri 5xx sama koda ni dovolj: rezultat se je morda že pojavil. Najprej preverite zgodovino na nadzorni plošči ali pišite podpori z Request ID. To je posebej pomembno pri slikah, videu, glasbi in dolgih korakih agentov.
- **Ponovitev ne pomaga**: 400, 401, 402, 403, 404 – najprej popravite zahtevo, ključ ali stanje.

SDK-ji OpenAI in Anthropic običajno samodejno ponovijo zahteve pri omrežnih napakah in 5xx. Pri generiranju to izklopite (`max_retries=0`) in preverite `X-Should-Retry` pred novim poskusom. Izgubljen odgovor ne pomeni, da zahteva ni bila izvedena.

## [](https://ailoot.ai/docs/sl/errors/#limits)Omejitve

Pogostost in število sočasnih zahtev sta omejena za celotni račun, ne za posamezni ključ. Ob prekoračitvi prejmete 429 `rate_limit_exceeded` z glavo `Retry-After: 10`. Če je preobremenjen sam model – 503 `model_overloaded` z `Retry-After: 30`. Če potrebujete večjo obremenitev, pišite [podpori](https://ailoot.ai/docs/sl/support/).

Omejitve porabe se določijo pri ključu: skupna omejitev – 402 `api_key_quota_exhausted`, okna 5 ur, 1 dan in 7 dni – 429 `usage_limit_reached`. Več informacij – [Ključi in naslov API-ja](https://ailoot.ai/docs/sl/keys/#key).

## [](https://ailoot.ai/docs/sl/errors/#nvidia)Modeli NVIDIA: čakalna vrsta

Seznam modelov lahko zahtevate tudi pri ničelnem stanju; za generiranje potrebujete sredstva za rezervacijo. Modeli NVIDIA (Nemotron in drugi) delujejo prek skupne čakalne vrste: pri visoki obremenitvi odgovor lahko prispe pozneje ali prejmete napako »model je začasno preobremenjen« z glavo Retry-After – ponovite po navedenem času. Cene so v katalogu, bremenitev pa poteka enako kot pri drugih modelih.

Omejitve velikosti določa model: kontekst (koliko žetonov lahko pošljete) in največja dolžina odgovora. Navedene so v [katalogu](https://ailoot.ai/models/sl/).

## Zgodovina in stroški

[Zgodovina in stroški](https://ailoot.ai/usage) · [GET https://ailoot.ai/api/v1/usage](https://ailoot.ai/docs/sl/cabinet/usage/) · JWT · `Authorization: Bearer $TOKEN`

`JWT ≠ sk-…` · [Prijava in seje](https://ailoot.ai/docs/sl/cabinet/auth/)

Imate še vprašanja? Pošljite Request ID in opis – pomagali vam bomo razjasniti težavo.[Pišite podpori](mailto:support@ailoot.ai)

## Ailoot · Podjetje in njegov portfelj projektov





Ailoot temelji na pridobljenih operativnih izkušnjah, široki bazi strank, stabilni storitvi in stalnem spremljanju KPI.





Podjetje in njegov portfelj projektov: milijoni strank; mesečna prodaja v milijardah.





Ailoot te operativne izkušnje uporablja za dostop prek API do funkcij umetne inteligence v izdelkih strank, agentih, aplikacijah in avtomatizacijah.
