Aller au contenu principal
Leçon 6 sur 14 · API Grok : démarrage rapide

OpenAI SDK pour Grok

Leçon 6 sur 14 Mis à jour le 3 novembre 2026 Développeur
Sur cette page
  1. Réutiliser vos connaissances OpenAI
  2. Installation
  3. Configurer le client pour xAI
  4. Envoyer un message
  5. Migrer un projet OpenAI existant
  6. Différences à connaître
  7. Quand choisir cette approche
  8. Points clés à retenir

Leçon mise à jour le 3 novembre 2026 d’après la page Models de xAI : grok-4.7 (septembre 2026) a succédé à grok-4.5 comme modèle recommandé ; l’exemple, écrit avec grok-4.5, fonctionne aussi avec grok-4.7. Sources : Models · Release notes.

Précisé le 3 novembre 2026 d’après la référence Chat Completions de xAI : l’appel n’est pas « strictement identique » à celui d’OpenAI ; logprobs et top_logprobs (ignorés à partir de grok-4.20) et logit_bias (non pris en charge) s’ajoutent aux différences listées. Source : xAI, Chat Completions.

Réutiliser vos connaissances OpenAI

Si vous travaillez déjà avec le SDK OpenAI en Python, vous pouvez l’utiliser tel quel pour appeler l’API Grok. Il suffit de rediriger les requêtes vers les serveurs xAI en changeant l’URL de base. C’est l’approche la plus rapide si vous avez du code existant.

Installation

Si le SDK OpenAI n’est pas encore installé dans votre projet :

pip install openai

Configurer le client pour xAI

La seule différence avec une utilisation classique d’OpenAI est le paramètre base_url :

from openai import OpenAI
import os

client = OpenAI(
    api_key=os.getenv("XAI_API_KEY"),
    base_url="https://api.x.ai/v1"
)

C’est tout. À partir de ce point, toutes les méthodes du SDK OpenAI fonctionnent avec les modèles Grok.

Envoyer un message

L’appel a la même forme que pour GPT, aux paramètres non pris en charge près (voir plus bas) :

response = client.chat.completions.create(
    model="grok-4.5",
    messages=[
        {"role": "system", "content": "Vous êtes un assistant technique."},
        {"role": "user", "content": "Quelle est la différence entre REST et GraphQL ?"}
    ],
    temperature=0.7,
    max_completion_tokens=500
)

print(response.choices[0].message.content)

Modèles disponibles

Remplacez simplement le nom du modèle OpenAI par un modèle Grok :

  • grok-4.7 : le modèle que xAI recommande, polyvalent, avec entrée image (grok-4.6 et grok-4.5 restent disponibles)
  • grok-4.20-0309-reasoning : raisonnement avancé
  • grok-4.3 : réponses rapides et économiques (contexte 1M)

Migrer un projet OpenAI existant

Pour adapter un projet existant, vous avez deux options :

Option 1 : Variables d’environnement

Modifiez vos variables sans toucher au code :

export OPENAI_API_KEY="xai-votre-cle"
export OPENAI_BASE_URL="https://api.x.ai/v1"

Le SDK OpenAI lit ces variables automatiquement. Votre code existant fonctionnera si vous changez aussi le nom du modèle et retirez les paramètres que xAI ne prend pas en charge.

Option 2 : Configuration explicite

Créez une fonction d’initialisation qui bascule entre les fournisseurs :

import os
from openai import OpenAI

def creer_client(fournisseur="xai"):
    if fournisseur == "xai":
        return OpenAI(
            api_key=os.getenv("XAI_API_KEY"),
            base_url="https://api.x.ai/v1"
        )
    return OpenAI()  # OpenAI par défaut

client = creer_client("xai")

Cette approche vous permet de basculer facilement entre les fournisseurs pendant la phase de migration.

Différences à connaître

Bien que l’API soit compatible, certains comportements diffèrent :

  • Les paramètres frequency_penalty et presence_penalty ne sont pas supportés sur les modèles de type reasoning
  • Le paramètre stop n’est pas disponible sur les modèles de raisonnement
  • logprobs et top_logprobs sont ignorés sans erreur par grok-4.20 et les modèles plus récents, et logit_bias n’est pas pris en charge
  • Les noms de modèles sont évidemment différents
  • Certaines fonctionnalités xAI (recherche X, recherche web) ne sont pas accessibles via le format OpenAI standard

Quand choisir cette approche

Le mode compatibilité prend tout son sens quand l’existant pèse plus lourd que les fonctionnalités exclusives. Le cas le plus fréquent est la migration : un code déjà écrit pour OpenAI bascule vers Grok en changeant l’URL de base et la clé — deux lignes, zéro réécriture. La réversibilité compte aussi : tant que vous restez sur le format OpenAI, basculer entre fournisseurs reste une affaire de configuration, ce qui est précieux pour comparer les modèles ou négocier. L’écosystème enfin : les outils tiers construits autour du SDK OpenAI — LangChain, LlamaIndex et consorts — fonctionnent immédiatement, et une équipe qui connaît déjà ce SDK n’a rien de nouveau à apprendre. Le prix à payer reste celui vu plus haut : les fonctionnalités propres à xAI passent au second plan.

Points clés à retenir

  • Ajoutez base_url="https://api.x.ai/v1" au constructeur OpenAI()
  • Remplacez la clé API et le nom du modèle
  • Les variables OPENAI_BASE_URL et OPENAI_API_KEY permettent une migration sans toucher au code
  • Certains paramètres (penalties, stop) ne sont pas supportés sur les modèles reasoning