Schémas d'outils (Tools & JSON Schema)
Norme de description formalisée des interfaces d'outils (Tools) pour les grands modèles de langage, utilisant le standard JSON Schema. Inclut le nom de la fonction, une description textuelle détaillée de son objectif, la liste des paramètres requis et les types de valeurs.
1. Aperçu du concept et de sa finalité
Imaginez que vous ayez accueilli un nouvel assistant au bureau et que vous lui disiez : « Voici notre logiciel spécialisé, utilise-le ». Mais sans lui expliquer à quoi servent les boutons ni quels champs doivent être remplis. Évidemment, l’assistant sera perdu.
Pour qu’un modèle linguistique sache quels outils numériques il a à sa disposition, les développeurs lui transmettent un Schéma d’outil (Tool Schema).
Il s’agit d’une description compacte, rédigée selon la norme JSON Schema :
- Nom (Name) : le nom court du bouton (par exemple,
book_hotel). - Description : l’utilité de cette action, formulée en langage naturel.
- Paramètres (Parameters) : les données nécessaires pour lancer l’action (ville, date d’arrivée, nombre de clients).
Modèle mental : une fiche de poste pour une IA : une liste d’outils accrochés à la ceinture de l’artisan, avec des instructions claires indiquant quand utiliser le marteau plutôt que le tournevis.
2. À quoi ressemble un schéma d’outil réel
{
"name": "calculate_mortgage",
"description": "Розраховує щомісячний платіж за іпотечним кредитом.",
"parameters": {
"type": "object",
"properties": {
"loan_amount": {
"type": "number",
"description": "Повна сума кредиту в гривнях, наприклад 1500000"
},
"years": {
"type": "integer",
"description": "Термін кредиту в роках від 1 до 30"
},
"interest_rate": {
"type": "number",
"description": "Річна відсоткова ставка у відсотках, наприклад 7.5"
}
},
"required": ["loan_amount", "years"]
}
}
3. Les quatre règles d’or pour rédiger un bon schéma
- Rédigez la description comme si vous expliquiez à un stagiaire : indiquez non seulement ce que fait l’outil, mais aussi quand il ne faut PAS l’appeler.
- Incluez des exemples dans le champ de description : « format de date strictement YYYY-MM-DD, par exemple 2026-05-18 ».
- Contraintes les choix possibles avec
enum: si le statut d’une commande ne peut prendre que trois valeurs, définissez-les explicitement :["pending", "shipped", "delivered"]. - Marquez les champs obligatoires dans le tableau
required: si une fonction ne peut pas fonctionner sans l’email du client, n’autorisez pas le modèle à l’exécuter à l’aveugle.
4. Conclusion pratique
La qualité et l’autonomie de votre agent AI dépendent à 80 % non pas de la taille du modèle, mais de la qualité et de la clarté des descriptions dans vos schémas d’outils. Plus la description est précise, moins l’agent commet d’erreurs.
FAQ: Schémas d'outils (Tools & JSON Schema)
Termes associés
Appels de fonctions (Function Calling / Tool Calling)
Protocole technique et standard d'interaction entre les LLM et les logiciels externes. Au lieu de générer du texte libre, le modèle retourne un JSON valide contenant le nom de la fonction et des arguments typés selon un schéma JSON Schema, permettant au backend d'exécuter des actions déterministes sur des API réelles.
Sélection dynamique d'outils (Dynamic Tool Selection)
Approche architecturale pour la construction d'agents IA à grande échelle disposant de centaines d'outils (Tools). Au lieu de charger toutes les descriptions de fonctions dans le contexte simultanément, le système utilise une recherche sémantique ou un modèle routeur (Router) pour sélectionner dynamiquement uniquement les 3 à 5 outils les plus pertinents pour une requête utilisateur spécifique.
Boucle d'action de l'agent (Pensée ➔ Action ➔ Observation / ReAct)
Modèle algorithmique fondamental pour le fonctionnement des agents autonomes (connu sous le nom de ReAct : Reasoning + Acting). Il consiste en une boucle infinie de trois étapes : 1) Pensée (Thought) — analyse de la situation ; 2) Action (Action) — appel d'un outil ; 3) Observation (Observation) — analyse du résultat et ajustement du plan.