Developer guide
Pag-authenticate gamit ang API key
Header nga butangan sa API key ug base URL nga i-set sa SDK
Ang CLEVI gateway naga-authenticate sa OpenAI-compatible nga ruta ug Anthropic-compatible nga ruta gamit ang usa ka API key.
Duha ka value ang i-set sa kliyente: ang authentication header nga magdala sa key ug ang base URL sa SDK. Lahi ang gitugotan nga porma sa header ug base URL depende sa espesipikasyon.
Human makompleto ang setup, mahimo nimong susihon dayon kung na-authenticate ba pinaagi sa pagkuha sa listahan sa mga modelo.
Kung mapakyas ang authentication, ibalik ang 401; kung malampuson ang authentication apan dili matuman ang kondisyon sa permiso o limitasyon, ibalik ang 403.
I-isyu ang API key gikan sa API key screen sa console. Gikan usab sa samang screen, mahimo nimong dumalahan ang pag-revoke sa key ug ang sakop sa paggamit niini.
Authentication header
Sa duha ka espesipikasyon, ibutang ang API key sa usa ka request header. Gamita ang usa sa X-API-Key header o Authorization header; ang gitugotan nga porma magdepende sa espesipikasyon.
| Header | OpenAI-compatible | Anthropic-compatible |
|---|---|---|
| X-API-Key: <키> | Gitugotan | Gitugotan |
| Authorization: Bearer <키> | Gitugotan | Gitugotan |
| Authorization: <키> (walay Bearer) | Gisalikway | Gitugotan |
Kung gamiton ang Authorization header sa OpenAI-compatible nga ruta, gikinahanglan ang Bearer prefix. Kung ipadala ang key ra nga walay prefix, isalikway sa gateway ang request.
Dili case-sensitive ang ngalan sa header, busa molihok usab diretso ang x-api-key header nga ipadala sa Anthropic SDK. Kung itakda ang duha ka header, ang X-API-Key value ang unahon.
base URL
Ang mga SDK nga imong gigamit kaniadto magpadayon sa pagtrabaho kung ilisan lang ang base URL sa mga address sa ubos. Lahi ang duha ka address kung apil ba niini ang /v1, busa itakda ang hustong address sumala sa espesipikasyon.
| Espesipikasyon | base URL | Lagda sa ruta |
|---|---|---|
| OpenAI-compatible | https://platform.clevi.net/api/v2/aiservice/openai/v1 | Iapil ang /v1 sa base URL. |
| Anthropic-compatible | https://platform.clevi.net/api/v2/aiservice/anthropic | Ang Anthropic SDK mismo ang modugang sa /v1 sa request path, busa matapos kini sa wala pa ang /v1. |
Pagsusi sa authentication
Human sa pag-set sa yawe ug base URL, mahimo nimong susihon ang kahimtang sa autentikasyon pinaagi sa pagkuha sa lista sa mga modelo. Ang mga pananglitan sa ubos nagpadagan sa parehas nga pagkuha gamit ang curl, OpenAI SDK, ug Anthropic SDK. Ilisi ang sk-... og yawe nga gi-isyu sa panid sa API key.
Kung magkuha gamit ang curl, i-specify ang kompleto nga dalan hangtod sa /v1/models alang sa duha ka espesipikasyon. Ang unang command mogamit sa X-API-Key header alang sa OpenAI-compatible nga dalan, samtang ang ikaduhang command mogamit sa Authorization header alang sa Anthropic-compatible nga dalan.
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"Alang sa OpenAI SDK, i-specify ang adres nga naglakip sa /v1 sa base_url.
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)Alang sa Anthropic SDK, i-specify ang base_url nga matapos sa wala pa ang /v1.
Alang sa autentikasyon, gamita direkta ang x-api-key header nga gipadala sa SDK.
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)Sa bisan unsang pananglitan, kung 200 ang tubag, malampuson ang autentikasyon, ug ang data sa tubag adunay lista sa mga modelo nga mahimong tawagan gamit kini nga yawe. Kung 401, susiha ang hinungdan sumala sa han-ay sa sunod nga seksiyon.
Napakyas ang autentikasyon
Kung walay yawe o usa ka yawe nga na-expire o gibawi ang ipadala, ibalik ang 401. Kung motawag nga walay yawe sa OpenAI-compatible nga dalan, ibalik ang lawas sa tubag sa ubos; sa Anthropic-compatible nga dalan, ang error.type kay authentication_error.
{
"error": {
"message": "API key is required.",
"type": "invalid_request_error"
}
}Kung makadawat og 401, susiha kini sa mosunod nga han-ay.
- Susiha ang kahimtang sa yawe sa panid sa API key. Kung na-expire o gibawi ang yawe, pag-isyu og bag-o.
- Susiha kung X-API-Key o Authorization ang ngalan sa header.
- Kung mogamit og Authorization header sa OpenAI-compatible nga dalan, susiha kung adunay Bearer prefix.
Human sa pag-usab, padagana pag-usab ang pagkuha sa lista sa mga modelo sa seksiyon sa pagsusi sa autentikasyon aron mapamatud-an nga 200 ang madawat.
Mga header nga gamiton uban niini
Ang tanang mosunod nga header opsyonal. Aron masubay ang mga problema, among girekomenda nga itakda ang X-Request-Id.
| Header | Gamit | Kung dili iapil |
|---|---|---|
| X-Request-Id | Identifikador kini alang sa pagsubay sa hangyo. Sa mga ruta nga kompatible sa Anthropic, ibalik ang parehas nga bili sa request-id header sa tubag. | Ang server ang mo-isyu niini. |
| X-Region-Code | Nagtino kini sa rehiyon sa tawag. | global kini. |
| X-Product-Sku (mahimo usab itino pinaagi sa query nga product_sku) | Direktang nagtino kini sa Product SKU nga gamiton alang sa pagsingil. Mas prayoridad ang header kaysa sa query ug kasagarang gigamit sa mga ruta sa tingog ug voice. | Dili kini mahimong wala sa mga ruta sa voice. Ang audio/speech ug audio/transcriptions mopili sa Product pinaagi sa model sa lawas sa hangyo. |
| anthropic-version / anthropic-beta | Ipasa kini nga walay kausaban sa mga ruta nga kompatible sa Anthropic. | Ang bersyon mao ang 2023-06-01. |
Kung balik-balik ang 5xx, palihog ipahibalo kini pinaagi sa tabang ug pagkontak, uban sa X-Request-Id. Kung ikaw mismo ang nagtino sa bili, mahimo kini nga direktang itandi sa rekord sa kliyente.