Guides · Migrate from OpenAI
Migrer d'OpenAI vers l'API inference.eu : le guide pratique
Si votre application utilise déjà l'API d'OpenAI, passer à des modèles open-weight traités dans des centres de données européens relève surtout de la configuration. Ce guide présente les trois lignes à modifier, la façon de choisir les modèles de remplacement, les fonctions à tester avant de basculer le trafic de production et la manière de déployer le changement sans mauvaise surprise.
- 01Format d'API: OpenAI
- 02Centres de données dans l'UE
- 03Couvert par un seul DPA
import os
from openai import OpenAI
# Before: client = OpenAI() # api.openai.com, OPENAI_API_KEY
client = OpenAI(
base_url="https://api.inference.eu/v1",
api_key=os.environ["INFERENCE_EU_API_KEY"],
)
reply = client.chat.completions.create(
model="gpt-oss-120b", # was "gpt-4o"
messages=[{"role": "user", "content": "Draft a polite reminder for an unpaid invoice."}],
)
print(reply.choices[0].message.content)Les trois changements
Pointez le client vers l'URL de base d'inference.eu, utilisez votre clé inference.eu et changez le nom du modèle. Dans les SDK OpenAI Python et JavaScript, il suffit de passer base_url (ou baseURL) et api_key à la création du client, ou de définir les variables d'environnement OPENAI_BASE_URL et OPENAI_API_KEY, que les SDK lisent automatiquement.
Tout le reste ne bouge pas : même version du SDK, mêmes appels client.chat.completions.create et client.responses.create, même boucle de streaming, mêmes classes d'erreurs. LangChain, LlamaIndex, le Vercel AI SDK et l'OpenAI Agents SDK acceptent ces deux mêmes réglages. Gardez l'identifiant du modèle dans la configuration : la migration devient un paramètre réversible.
Choisir les modèles de remplacement
Associez un modèle à chaque usage plutôt que de chercher un modèle unique pour tout remplacer. Pour le chat généraliste et les agents, un grand modèle ouvert comme gpt-oss-120b est un bon point de départ. Pour de la classification ou de l'extraction en grand volume, un modèle plus petit et plus rapide suffit souvent. Pour les embeddings, qwen3-embedding-8b couvre les textes multilingues, et whisper-large-v3-turbo remplace les modèles de transcription d'OpenAI.
Les embeddings ne se mélangent pas : les vecteurs des modèles d'OpenAI ne sont pas comparables à ceux des modèles ouverts. Revectorisez votre corpus avec le nouveau modèle, de préférence via l'API batch, puis remplacez l'index en une seule fois.
Ce qu'il faut tester avant de basculer
Constituez un petit jeu d'évaluation à partir du trafic réel : 50 à 200 prompts accompagnés des réponses que vous jugez bonnes. Faites-le tourner sur l'ancienne et la nouvelle configuration et comparez qualité, longueur et format, pas seulement le succès de la requête.
Vérifiez les fonctions dont vous dépendez. L'appel d'outils doit produire les mêmes noms de fonctions et des arguments valides. Les sorties structurées doivent respecter votre schéma JSON. Le streaming doit se terminer par un dernier fragment avec la consommation. Les prompts avec images exigent un modèle de vision. Un prompt très ajusté à un modèle demande parfois une petite retouche, par exemple une consigne plus claire sur le format ou la langue.
Déploiement et cas particuliers
Déplacez le trafic progressivement. Envoyez une petite part des requêtes à inference.eu, comparez taux d'erreurs et retours des utilisateurs, puis augmentez. Comme le format de requête est identique, un drapeau de fonctionnalité qui choisit l'URL de base et le modèle suffit en général.
Certaines fonctions propres à OpenAI n'ont pas d'équivalent direct : ses noms de modèles, ses assistants et vector stores hébergés, et les réglages liés à certains de ses modèles. Un champ non pris en charge est ignoré ou refusé avec une erreur 400 explicite : surveillez vos journaux les premiers jours. Vérifiez les limites de votre offre avant de déplacer le trafic de pointe.
Migrate from OpenAI : questions fréquentes
Les questions que nous posent le plus les achats, les développeurs et les juristes. Il en manque une ? Posez-la-nous directement.
Pages liées
- Chat completionsEnvoyez vos messages à des modèles open-weight au format chat completions d'OpenAI. Traitement dans des centres de données de l'UE, sans entraînement.Endpoints
- List modelsListez avec GET /v1/models, au format OpenAI, tous les modèles open-weight accessibles à votre clé inference.eu, du chat aux embeddings et à la voix.Endpoints
- Rate limits and errorsFonctionnement des limites de débit et des erreurs de l'API inference.eu : codes HTTP, objet d'erreur, en-têtes de limite et schéma de reprise fiable.Guides
- Structured outputsObtenez des modèles ouverts un JSON valide conforme à votre schéma grâce aux sorties structurées compatibles OpenAI. Mode JSON, json_schema, strict, pièges.Guides
Faites passer vos charges IA sur une infrastructure européenne
Dites-nous quels modèles vous utilisez et votre volume approximatif. Nous répondons sous un jour ouvré avec un tarif et la suite.
- Réponse sous un jour ouvré
- Tarif adapté à votre volume
- DPA prêt à signer