Vérifié le 2026-11-12

Gemini API au format compatible OpenAI

Gemini API s'appelle avec le SDK OpenAI : mettez https://api.relayswitch.io/v1 dans base_url, utilisez une clé API RelaySwitch et écrivez un id Gemini dans model. Il y a 21 modèles Gemini dont les prix sont lus directement dans le catalogue, et vous n'avez pas besoin de compte Google.

01La différence avec Gemini API en direct chez Google

Utiliser Gemini API en direct, c'est avoir un compte Google, créer une clé dans Google AI Studio, puis payer selon la facturation de Google. Ici, cette partie est remplacée : vous rechargez un solde chez RelaySwitch, vous utilisez une clé RelaySwitch, et la requête part vers une passerelle qui la transmet à Gemini. Pour votre code, seules l'adresse et la clé changent ; l'id du modèle reste l'id Gemini.

Gemini a son propre format de requête (generateContent), mais la plupart des outils et du code existants sont écrits pour OpenAI Chat Completions. Google fournit lui-même une couche compatible OpenAI et précise dans sa documentation que cette prise en charge est encore en bêta. La démarche est la même ici : chaque id Gemini du tableau des prix peut être appelé au format OpenAI, si bien que porter du code OpenAI vers Gemini revient à changer le champ model.

02Première requête avec curl

Vérifiez d'abord la clé et l'adresse avec curl. La clé s'envoie dans l'en-tête Authorization: Bearer, et par rapport à un exemple OpenAI classique, seuls la Base URL, la clé et model changent.

bash
1curl https://api.relayswitch.io/v1/chat/completions \
2 -H "Authorization: Bearer sk-relay-..." \
3 -H "content-type: application/json" \
4 -d '{"model": "gemini-3.1-pro-preview", "messages": [{"role": "user", "content": "Reply with ok"}]}'

03SDK OpenAI pour Python

La Base URL s'écrit avec /v1, puis le SDK ajoute lui-même /chat/completions. Pour le streaming, mettez stream à true ; la réponse arrive en server-sent events, au même format que chez OpenAI. Le nombre de tokens dans usage est le même que celui inscrit sur le reçu.

python
1from openai import OpenAI
2
3client = OpenAI(base_url="https://api.relayswitch.io/v1", api_key="sk-relay-...")
4reply = client.chat.completions.create(
5 model="gemini-3.1-pro-preview",
6 messages=[{"role": "user", "content": "Reply with ok"}],
7)
8print(reply.choices[0].message.content)

04Migrer depuis l'endpoint compatible OpenAI de Google

Le code écrit d'après la documentation compatible OpenAI de Google utilise déjà le SDK OpenAI : le corps des requêtes n'a donc pas à changer. Les champs propres à Gemini que la documentation de Google fait passer par extra_body ne sont pas testés un à un sur cette page ; si vous les utilisez, testez d'abord avec une requête et vérifiez que la facturation du reçu correspond à ce que vous attendez.

Seules trois choses changent :

  • base_url : de l'adresse de la documentation Google à https://api.relayswitch.io/v1.
  • api_key : de la clé Google AI Studio à une clé RelaySwitch qui commence par sk-relay-.
  • model : faites correspondre l'id avec le tableau des prix de cette page et utilisez celui qui y figure à ce moment-là ; un id erroné reçoit 404 model_not_found.

05Format natif Gemini : generateContent

Un programme déjà écrit au format de requête de Google n'a pas à être réécrit, tant que l'id Gemini utilisé sert cette route. Le chemin est /v1beta/models/{model}:generateContent, directement derrière https://api.relayswitch.io, sans /v1. La clé s'envoie dans l'en-tête x-goog-api-key, pas dans l'URL : une clé placée en paramètre de requête est refusée par la passerelle. Le corps de la requête et de la réponse suit la structure de Google, contents en entrée et candidates en sortie.

Les messages d'erreur suivent chacun leur format. Au format OpenAI, le code est dans error.code ; au format natif, la forme suit celle de Google, par exemple un 401 avec error.status à UNAUTHENTICATED quand la clé n'est pas envoyée. Les deux formats partagent la même clé, le même solde et les mêmes prix. Le tableau des codes d'erreur par statut est sur la page OpenAI API et s'applique entièrement quand Gemini est appelé au format OpenAI.

06Prix actuels des modèles Gemini

En USD par million de tokens, lus dans le catalogue au rendu de la page. La facturation utilise trois prix : entrée, entrée en cache et sortie, et les prix du tableau sont ceux qui sont débités du solde.

Gemini sert souvent à lire de longs contenus : un contrat entier, un dépôt de code ou la transcription d'une réunion. Le coût de ces requêtes tient presque entièrement à l'entrée : pour choisir un modèle, regardez donc d'abord le prix d'entrée et la longueur du contexte, puis le prix de sortie. Si le même contenu est interrogé plusieurs fois, la partie répétée touche le cache dès la deuxième requête et est facturée au prix de l'entrée en cache ; le reçu compte ces tokens à part.

ModèleÉditeurEntréeSortieContexte
Gemini 4 Argongemini-4-argonGoogle$0.60$3.001,048,576
Gemini 3.8 Flashgemini-3.8-flashGoogle$0.4925$2.251,048,576
Gemini 3.7 Flashgemini-3.7-flashGoogle$0.4925$2.251,048,576
Gemini 3.5 Flash Litegemini-3.5-flash-liteGoogle$0.225$1.8751,048,576
Gemini 3.6 Flashgemini-3.6-flashGoogle$0.4925$2.251,048,576
Gemini 3.5 Flashgemini-3.5-flashGoogle$1.50$9.001,048,576
Gemini 3.1 Flash Lite Previewgemini-3.1-flash-lite-previewGoogle$0.1875$1.1251,048,576
Gemini 3.1 Pro Previewgemini-3.1-pro-previewGoogle$1.20$7.201,048,576
Gemini 3.1 PRO Preview LOWgemini-3.1-pro-preview-lowGoogle$5.00$22.501,048,576
Gemini 3 Flash Previewgemini-3-flash-previewGoogle$0.375$2.251,048,576
Gemini 2.5 Flashgemini-2.5-flashGoogle$0.30$2.501,048,576
Gemini 2.5 Progemini-2.5-proGoogle$0.9375$7.501,048,576
Gemini 2.5 Flash Litegemini-2.5-flash-liteGoogle$0.075$0.30
Gemini 3 Pro Previewgemini-3-pro-previewGoogle$5.00$22.50
Gemini 3.1 Flash Litegemini-3.1-flash-liteGoogle$0.15$0.90
Gemini 3.1 PRO Preview Customtoolsgemini-3.1-pro-preview-customtoolsGoogle$4.80$28.801,048,576
Gemini 4 Carbongemini-4-carbonGoogle$2.3529$11.7647
Gemini 4 Hydrogengemini-4-hydrogenGoogle$0.5882$2.9412
Gemini Flash Latestgemini-flash-latestGoogle$1.80$9.001,048,576
Gemini Flash Lite Latestgemini-flash-lite-latestGoogle$0.72$6.001,048,576
Gemini PRO Latestgemini-pro-latestGoogle$4.80$28.801,048,576

USD par million de tokens

07Choisir un modèle et préparer la production

Un nom de modèle qui contient le mot preview est une version préliminaire que Google remplacera plus tard par un nom définitif : l'id écrit dans le code doit donc suivre celui du tableau à ce moment-là. Inutile de deviner pour choisir un modèle : tous les id Gemini sont sur la même clé, envoyez donc le même prompt à chacun, puis comparez les réponses et le coût sur leurs reçus. Comparer avec GPT ou Claude revient aussi à changer model.

Pour la production, créez une clé distincte, donnez-lui un budget en dollars et un plafond de dépenses quotidien, puis limitez-la par une liste d'autorisation de modèles à l'id Gemini que vous avez choisi. Les programmes qui lisent de longs documents ont le plus besoin de ces limites, car une seule requête qui envoie par erreur tout un répertoire peut contenir des centaines de milliers de tokens d'entrée. Pour une requête en échec, lisez l'en-tête retry-after avant de réessayer. La création d'une clé et la pose de ses limites sont expliquées sur la page Clé API Claude.

Questions fréquentes

Comment utiliser Gemini API ici ?
Changez deux choses dans le code : base_url devient https://api.relayswitch.io/v1 et api_key devient une clé RelaySwitch qui commence par sk-relay-. Écrivez ensuite un id Gemini dans model et appelez via Chat Completions avec le SDK OpenAI. Le compte s'ouvre avec un e-mail, et le solde se recharge par carte ou en crypto dès $10.
Faut-il un compte Google ou une clé API Google AI Studio ?
Non. Gemini API de Google demande un compte Google pour créer une clé dans AI Studio. Ici, le compte s'ouvre chez RelaySwitch avec un e-mail, la clé se crée dans la console RelaySwitch, et la même clé peut appeler les autres modèles du catalogue.
SDK OpenAI ou format natif Gemini ?
Pour un programme neuf, utilisez le SDK OpenAI : il suffit de changer base_url, et passer au modèle d'un autre éditeur ne change que le champ model. Un programme déjà écrit avec generateContent peut envoyer ses requêtes à la route /v1beta/models/{model}:generateContent avec la clé dans l'en-tête x-goog-api-key. Les deux formats partagent la même clé, le même solde et les mêmes prix.
Gemini API est-elle gratuite ?
Gemini API de Google a une offre gratuite avec des limites de débit pour une partie des modèles ; les modèles concernés sont ceux qu'indique la page de prix de Google. Ici, il n'y a pas d'offre gratuite : chaque requête est débitée au token du solde prépayé, la recharge minimale est de $10, et le solde n'expire pas.
Comment se situent les prix de Gemini API ici par rapport aux prix officiels de Google ?
Le prix de chaque modèle est lu dans le catalogue au rendu de la page, et les prix du tableau sont ceux qui sont débités du solde. Le prix officiel publié par Google est affiché à côté sur la page de chaque modèle : les deux se comparent donc directement.
Comment s'assurer que c'est bien Gemini qui répond ?
Chaque modèle reçoit le même prompt de test une fois par jour et sa réponse est comparée aux résultats précédents ; les résultats sont publics sur https://api.relayswitch.io/v1/proof, sans clé API. Chaque requête a aussi un reçu signé (GET https://api.relayswitch.io/v1/requests/:id/receipt) qui indique l'id du modèle, les tokens facturés et le coût.

Changez base_url, puis changez model

Base URL https://api.relayswitch.io/v1, modèles Gemini facturés au token au prix du catalogue, avec un contrôle quotidien public.