Kernleitfäden
Migrationsleitfäden
Verschieben Sie OpenAI-, Anthropic-, Gemini- und Media-Workloads mit kleinen, produktionssicheren Änderungen zu TokenLab.
TokenLab ist ein Multi-Format-System: Sie können OpenAI-kompatible Clients, Anthropic-native Messages-Aufrufe, Gemini-native REST-Aufrufe und Media-Endpunkte in ihrer ursprünglichen Form beibehalten. Die sicherste Migration besteht nicht darin, jeden Workload in ein universelles Format zu übersetzen. Wählen Sie den Pfad, der das für Ihre Anwendung erforderliche Verhalten unterstützt.
Routen-Mapping
| Bestehender Workload | TokenLab Basis-URL | Primärer Endpunkt | Migrationshinweis |
|---|---|---|---|
| OpenAI Chat Completions | https://api.tokenlab.sh/v1 | /chat/completions | Kleinste Änderung für OpenAI-kompatiblen Chat und Function Calling |
| OpenAI Responses | https://api.tokenlab.sh/v1 | /responses | Verwenden, wenn Ihre App von Responses-spezifischen Eingaben, Tools oder der Output-Verarbeitung abhängt |
| Anthropic SDK | https://api.tokenlab.sh | /v1/messages | Hängen Sie kein /v1 an die SDK Basis-URL an |
| Gemini REST | https://api.tokenlab.sh | /v1beta/models/:model:generateContent | Behalten Sie Gemini-native Felder auf der Gemini-Route bei |
| Media-Generierung | https://api.tokenlab.sh/v1 | /images, /videos, /music, /3d | Entdecken Sie Modelle mit recommended_for und erwarten Sie asynchrones Polling, wo dokumentiert |
| Verwaltung und Abrechnung | https://api.tokenlab.sh/v1 | /management/... | Verwenden Sie Management-Tokens für serverseitige Nutzung und Abrechnungsabgleich |
Schnelle Migrationsrezepte
Von OpenAI zu TokenLab
Ändern Sie nur die SDK base_url / baseURL zu https://api.tokenlab.sh/v1, behalten Sie Ihren bestehenden OpenAI API-Key-Umgebungsvariablennamen bei, falls dies für den Rollout einfacher ist, und ersetzen Sie die Modell-IDs nach einer Überprüfung über GET /v1/models.
Von OpenRouter zu TokenLab
Verwenden Sie https://api.tokenlab.sh/v1, wo Ihre App zuvor die OpenAI-kompatible Basis-URL von OpenRouter verwendet hat. Entfernen Sie Modell-IDs mit Provider-Präfix und verwenden Sie die öffentlichen TokenLab-Modell-IDs aus /v1/models; wenn ein Workload Claude Messages oder Gemini generateContent benötigt, verschieben Sie ihn auf den nativen TokenLab-Endpunkt, anstatt ihn durch OpenAI-kompatiblen Chat zu erzwingen.
Von LiteLLM zu TokenLab
Verwenden Sie die custom_openai/<model>-Route von LiteLLM mit api_base: https://api.tokenlab.sh/v1. Halten Sie LiteLLM-Aliase von echten TokenLab-Modell-IDs getrennt, damit Sie die Routing-Richtlinie ändern können, ohne die Prompts der Anwendung anzupassen.
Claude Messages über TokenLab
Richten Sie Anthropic SDK-Clients auf https://api.tokenlab.sh aus und rufen Sie messages.create auf. Hängen Sie kein /v1 an die SDK Basis-URL an; das SDK verwaltet den Pfad /v1/messages selbst.
Gemini nativ über TokenLab
Behalten Sie Gemini-Payloads auf https://api.tokenlab.sh/v1beta/models/{model}:generateContent bei. Gemini-native contents, parts, Dateien, gecachte Inhalte, Funktionsdeklarationen und integrierte Tools sollten auf dieser Route bleiben, wenn Ihre App von Gemini-spezifischem Verhalten abhängt.
OpenAI-kompatible Migration
from openai import OpenAI
client = OpenAI(
api_key="sk-your-tokenlab-key",
base_url="https://api.tokenlab.sh/v1",
)
response = client.chat.completions.create(
model="gpt-5.6-terra",
messages=[{"role": "user", "content": "Hello from TokenLab"}],
)Behalten Sie Ihren bestehenden Code für Retries, Timeouts und Streaming bei, validieren Sie jedoch die Modell-IDs mit GET /v1/models vor dem produktiven Traffic. Senden Sie bei der Bildgenerierung das model explizit mit und lesen Sie den Bild-Leitfaden, da sich Bildmodelle stärker unterscheiden als Chat-Modelle.
Anthropic-Migration
from anthropic import Anthropic
client = Anthropic(
api_key="sk-your-tokenlab-key",
base_url="https://api.tokenlab.sh",
)
message = client.messages.create(
model="claude-sonnet-5",
max_tokens=1024,
messages=[{"role": "user", "content": "Reply with: Connected to TokenLab."}],
)Verwenden Sie /v1/messages für Claude-native Tool-Nutzung, Thinking-Flows und Anthropic-Message-Semantik. Übersetzen Sie Anthropic-spezifische Felder nicht in Chat Completions, es sei denn, Sie beabsichtigen explizit eine Änderung des OpenAI-kompatiblen Verhaltens.
Gemini-Migration
curl "https://api.tokenlab.sh/v1beta/models/gemini-3.5-flash:generateContent" \
-H "Authorization: Bearer sk-your-tokenlab-key" \
-H "Content-Type: application/json" \
-d '{"contents":[{"parts":[{"text":"Hello"}]}]}'Behalten Sie integrierte Gemini-Tools, File API-Referenzen, gecachte Inhalte, Funktionsdeklarationen und native Content-Parts auf /v1beta bei, wenn Ihre App von Gemini-nativem Verhalten abhängt.
Media-Migration
- Fragen Sie
GET /v1/models?recommended_for=image|video|music|3dab. - Lesen Sie
GET /v1/modelsin Listenantworten und das vollständigeGET /v1/models/{model}, wo verfügbar. - Senden Sie ein explizites
model, insbesondere bei Bild-Endpunkten. - Speichern Sie
task_id,poll_url, Endpunkt, Modell und Ihre eigene Job-ID für asynchrone Jobs. - Gleichen Sie Kosten über Nutzungsdatensätze und
billing_transaction_idab, nicht über Provider-Task-IDs.
Media-Workloads benötigen einen eigenen Rollout-Plan, da sich Latenz, Retries und finale Assets anders verhalten als bei Chat Completions.
Produktions-Rollout-Plan
| Phase | Ziel | Prüfungen |
|---|---|---|
| 1. Inventur | Endpunkte, Modelle, Request-Felder, Streaming/Async-Verhalten und Abrechnungsverantwortliche auflisten | Es wird davon ausgegangen, dass keine versteckten Provider-spezifischen Felder öffentlich sind |
| 2. Single-Route-Pilot | Einen Endpunkt und eine Modellfamilie verschieben | Antwortformat, Kosten und Logs entsprechen den Erwartungen |
| 3. Shadow oder Sample | Ausgewählte Outputs mit dem vorherigen Provider vergleichen | Benutzerseitige Qualität und Latenz sind akzeptabel |
| 4. Gradueller Rollout | Traffic nach Key, Organisation oder Feature-Flag erhöhen | 4xx, 5xx, Latenz, Balance und doppelte asynchrone Jobs überwachen |
| 5. Bereinigung | Alten Provider-Pfad erst nach stabiler Nutzung entfernen | Rollback-Pfad und Support-Playbook sind dokumentiert |
Migrationsfallen
- Platzieren Sie nicht jedes Modell hinter einem OpenAI Chat Completions-Pfad, wenn Ihre App natives Anthropic-, Gemini- oder Responses-Verhalten benötigt.
- Gehen Sie nicht von alten Bild-Standardwerten aus. Senden Sie
modelexplizit mit. - Wiederholen Sie keine asynchronen Erstellungsanfragen, ohne zu prüfen, ob bereits ein Task erstellt wurde.
- Geben Sie keine Provider-spezifischen Identifikatoren in Ihren Logs oder der UI preis.
- Vergleichen Sie die Abrechnung nicht mit Provider-Task-IDs. Verwenden Sie TokenLab-Nutzungsdatensätze.
API-Referenz
| Thema | Referenz |
|---|---|
| Mehrformat-API | Mehrformat-API |
| OpenAI SDK | OpenAI SDK |
| Anthropic SDK | Anthropic SDK |
| Natives Gemini-Format | Native Gemini-API |
| Bildgenerierung | Bildgenerierung |
| Asynchrone Aufgaben und Polling | Asynchrone Aufgaben und Polling |