Developer guide
Verifieer met ’n API-sleutel
Die kopskrif waarin die API-sleutel geplaas word en die base URL wat in die SDK gestel moet word
Die CLEVI-gateway verifieer die OpenAI-versoenbare roete en die Anthropic-versoenbare roete met een API-sleutel.
Die twee waardes wat op die kliënt gestel moet word, is die verifikasiekopskrif wat die sleutel bevat en die SDK se base URL. Die toegelate kopskrifformaat en base URL verskil volgens die spesifikasie.
Nadat die opstelling voltooi is, kan jy onmiddellik bevestig of verifikasie geslaag het deur die modelllys op te haal.
As verifikasie misluk, word 401 teruggestuur. As verifikasie slaag maar daar nie aan die toestemmings- of limietvoorwaardes voldoen word nie, word 403 teruggestuur.
Reik die API-sleutel op die API-sleutelskerm in die konsole uit. Op dieselfde skerm kan jy die sleutel herroep en die gebruiksgebied daarvan bestuur.
Verifikasiekopskrif
Albei spesifikasies plaas die API-sleutel in een versoekkopskrif. Gebruik óf die X-API-Key-kopskrif óf die Authorization-kopskrif; die toegelate formaat verskil volgens die spesifikasie.
| Kopskrif | OpenAI-versoenbaar | Anthropic-versoenbaar |
|---|---|---|
| X-API-Key: <키> | Beskikbaar | Beskikbaar |
| Authorization: Bearer <키> | Beskikbaar | Beskikbaar |
| Authorization: <키> (sonder Bearer) | Verwerp | Beskikbaar |
Wanneer jy die Authorization-kopskrif in die OpenAI-versoenbare roete gebruik, is die Bearer-voorvoegsel nodig. As jy slegs die sleutel sonder die voorvoegsel stuur, sal die gateway die versoek verwerp.
Kopskrifname is nie hooflettergevoelig nie, dus werk die x-api-key-kopskrif wat deur die Anthropic SDK gestuur word ook onveranderd. As albei kopskrifte gespesifiseer word, kry die X-API-Key-waarde voorkeur.
base URL
Bestaande SDK’s wat jy reeds gebruik, kan onveranderd gebruik word deur slegs die base URL na die onderstaande adres te verander. Die twee adresse verskil daarin of hulle /v1 insluit, dus spesifiseer die adres wat by die spesifikasie pas onveranderd.
| Spesifikasie | base URL | Padreël |
|---|---|---|
| OpenAI-versoenbaar | https://platform.clevi.net/api/v2/aiservice/openai/v1 | Sluit /v1 by die base URL in. |
| Anthropic-versoenbaar | https://platform.clevi.net/api/v2/aiservice/anthropic | Dit eindig vóór /v1, omdat die Anthropic SDK /v1 direk by die versoekpad voeg. |
Verifieer verifikasie
Nadat jy die sleutel en base URL gestel het, kan jy die modellys navraag doen om te bevestig of verifikasie geslaag het. Die voorbeelde hieronder voer dieselfde navraag met curl, OpenAI SDK en Anthropic SDK uit. Vervang sk-... met die sleutel wat op die API-sleutelskerm uitgereik is.
Wanneer jy met curl navraag doen, spesifiseer die volledige pad tot by /v1/models vir albei spesifikasies. Die eerste opdrag gebruik die X-API-Key-kopskrif vir die OpenAI-versoenbare pad, en die tweede opdrag gebruik die Authorization-kopskrif vir die Anthropic-versoenbare pad.
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"Vir OpenAI SDK spesifiseer jy ’n adres wat /v1 by base_url insluit.
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)Vir Anthropic SDK spesifiseer jy ’n adres wat by base_url eindig vóór /v1.
Gebruik die x-api-key-kopskrif wat deur die SDK gestuur word onveranderd vir verifikasie.
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)As die antwoord 200 is, beteken dit vir enige voorbeeld dat verifikasie geslaag het, en data in die antwoord bevat die lys modelle wat met hierdie sleutel opgeroep kan word. As dit 401 is, kontroleer die oorsaak volgens die volgorde in die volgende afdeling.
Verifikasie het misluk
As jy ’n ontbrekende, vervalde of herroepe sleutel stuur, word 401 teruggestuur. Wanneer jy die OpenAI-versoenbare pad sonder ’n sleutel oproep, word die liggaam hieronder teruggestuur; in die Anthropic-versoenbare pad is error.type authentication_error.
{
"error": {
"message": "API key is required.",
"type": "invalid_request_error"
}
}As jy 401 ontvang, kontroleer die volgende in volgorde.
- Kontroleer die sleutelstatus op die API-sleutelskerm. As die sleutel verval of herroep is, reik ’n nuwe een uit.
- Kontroleer of die kopskrifnaam X-API-Key of Authorization is.
- As jy die Authorization-kopskrif in die OpenAI-versoenbare pad gebruik, kontroleer of dit die Bearer-voorvoegsel bevat.
Voer die modellysnavraag in die afdeling oor die bevestiging van verifikasie weer uit nadat jy dit reggestel het, en bevestig dat 200 teruggestuur word.
Gedeelde kopskrifte
Al die volgende kopskrifte is opsioneel. Ons beveel aan dat jy X-Request-Id stel sodat probleme opgespoor kan word.
| Kopskrif | Doel | As dit weggelaat word |
|---|---|---|
| X-Request-Id | Identifiseerder vir die nasporing van versoeke. Die Anthropic-versoenbare roete gee dieselfde waarde in die request-id-kopskrif van die antwoord terug. | Dit word deur die bediener uitgereik. |
| X-Region-Code | Spesifiseer die streek vir die oproep. | Dit is global. |
| X-Product-Sku (kan ook met die navraagparameter product_sku gespesifiseer word) | Spesifiseer die Product SKU wat vir fakturering gebruik moet word, direk. Die kopskrif geniet voorkeur bo die navraagparameter en word hoofsaaklik vir stem- en voice-roetes gebruik. | Dit kan nie in voice-roetes weggelaat word nie. audio/speech en audio/transcriptions kies die Product met model in die versoekliggaam. |
| anthropic-version / anthropic-beta | Word onveranderd aan die Anthropic-versoenbare roete deurgegee. | Die weergawe is 2023-06-01. |
As 5xx-foute herhaaldelik voorkom, laat weet ons via die hulpsentrum en navrae, saam met X-Request-Id. As jy die waarde direk gespesifiseer het, kan dit onmiddellik met die kliëntrekords vergelyk word.