---
title: "Migrer d'OpenAI vers une API hébergée en Europe · guide"
description: "Faites passer votre application d'OpenAI à des modèles ouverts traités dans l'UE. Changez l'URL de base, la clé et le modèle, puis testez outils et JSON."
canonical: "https://inference.eu/fr/api/migrate-from-openai/"
language: "fr"
---

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.

[Contacter l'équipe](https://inference.eu/fr/contact/)[Exemple de requête](#example)

1.  01Format d'API: OpenAI
2.  02Centres de données dans l'UE
3.  03Couvert par un seul DPA

app.py

```
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

Catégorie

Guides

Format d'API

OpenAI

Base URL

api.inference.eu/v1

Traitement

Centres de données dans l'UE

Entraînement sur vos données

Jamais

## 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.

Changez trois choses : l'URL de base pour celle de l'API inference.eu, la clé d'API pour votre clé inference.eu, et le nom du modèle pour un identifiant ouvert comme \`gpt-oss-120b\`. Les SDK OpenAI et la plupart des frameworks acceptent les deux premiers en argument du constructeur ou via \`OPENAI\_BASE\_URL\` et \`OPENAI\_API\_KEY\`.

En général, non. Requêtes, réponses, streaming et erreurs suivent le même format OpenAI, donc le reste du code continue de fonctionner. Il faudra peut-être ajuster des prompts qui reposent sur les habitudes d'un modèle précis, et retirer les appels à des services propres à OpenAI comme les vector stores hébergés.

Il n'y a pas de réponse unique : tout dépend de la tâche. Les grands modèles ouverts comme \`gpt-oss-120b\` gèrent bien le chat généraliste, le raisonnement et l'usage d'outils. Testez deux ou trois candidats sur votre propre jeu d'évaluation et choisissez fonctionnalité par fonctionnalité. Les pages modèles décrivent points forts et longueur de contexte.

Non. Les vecteurs issus des modèles d'embeddings d'OpenAI ne sont pas comparables à ceux des modèles ouverts. Revectorisez vos documents avec le nouveau modèle, idéalement via l'API batch, construisez un nouvel index et basculez la recherche une fois celui-ci prêt. Gardez l'ancien index jusqu'à validation du nouveau.

Les Assistants hébergés d'OpenAI et ses vector stores ne font pas partie de l'API inference.eu. La plupart des équipes les remplacent par l'API Responses ou chat completions, complétée par leur propre recherche : embeddings, base vectorielle et modèle de reclassement. Vos documents restent ainsi dans une infrastructure que vous maîtrisez.

Oui. Le format de requête étant identique, revenir en arrière consiste à changer de nouveau l'URL de base, la clé et le modèle. Gardez ces valeurs dans la configuration ou derrière un drapeau de fonctionnalité pour déplacer le trafic dans un sens ou dans l'autre pendant l'évaluation.

Sur inference.eu, les limites dépendent de votre offre et des modèles utilisés, et nous les convenons avec vous plutôt que d'appliquer des paliers publics fixes. Indiquez-nous votre trafic de pointe attendu avant la migration pour que nous fixions des limites adaptées, et conservez la logique de reprise pour les HTTP 429.

Les requêtes sont traitées dans des centres de données européens plutôt que par un fournisseur américain, et ne servent jamais à entraîner des modèles. Mettez à jour votre registre des traitements et votre liste de sous-traitants, et demandez-nous les documents contractuels dont votre service juridique a besoin.

[Poser une question](https://inference.eu/fr/contact/)

## Pages liées

[Présentation de l'API](https://inference.eu/fr/api/)

-   [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](https://inference.eu/fr/api/chat-completions/)
-   [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](https://inference.eu/fr/api/models/)
-   [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](https://inference.eu/fr/api/rate-limits-and-errors/)
-   [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](https://inference.eu/fr/api/structured-outputs/)

## 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
