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 WorkloadTokenLab Basis-URLPrimärer EndpunktMigrationshinweis
OpenAI Chat Completionshttps://api.tokenlab.sh/v1/chat/completionsKleinste Änderung für OpenAI-kompatiblen Chat und Function Calling
OpenAI Responseshttps://api.tokenlab.sh/v1/responsesVerwenden, wenn Ihre App von Responses-spezifischen Eingaben, Tools oder der Output-Verarbeitung abhängt
Anthropic SDKhttps://api.tokenlab.sh/v1/messagesHängen Sie kein /v1 an die SDK Basis-URL an
Gemini RESThttps://api.tokenlab.sh/v1beta/models/:model:generateContentBehalten Sie Gemini-native Felder auf der Gemini-Route bei
Media-Generierunghttps://api.tokenlab.sh/v1/images, /videos, /music, /3dEntdecken Sie Modelle mit recommended_for und erwarten Sie asynchrones Polling, wo dokumentiert
Verwaltung und Abrechnunghttps://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

  1. Fragen Sie GET /v1/models?recommended_for=image|video|music|3d ab.
  2. Lesen Sie GET /v1/models in Listenantworten und das vollständige GET /v1/models/{model}, wo verfügbar.
  3. Senden Sie ein explizites model, insbesondere bei Bild-Endpunkten.
  4. Speichern Sie task_id, poll_url, Endpunkt, Modell und Ihre eigene Job-ID für asynchrone Jobs.
  5. Gleichen Sie Kosten über Nutzungsdatensätze und billing_transaction_id ab, 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

PhaseZielPrüfungen
1. InventurEndpunkte, Modelle, Request-Felder, Streaming/Async-Verhalten und Abrechnungsverantwortliche auflistenEs wird davon ausgegangen, dass keine versteckten Provider-spezifischen Felder öffentlich sind
2. Single-Route-PilotEinen Endpunkt und eine Modellfamilie verschiebenAntwortformat, Kosten und Logs entsprechen den Erwartungen
3. Shadow oder SampleAusgewählte Outputs mit dem vorherigen Provider vergleichenBenutzerseitige Qualität und Latenz sind akzeptabel
4. Gradueller RolloutTraffic nach Key, Organisation oder Feature-Flag erhöhen4xx, 5xx, Latenz, Balance und doppelte asynchrone Jobs überwachen
5. BereinigungAlten Provider-Pfad erst nach stabiler Nutzung entfernenRollback-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 model explizit 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

ThemaReferenz
Mehrformat-APIMehrformat-API
OpenAI SDKOpenAI SDK
Anthropic SDKAnthropic SDK
Natives Gemini-FormatNative Gemini-API
BildgenerierungBildgenerierung
Asynchrone Aufgaben und PollingAsynchrone Aufgaben und Polling

Auf dieser Seite