OpenAI SDK pour Grok
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 est strictement identique à ce que vous feriez avec GPT :
response = client.chat.completions.create(
model="grok-4",
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: modèle polyvalent avec support visiongrok-4.20-reasoning: raisonnement avancégrok-4-1-fast-reasoning: réponses rapides et économiques
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 sans modification si vous changez aussi le nom du modèle.
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_penaltyetpresence_penaltyne sont pas supportés sur les modèles de type reasoning - Le paramètre
stopn’est pas disponible sur les modèles de raisonnement - 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 SDK OpenAI en mode compatibilité est idéal quand :
- Vous avez du code existant à migrer depuis OpenAI
- Vous voulez pouvoir basculer entre fournisseurs facilement
- Votre projet utilise des outils tiers construits autour du SDK OpenAI (LangChain, LlamaIndex)
- Vous travaillez en équipe et tout le monde connaît déjà le SDK OpenAI
Points clés à retenir
- Ajoutez
base_url="https://api.x.ai/v1"au constructeurOpenAI() - Remplacez la clé API et le nom du modèle
- Les variables
OPENAI_BASE_URLetOPENAI_API_KEYpermettent une migration sans toucher au code - Certains paramètres (penalties, stop) ne sont pas supportés sur les modèles reasoning