Les outils intégrés de la Responses API
Donner des capacités au modèle
Les modèles Grok ne se limitent pas à la génération de texte. Via le paramètre tools, vous pouvez leur donner accès à des outils qui étendent considérablement leurs capacités : recherche web en temps réel, recherche sur X (Twitter), exécution de code Python, et vos propres fonctions personnalisées.
Les 4 types d’outils
web_search
Permet au modèle de rechercher des informations sur le web en temps réel :
{
"model": "grok-4.20-reasoning",
"input": "Quelles sont les dernières nouvelles sur l'IA en Europe ?",
"tools": [{"type": "web_search"}]
}
Le modèle décide automatiquement quand effectuer une recherche. Les résultats sont intégrés dans sa réponse avec des citations.
x_search
Recherche des publications sur X (anciennement Twitter) :
{
"model": "grok-4.20-reasoning",
"input": "Que dit la communauté tech sur le dernier iPhone ?",
"tools": [{"type": "x_search"}]
}
Particulièrement utile pour capter l’opinion publique, les tendances et les réactions en temps réel.
code_interpreter
Exécute du code Python côté serveur pour des calculs, de l’analyse de données ou la création de graphiques :
{
"model": "grok-4.20-reasoning",
"input": "Calcule la moyenne et l'écart-type de ces valeurs : 12, 15, 18, 22, 9, 31",
"tools": [{"type": "code_interpreter"}]
}
Le modèle écrit du code Python, l’exécute sur les serveurs xAI, et intègre les résultats dans sa réponse.
function
Vos propres fonctions que le modèle peut appeler. Le modèle génère les arguments, mais c’est votre code qui exécute la fonction :
{
"model": "grok-4.20-reasoning",
"input": "Quel temps fait-il à Paris ?",
"tools": [{
"type": "function",
"name": "get_weather",
"description": "Récupère la météo pour une ville donnée",
"parameters": {
"type": "object",
"properties": {
"city": {"type": "string", "description": "Nom de la ville"},
"unit": {"type": "string", "enum": ["celsius", "fahrenheit"]}
},
"required": ["city"]
}
}]
}
Combiner plusieurs outils
Vous pouvez passer jusqu’à 128 outils dans une seule requête. Le modèle choisit celui (ou ceux) qui conviennent :
{
"model": "grok-4.20-reasoning",
"input": "Recherche les derniers résultats de la Ligue 1 et crée un tableau des scores.",
"tools": [
{"type": "web_search"},
{"type": "code_interpreter"}
]
}
Dans cet exemple, le modèle pourrait d’abord utiliser web_search pour trouver les résultats, puis code_interpreter pour les formater en tableau.
Outils serveur vs outils client
La distinction est fondamentale :
-
Outils serveur (
web_search,x_search,code_interpreter) : exécutés automatiquement par les serveurs xAI. Vous n’avez rien à faire — le modèle lance la recherche ou le code, récupère le résultat, et l’intègre dans sa réponse. -
Outils client (
function) : le modèle génère un appel de fonction avec les arguments, puis pause la génération. Votre code exécute la fonction, et vous renvoyez le résultat dans une nouvelle requête.
Cette différence a un impact direct sur l’architecture de votre application, comme vous le verrez dans les leçons suivantes.
Points clés à retenir
- Quatre types d’outils :
web_search,x_search,code_interpreter,function - Les trois premiers sont exécutés côté serveur — aucune infrastructure requise de votre part
- Les
functionsont exécutées côté client — votre code gère l’exécution - Vous pouvez combiner jusqu’à 128 outils par requête
- Le modèle décide automatiquement quand et quels outils utiliser