Hibák

Minden hibakód, amellyel ez az API válaszolhat, a HTTP állapotkód, amely hordozza, és hogy mit kell tenni vele kapcsolatban. A boríték OpenAI formájú, egy névtérbe ágyazott kiegészítéssel.

A boríték

error.message egy naplót olvasó személy számára íródott, error.type megnevezi a hiba osztályát, és error.code a stabil azonosító, amelyre elágazhat — az üzenet szövege nem szerződés. Ahol az API strukturált részletekkel rendelkezik (melyik irányelv, melyik végpont, melyik modell), az error.llmeu-ban érkezik, és soha nem helyettesíti a három szabványos mezőt.

{
  "error": {
    "message": "No endpoint satisfies residency eu-owned. Residency is never relaxed silently.",
    "type": "conflict_error",
    "code": "no_endpoint_for_policy",
    "llmeu": { "requested": "llmeu-auto" }
  }
}

A típus a státuszt követi

Az alábbi leképezés az, amelyet az API alkalmaz, ugyanabból a táblából generálva, amely a válaszait felépíti.

HTTP típus
400invalid_request_error
401authentication_error
402insufficient_quota
403permission_error
404not_found_error
409conflict_error
413invalid_request_error
422invalid_request_error
429rate_limit_error
500api_error
501api_error
502api_error
503api_error

Kódok

Minden kód, amely eljuthat egy klienshez. Egy teszt bejárja az API forrását, és elbukik, ha ez a tábla és a kód bármelyik irányban eltér, így egy kód nem található ki itt, és nem adható hozzá ott anélkül, hogy dokumentálva lenne.

HTTP code Mit jelent, és mit kell tenni
400 invalid_request A kérés törzse nem ment át az érvényesítésen.
400 invalid_json A törzs nem érvényes JSON volt.
400 invalid_llmeu Az llmeu objektum nem objektum volt, vagy ismeretlen mezőt tartalmazott.
400 invalid_residency A kért rezidencia nem a négy hosting osztály egyike.
400 invalid_data_class A kért data_class nem a négy osztály egyike.
400 invalid_retention A kért megőrzés nem zero, 24h, 7d vagy 30d.
400 invalid_max_tokens A max_tokens nem pozitív egész szám volt.
400 invalid_stream A stream nem logikai érték volt.
400 invalid_stop A stop nem volt sem sztring, sem sztringek tömbje.
400 invalid_role Egy üzenet szerepköre a system, user, assistant és tool körén kívül esett.
400 invalid_tools A tools vagy a tool_choice hibás formátumú volt.
400 missing_model A model mező kötelező.
400 missing_messages A messages kötelező, és nem lehet üres.
400 missing_input Az input kötelező az embeddingshez.
400 missing_name A name kötelező.
401 invalid_api_key A kulcs hiányzik, ismeretlen, visszavont vagy lejárt.
402 budget_exceeded A szervezet napi kerete elfogyott. Növelje a max_usd_per_day értékét, vagy várja meg, amíg az időablak továbbfordul.
403 api_key_required A kérés konzolmunkamenetet használt. Hozzon létre API-kulcsot, és küldje azt helyette.
403 insufficient_scope A kulcs érvényes, de hiányzik a végponthoz szükséges hatókör.
403 no_organization A hitelesítő adat nincs szervezethez csatolva.
403 model_denied A szervezet szabályzata megtiltja ezt a modellt vagy annak szolgáltatóját.
403 policy_violation A kérés megsérti a szervezeti irányelv egy szabályát.
403 retention_exceeds_policy A kért megőrzés hosszabb, mint amit a szabályzat engedélyez. Ezt a rendszer a kérés bármely más jellemzője előtt ellenőrzi.
403 data_class_not_allowed A kérés data_class mezője nem a szabályzat által engedélyezettek egyike.
404 model_not_found Nincs ilyen modell ehhez a szervezethez.
404 hosted_unavailable A modell szerepel a katalógusban, de nincs az LLM EU-n üzemeltetve, ezért nem hívható.
404 not_found Az útvonal létezik, de az objektum nem.
404 unknown_route Ezen az elérési úton nincs útvonal csatlakoztatva. Minden OpenAI végpont, amely nincs a Végpontok alatt felsorolva, ezt adja válaszul.
404 policy_not_found Az llmeu policy_id mezője nem ehhez a szervezethez tartozik.
409 no_endpoint_for_policy Semmi sem teljesíti egyszerre a szabályzatot és a rezidenciát, és egyik sem enyhül csendben.
409 not_a_text_model A megnevezett modell nem tud szöveget generálni: beszédfelismerő, beágyazó vagy újrarangsoroló modell.
409 conflict A kérés ütközik az objektum aktuális állapotával.
413 request_too_large A törzs meghaladta a végpont méretkorlátját.
429 rate_limit_exceeded Elérte a korlátot a sebességkorlát-táblázatból. Az üzenet megnevezi az ablak visszaállítási idejét.
500 internal_error Váratlan hiba a mi oldalunkon.
501 not_implemented A végpont szándékosan nincs felkínálva, vagy a kért képesség nem létezik ezen a telepítésen.
501 retention_not_implemented A szabályzat nullától eltérő megőrzést tesz lehetővé, és csak a nulla van implementálva, ezért a kérés elutasításra kerül a tárolás helyett.
501 unsupported_n Az 1-nél nagyobb n nem támogatott.
502 upstream_error A failover után egyetlen végpont sem tudta kiszolgálni a kérést. A nyomkövetés minden kísérletet rögzít.
502 stream_failed A stream meghibásodott, miután már elindult.

A no_endpoint_for_policy a termék működését jelenti

A 409 ezzel a kóddal azt jelenti, hogy a szabályzat és a kérés együtt nem enged meg egyetlen végpontot sem, és az útválasztó megtagadta, hogy bármelyiket is csendben enyhítse. Ez nem átmeneti: ha a kérést, a szabályzatot vagy a rezidenciát változatlanul hagyva újrapróbálja, ugyanígy meghiúsul. A hiba tartalmazza a kért rezidenciát, a nyomkövetés pedig rögzíti, hogy miért lett elutasítva az egyes végpontok.

Hibák egy streamen belül

Egy streamelési kérés, amely a fejlécek elküldése után hiúsul meg, a hibát egy záró SSE-keretként írja ki, majd a lezárót, így a formátumot követő kliens sikertelenséget lát a csonkolt siker helyett.

data: {"error":{"message":"No endpoint could start the stream.","type":"api_error","code":"upstream_error"}}

data: [DONE]