Developer guide
Коды памылак
Дзеянні і правілы паўторных спроб для кожнага кода стану
На гэтай старонцы прыведзены коды стану, якія вяртае шлюз, іх значэнні і дзеянні для кожнага кода.
Калі апстрэм вяртае код 4xx·5xx, гэты код перадаецца без змен, а ў астатніх выпадках прымяняецца табліца ніжэй.
Таксама апісаны фармат цела памылкі для двух сумяшчальных спецыфікацый, правілы error.type у сумяшчальнасці з Anthropic, а таксама экран кансолі для праверкі лімітаў і выкарыстання.
Код стану
| Код | Значэнне | Дзеянне |
|---|---|---|
| 400 | Памылка значэння запыту. У спісе мадэляў, сумяшчальных з Anthropic, limit выходзіць за межы ад 1 да 1000, або зроблена спроба працягнуць захаваны адказ праз GET /responses/{responseId}?stream=true | Выпраўце значэнне, каб яно было ў дапушчальным дыяпазоне. Захаваныя адказы атрымлівайце без stream. |
| 401 | Ключ адсутнічае, пратэрмінаваны або ануляваны | На старонцы API-ключоў праверце стан ключа, а таксама назву загалоўка і прэфікс Bearer. |
| 403 | Няма дазволу на доступ да мадэлі, перавышаны ліміт выкарыстання, недастаткова крэдытаў або вы не з'яўляецеся ўладальнікам голасу | error.message паказвае прычыну. Лічбы можна паглядзець на экране ў раздзеле праверкі лімітаў і выкарыстання ніжэй. |
| 404 | Мадэль не існуе або недаступная для гэтага ключа (у тым ліку мадэлі, падтрымка якіх завершана), шлях не існуе або скончыўся 3-дзённы перыяд захоўвання выніку CleviDrive | Спачатку праверце спіс мадэляў, даступных для выкліку, праз GET /models. Шлях супастаўце з табліцай на старонцы «Выкарыстанне API». |
| 408 · 409 · 413 | Тайм-аўт апстрэму, перагрузка або перавышэнне памеру запыту. Для галасавых і voice-шляхоў тайм-аўт складае 5 хвілін, максімальны памер запыту — 28 MiB | Калі ў 409 ёсць Retry-After, пачакайце пазначаны час. Запыты з кодам 413 падзяліце на часткі. |
| 429 | Апстрым-правайдар усталяваў абмежаванне хуткасці | Калі ёсць Retry-After, выконвайце яго значэнне; калі няма — паўтарыце спробу з экспаненцыяльнай затрымкай. |
| 5xx | Часовая памылка шлюза або апстрэму (уключаючы 503) | Паўтарыце спробу з экспаненцыяльнай затрымкай. Калі памылка паўтараецца, паведаміце пра гэта праз даведку і кантакты, указаўшы X-Request-Id. |
Паўторная спроба
Шлюз не стварае ўласны 429, не паўтарае запыты апстрэму незаўважна і не ставіць іх у чаргу.
Чаканне і паўторныя спробы выконвае кліент.
| Код | Час чакання | Дзеянне пасля гэтага |
|---|---|---|
| 409 | Калі ёсць Retry-After, чакаем гэты час | Паўторна адпраўляем той жа запыт. |
| 429 | Калі ёсць Retry-After, чакаем гэты час, а калі няма — выкарыстоўваем экспанентную затрымку | Паўторна адпраўляем той жа запыт. |
| 5xx | Экспанентная затрымка | Калі паўтараецца, звяртаемся ў службу падтрымкі. |
| 413 | Без чакання | Падзяляем запыт на часткі. |
Цела памылкі
Фармат цела памылкі адрозніваецца ў залежнасці ад спецыфікацыі. Памылкі ад апстрыма перадаюцца пасля ачысткі з захаваннем толькі паведамлення; стэк і ўнутраныя палі не перадаюцца.
Гэта цела адказу маршруту, сумяшчальнага з OpenAI.
{
"error": {
"message": "API key is required.",
"type": "invalid_request_error"
}
}Гэта цела адказу маршруту, сумяшчальнага з Anthropic. Значэнне error.type вызначаецца кодам стану.
{
"type": "error",
"error": {
"type": "authentication_error",
"message": "..."
},
"request_id": "rqid..."
}| Код стану | error.type |
|---|---|
| 400 | invalid_request_error |
| 401 | authentication_error |
| 403 | permission_error |
| 404 | not_found_error |
| 413 | request_too_large |
| 429 | rate_limit_error |
| 529 | overloaded_error |
| Іншыя коды | api_error |
Праверка лімітаў і выкарыстання
Значэнні лімітаў адрозніваюцца для кожнай працоўнай прасторы. Праверце прычыну 403 у error.message, а затым паглядзіце значэнні на экранах ніжэй.
| Што праверыць | Экран кансолі |
|---|---|
| Ліміт, усталяваны для маёй працоўнай прасторы | Прызначаны ліміт выкарыстання ў аглядзе |
| Дыяпазон, дазволены планам, і рэшта | План і крэдыты |
| Фактычнае выкарыстанне (колькасць выклікаў па мадэлях і ключах, разліковыя спісаныя крэдыты) | Выкарыстанне |
| Стан ключа (ці скончыўся тэрмін дзеяння і ці быў ён адкліканы) | API-ключы |
