Developer guide
Mit einem API-Schlüssel authentifizieren
Header, in den der API-Schlüssel eingetragen wird, und die im SDK festzulegende base URL
Auf dieser Seite wird beschrieben, wie Sie sich beim CLEVI-Gateway mit einem API-Schlüssel authentifizieren.
Für den OpenAI-kompatiblen und den Anthropic-kompatiblen Pfad erfolgt die Authentifizierung jeweils mit einem einzigen Schlüssel.
Der zulässige Header für den Schlüssel und die im SDK festzulegende base URL unterscheiden sich je nach Spezifikation.
Authentifizierungs-Header
Beide kompatiblen Spezifikationen verwenden zur Authentifizierung einen einzigen API-Schlüssel. Der Schlüssel wird in der API-Schlüssel-Ansicht der Konsole ausgestellt. In derselben Ansicht können Sie ihn widerrufen und seinen Nutzungsumfang verwalten.
| Header | OpenAI-kompatibel | Anthropic-kompatibel |
|---|---|---|
| X-API-Key: <키> | Zulässig | Zulässig |
| Authorization: Bearer <키> | Zulässig | Zulässig |
| Authorization: <키> (ohne Bearer) | Abgelehnt | Zulässig |
Bei Header-Namen wird nicht zwischen Groß- und Kleinschreibung unterschieden. Auch das vom Anthropic SDK gesendete x-api-key funktioniert unverändert.
base URL
Bei bereits verwendeten SDKs müssen Sie lediglich die base URL auf die unten angegebene Adresse ändern. Die beiden Adressen unterscheiden sich darin, ob sie /v1 enthalten.
| Spezifikation | base URL | Pfadregel |
|---|---|---|
| OpenAI-kompatibel | https://platform.clevi.net/api/v2/aiservice/openai/v1 | base URL enthält /v1. |
| Anthropic-kompatibel | https://platform.clevi.net/api/v2/aiservice/anthropic | Das Anthropic SDK fügt /v1 selbst zum Pfad hinzu, daher endet die URL vor /v1. |
Authentifizierung überprüfen
Wenn Sie den Schlüssel und die base URL eintragen und die Modellliste abrufen, können Sie sofort feststellen, ob die Authentifizierung erfolgreich war. Die drei folgenden Beispiele führen dieselbe Abfrage mit curl, dem OpenAI SDK und dem Anthropic SDK durch.
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)Anstelle von sk-... setzen Sie den in der API-Schlüssel-Ansicht ausgestellten Schlüssel ein.
- Bei einer Antwort mit Status 200 war die Authentifizierung erfolgreich. data enthält die Liste der Modelle, die mit diesem Schlüssel aufgerufen werden können.
- Bei einer Antwort mit Status 401 prüfen Sie die Punkte in der Reihenfolge des Abschnitts „Authentifizierung fehlgeschlagen“.
Gemeinsam verwendete Header
Alle Angaben sind optional. Für die Fehlerverfolgung empfiehlt es sich jedoch, X-Request-Id mitzusenden.
| Header | Verwendungszweck | Wenn weggelassen |
|---|---|---|
| X-Request-Id | Kennung zur Anfrageverfolgung. Wird bei Anthropic-kompatiblen Antworten als request-id-Header zurückgegeben. | Wird vom Server vergeben. |
| X-Region-Code | Region des Aufrufs | Ist global. |
| X-Product-Sku (auch über die Abfrage product_sku möglich) | Gibt die Product SKU für die Abrechnung direkt an. Der Header hat Vorrang vor der Abfrage und wird hauptsächlich für Sprach- und Voice-Pfade verwendet. | Für Voice-Pfade erforderlich. Bei audio/speech und audio/transcriptions wird Product über model im Text ausgewählt. |
| anthropic-version / anthropic-beta | Wird in Anthropic-kompatiblen Pfaden unverändert weitergegeben. | Die Version ist 2023-06-01. |
Authentifizierung fehlgeschlagen
Wenn kein Schlüssel vorhanden ist oder ein abgelaufener bzw. widerrufener Schlüssel gesendet wird, lautet die Antwort 401. Wenn in einem OpenAI-kompatiblen Pfad ohne Schlüssel aufgerufen wird, wird der folgende Text zurückgegeben. Der error.type im Anthropic-kompatiblen Pfad lautet authentication_error.
{
"error": {
"message": "API key is required.",
"type": "invalid_request_error"
}
}- Überprüfen Sie den Schlüsselstatus auf der API-Schlüsselseite. Stellen Sie einen neuen Schlüssel aus, wenn der aktuelle abgelaufen oder widerrufen ist.
- Überprüfen Sie, ob der Header X-API-Key oder Authorization heißt.
- Wenn Sie im OpenAI-kompatiblen Pfad Authorization verwenden, überprüfen Sie das Präfix Bearer.
