TokenLab

Guides essentiels

Guides de migration

Déplacez vos charges de travail OpenAI, Anthropic, Gemini et multimédia vers TokenLab avec des modifications mineures et sécurisées pour la production.

TokenLab est multi-format : vous pouvez conserver les clients compatibles OpenAI, les appels Messages natifs d'Anthropic, les appels REST natifs de Gemini et les endpoints multimédias dans leurs formes naturelles. La migration la plus sûre ne consiste pas à traduire chaque charge de travail dans un format universel. Choisissez la route qui gère le comportement dont votre application a besoin.

Mappage des routes

Charge de travail existanteURL de base TokenLabEndpoint principalNote de migration
OpenAI Chat Completionshttps://api.tokenlab.sh/v1/chat/completionsChangement minimal pour le chat et l'appel de fonctions compatibles OpenAI
OpenAI Responseshttps://api.tokenlab.sh/v1/responsesÀ utiliser si votre application dépend d'entrées, d'outils ou de gestion de sortie spécifiques à Responses
Anthropic SDKhttps://api.tokenlab.sh/v1/messagesN'ajoutez pas /v1 à l'URL de base du SDK
Gemini RESThttps://api.tokenlab.sh/v1beta/models/:model:generateContentConservez les champs natifs Gemini sur la route Gemini
Génération multimédiahttps://api.tokenlab.sh/v1/images, /videos, /music, /3dDécouvrez les modèles avec recommended_for et prévoyez un polling asynchrone là où c'est documenté
Gestion et facturationhttps://api.tokenlab.sh/v1/management/...Utilisez des jetons de gestion pour l'utilisation côté serveur et le rapprochement de facturation

Recettes de migration rapide

D'OpenAI vers TokenLab

Modifiez uniquement le base_url / baseURL du SDK par https://api.tokenlab.sh/v1, conservez le nom de votre variable d'environnement de clé API OpenAI existante si cela facilite le déploiement, et remplacez les IDs de modèles après avoir vérifié GET /v1/models.

D'OpenRouter vers TokenLab

Utilisez https://api.tokenlab.sh/v1 là où votre application utilisait précédemment l'URL de base compatible OpenAI d'OpenRouter. Supprimez les IDs de modèles préfixés par le fournisseur et utilisez les IDs de modèles publics de TokenLab depuis /v1/models ; lorsqu'une charge de travail nécessite Claude Messages ou generateContent de Gemini, déplacez-la vers l'endpoint natif TokenLab au lieu de la forcer via le chat compatible OpenAI.

De LiteLLM vers TokenLab

Utilisez la route custom_openai/<model> de LiteLLM avec api_base: https://api.tokenlab.sh/v1. Gardez les alias LiteLLM séparés des IDs de modèles réels de TokenLab afin de pouvoir modifier la politique de routage sans changer les prompts de l'application.

Messages Claude via TokenLab

Pointez les clients du SDK Anthropic vers https://api.tokenlab.sh et appelez messages.create. N'ajoutez pas /v1 à l'URL de base du SDK ; le SDK gère lui-même le chemin /v1/messages.

Gemini natif via TokenLab

Conservez les payloads Gemini sur https://api.tokenlab.sh/v1beta/models/{model}:generateContent. Les contents, parts, fichiers, contenus mis en cache, déclarations de fonctions et outils intégrés natifs de Gemini doivent rester sur cette route lorsque votre application dépend du comportement de Gemini.

Migration compatible OpenAI

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"}],
)

Conservez votre code existant de réessai (retry), de délai d'attente (timeout) et de streaming, mais validez les IDs de modèles avec GET /v1/models avant le trafic de production. Pour la génération d'images, envoyez explicitement le model et lisez le guide des images, car les modèles d'images diffèrent davantage que les modèles de chat.

Migration Anthropic

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."}],
)

Utilisez /v1/messages pour l'utilisation d'outils natifs de Claude, les flux de réflexion et la sémantique des messages Anthropic. Ne traduisez pas les champs spécifiques à Anthropic via Chat Completions, sauf si vous souhaitez intentionnellement un changement de comportement compatible OpenAI.

Migration Gemini

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"}]}]}'

Conservez les outils intégrés de Gemini, les références File API, les contenus mis en cache, les déclarations de fonctions et les parties de contenu natives sur /v1beta lorsque votre application dépend du comportement natif de Gemini.

Migration multimédia

  1. Interrogez GET /v1/models?recommended_for=image|video|music|3d.
  2. Lisez GET /v1/models dans les réponses de liste et le GET /v1/models/{model} complet lorsqu'il est disponible.
  3. Envoyez un model explicite, surtout pour les endpoints d'images.
  4. Stockez task_id, poll_url, l'endpoint, le modèle et votre propre ID de tâche pour les travaux asynchrones.
  5. Rapprochez les coûts via les enregistrements d'utilisation et billing_transaction_id, et non via les IDs de tâches des fournisseurs.

Les charges de travail multimédias nécessitent leur propre plan de déploiement car la latence, les réessais et les actifs finaux se comportent différemment des complétions de chat.

Plan de déploiement en production

PhaseObjectifVérifications
1. InventaireLister les endpoints, modèles, champs de requête, comportement de streaming/asynchrone et propriétaire de la facturationAucun champ caché spécifique au fournisseur n'est supposé public
2. Pilote sur une seule routeDéplacer un endpoint et une famille de modèlesLa forme de la réponse, le coût et les logs correspondent aux attentes
3. Shadow ou échantillonComparer les sorties sélectionnées avec celles du fournisseur précédentLa qualité et la latence visibles par l'utilisateur sont acceptables
4. Déploiement graduelAugmenter le trafic par clé, organisation ou indicateur de fonctionnalité (feature flag)Surveiller les 4xx, 5xx, la latence, le solde et les travaux asynchrones en double
5. NettoyageSupprimer l'ancien chemin du fournisseur uniquement après une utilisation stableLe chemin de retour en arrière (rollback) et le manuel de support sont documentés

Pièges de migration

  • Ne placez pas tous les modèles derrière un seul chemin OpenAI Chat Completions si votre application a besoin du comportement natif d'Anthropic, Gemini ou Responses.
  • Ne supposez pas les valeurs par défaut des anciennes images. Envoyez model explicitement.
  • Ne réessayez pas les requêtes de création asynchrones sans vérifier si une tâche a déjà été créée.
  • N'exposez pas d'identifiants spécifiques au fournisseur dans vos logs ou votre interface utilisateur.
  • Ne comparez pas la facturation avec les IDs de tâches des fournisseurs. Utilisez les enregistrements d'utilisation de TokenLab.

Référence API

SujetRéférence
API Multi-FormatMulti-Format API
SDK OpenAIOpenAI SDK
SDK AnthropicSDK Anthropic
Gemini NativeGemini Native API
Génération d'imagesGénération d'Image
Travaux asynchrones & PollingTravaux Asynchrones & Polling

Sur cette page