Virheet
Jokainen virhekoodi, jolla tämä API voi vastata, sen mukana tuleva HTTP-tila ja mitä sille voi tehdä. Kuori on OpenAI:n muotoinen, ja siinä on yksi nimiavaruudellinen lisäys.
Vastauskuori
error.message on kirjoitettu lokia lukevalle henkilölle, error.type nimeää virheluokan ja error.code on vakaa tunniste, jonka perusteella haarautua — viestin teksti ei ole sopimus. Kun API:lla on jäsenneltyä lisätietoa (mikä käytäntö, mikä päätepiste, mikä malli), se saapuu error.llmeu-kentässä eikä koskaan korvaa kolmea vakiokenttää.
{
"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" }
}
}
tyyppi seuraa tilaa
Alla oleva vastaavuus on se, jota API soveltaa, renderöitynä samasta taulukosta, joka rakentaa sen vastaukset.
| HTTP | tyyppi |
|---|---|
| 400 | invalid_request_error |
| 401 | authentication_error |
| 402 | insufficient_quota |
| 403 | permission_error |
| 404 | not_found_error |
| 409 | conflict_error |
| 413 | invalid_request_error |
| 422 | invalid_request_error |
| 429 | rate_limit_error |
| 500 | api_error |
| 501 | api_error |
| 502 | api_error |
| 503 | api_error |
Koodit
Jokainen koodi, joka voi päätyä asiakkaalle. Testi käy läpi API:n lähdekoodin ja epäonnistuu, kun tämä taulukko ja koodi ovat ristiriidassa kumpaan tahansa suuntaan, joten koodia ei voi keksiä tähän tai lisätä sinne ilman dokumentointia.
| HTTP | code | Mitä se tarkoittaa ja mitä tehdä |
|---|---|---|
| 400 | invalid_request | Pyynnön runko ei läpäissyt validointia. |
| 400 | invalid_json | Runko ei ollut kelvollista JSONia. |
| 400 | invalid_llmeu | llmeu-objekti ei ollut objekti tai sisälsi tuntemattoman kentän. |
| 400 | invalid_residency | Pyydetty sijainti ei ole yksi neljästä isännöintiluokasta. |
| 400 | invalid_data_class | Pyydetty data_class ei ole yksi neljästä luokasta. |
| 400 | invalid_retention | Pyydetty säilytysaika ei ole zero, 24h, 7d tai 30d. |
| 400 | invalid_max_tokens | max_tokens ei ollut positiivinen kokonaisluku. |
| 400 | invalid_stream | stream ei ollut totuusarvo. |
| 400 | invalid_stop | stop ei ollut merkkijono eikä merkkijonotaulukko. |
| 400 | invalid_role | Viestissä oli rooli, joka ei ole system, user, assistant tai tool. |
| 400 | invalid_tools | tools tai tool_choice oli virheellisesti muotoiltu. |
| 400 | missing_model | model-kenttä on pakollinen. |
| 400 | missing_messages | messages on pakollinen eikä se saa olla tyhjä. |
| 400 | missing_input | input on pakollinen upotuksia varten. |
| 400 | missing_name | name on pakollinen. |
| 401 | invalid_api_key | Avain puuttuu, on tuntematon, peruutettu tai vanhentunut. |
| 402 | budget_exceeded | Organisaation päiväbudjetti on käytetty. Nosta max_usd_per_day-arvoa tai odota, että aikaikkuna vaihtuu. |
| 403 | api_key_required | Pyyntö käytti konsoli-istuntoa. Luo API-avain ja lähetä se sen sijaan. |
| 403 | insufficient_scope | Avain on kelvollinen, mutta siitä puuttuu tämän päätepisteen vaatima käyttöalue. |
| 403 | no_organization | Tunnistetieto ei ole liitetty organisaatioon. |
| 403 | model_denied | Organisaation käytäntö kieltää tämän mallin tai sen tarjoajan. |
| 403 | policy_violation | Pyyntö rikkoo organisaation käytännön sääntöä. |
| 403 | retention_exceeds_policy | Pyydetty säilytysaika on pidempi kuin käytäntö sallii. Tämä tarkistetaan ennen mitään muuta pyyntöön liittyvää. |
| 403 | data_class_not_allowed | Pyynnön data_class ei ole sellainen, jonka käytäntö sallii. |
| 404 | model_not_found | Tälle organisaatiolle ei ole tällaista mallia. |
| 404 | hosted_unavailable | Malli on luettelossa, mutta sitä ei isännöidä LLM EU:ssa, joten sitä ei voi kutsua. |
| 404 | not_found | Reitti on olemassa, mutta kohdetta ei ole. |
| 404 | unknown_route | Tähän polkuun ei ole asennettu reittiä. Jokainen OpenAI-päätepiste, jota ei ole lueteltu Päätepisteet-osiossa, vastaa tällä. |
| 404 | policy_not_found | llmeu-kentän policy_id ei kuulu tälle organisaatiolle. |
| 409 | no_endpoint_for_policy | Mikään ei täytä käytäntöä ja sijaintia yhdessä, eikä kumpaakaan lievennetä hiljaisesti. |
| 409 | not_a_text_model | Nimetty malli ei voi tuottaa tekstiä: se on puheentunnistus-, upotus- tai uudelleenjärjestelijämalli. |
| 409 | conflict | Pyyntö on ristiriidassa objektin nykyisen tilan kanssa. |
| 413 | request_too_large | Runko ylitti päätepisteen kokorajoituksen. |
| 429 | rate_limit_exceeded | Nopeusrajoitustaulukon raja saavutettiin. Viesti ilmoittaa ikkunan nollautumisajan. |
| 500 | internal_error | Odottamaton virhe meidän puolellamme. |
| 501 | not_implemented | Päätepistettä ei tarjota tarkoituksella, tai pyydettyä ominaisuutta ei ole tässä käyttöönotossa. |
| 501 | retention_not_implemented | Käytäntö sallii muun säilytyksen kuin nollan, ja vain nolla on toteutettu, joten pyyntö hylätään tallentamisen sijaan. |
| 501 | unsupported_n | n suurempi kuin 1 ei ole tuettu. |
| 502 | upstream_error | Yksikään päätepiste ei voinut palvella pyyntöä vikasietotilan jälkeen. Jäljitys tallentaa jokaisen yrityksen. |
| 502 | stream_failed | Virta epäonnistui sen jo alettua. |
no_endpoint_for_policy on tuotteen toimintaa
409 tällä koodilla tarkoittaa, että käytäntö ja pyyntö yhdessä eivät salli yhtään päätepistettä, eikä reititin suostunut lieventämään kumpaakaan hiljaisesti. Se ei ole tilapäinen: uudelleenyritys ilman pyynnön, käytännön tai sijainnin muuttamista epäonnistuu samalla tavalla. Virhe sisältää pyydetyn sijainnin, ja jäljitys tallentaa, miksi kukin päätepiste hylättiin.
Virheet virran sisällä
Suoratoistopyyntö, joka epäonnistuu otsikoiden lähettämisen jälkeen, kirjoittaa virheen viimeisenä SSE-kehyksenä ja sitten lopettimen, joten formaattia noudattava asiakas näkee epäonnistumisen katkaistun onnistumisen sijaan.
data: {"error":{"message":"No endpoint could start the stream.","type":"api_error","code":"upstream_error"}}
data: [DONE]