Developer guide
Удостоверяване с API ключ
Заглавка, в която се поставя API ключът, и base URL, който се задава в SDK
Тази страница обяснява как да се удостоверите в шлюза на CLEVI с API ключ.
И двата съвместими с OpenAI и съвместими с Anthropic пътя използват един ключ за удостоверяване,
но допустимата заглавка, в която се поставя ключът, и base URL, който се задава в SDK, се различават според спецификацията.
Заглавка за удостоверяване
И двете съвместими спецификации използват един API ключ за удостоверяване. Ключът се издава от екрана за API ключове в конзолата, където можете също да го оттеглите и да управлявате обхвата му на използване.
| Заглавка | Съвместим с OpenAI | Съвместим с Anthropic |
|---|---|---|
| X-API-Key: <ключ> | Разрешено | Разрешено |
| Authorization: Bearer <ключ> | Разрешено | Разрешено |
| Authorization: <ключ> (без Bearer) | Отхвърлено | Разрешено |
Името на заглавката не различава малки и главни букви. x-api-key, изпращано от Anthropic SDK, също работи без промяна.
base URL
Използваният досега SDK ще работи без промяна, ако замените само base URL със следния адрес. Двата адреса се различават по това дали включват /v1.
| Спецификация | base URL | Правила за пътищата |
|---|---|---|
| Съвместим с OpenAI | https://platform.clevi.net/api/v2/aiservice/openai/v1 | Включете /v1 в base URL. |
| Съвместим с Anthropic | https://platform.clevi.net/api/v2/aiservice/anthropic | Anthropic SDK автоматично добавя /v1 към пътя, затова адресът завършва преди /v1. |
Проверка на удостоверяването
Можете веднага да проверите дали сте удостоверени, като въведете ключа и base URL и заявите списъка с модели. Трите примера по-долу изпълняват една и съща заявка чрез curl, OpenAI SDK и Anthropic SDK.
curl https://platform.clevi.net/api/v2/aiservice/openai/v1/models \
-H "X-API-Key: sk-..."
curl https://platform.clevi.net/api/v2/aiservice/anthropic/v1/models \
-H "Authorization: Bearer sk-..." \
-H "anthropic-version: 2023-06-01"from openai import OpenAI
client = OpenAI(
api_key="sk-...",
base_url="https://platform.clevi.net/api/v2/aiservice/openai/v1",
)
for model in client.models.list():
print(model.id)from anthropic import Anthropic
client = Anthropic(
api_key="sk-...",
base_url="https://platform.clevi.net/api/v2/aiservice/anthropic",
)
for model in client.models.list(limit=20).data:
print(model.id)На мястото на sk-... поставете ключа, издаден от екрана за API ключове.
- Ако отговорът е 200, удостоверяването е успешно. В data се съдържа списъкът с модели, които можете да извиквате с този ключ.
- Ако отговорът е 401, проверете в реда, посочен в раздела за неуспешно удостоверяване по-долу.
Заглавки, използвани заедно
Всички са незадължителни. За проследяване на проблеми е препоръчително да добавите X-Request-Id.
| Заглавка | Предназначение | Ако бъде пропусната |
|---|---|---|
| X-Request-Id | Идентификатор за проследяване на заявката. При съвместими с Anthropic отговори се връща като заглавка request-id. | Издава се от сървъра. |
| X-Region-Code | Регион на извикването | global. |
| X-Product-Sku (може да се зададе и чрез заявъчния параметър product_sku) | Директно задава Product SKU, което да се използва за таксуване. Заглавката има предимство пред заявъчния параметър и се използва основно при гласови пътища. | Необходим е при гласови пътища. audio/speech и audio/transcriptions избират Product чрез model в тялото на заявката. |
| anthropic-version / anthropic-beta | Предава се без промяна при съвместими с Anthropic пътища. | Версията е 2023-06-01. |
Неуспешно удостоверяване
Ако не изпратите ключ или изпратите изтекъл или анулиран ключ, се връща 401. При извикване без ключ по съвместим с OpenAI път се връща тялото по-долу, а error.type при съвместим с Anthropic път е authentication_error.
{
"error": {
"message": "API key is required.",
"type": "invalid_request_error"
}
}- Проверете състоянието на ключа на екрана за API ключове. Ако е изтекъл или анулиран, издайте нов.
- Проверете дали името на заглавката е X-API-Key или Authorization.
- Ако използвате Authorization по съвместим с OpenAI път, проверете префикса Bearer.
