JSON Schema pour les outils
Apres avoir cree votre fonction outil, l’etape suivante est d’ecrire un schema JSON pour la decrire. Ce schema indique a Claude les arguments attendus et comment les utiliser correctement.
Comprendre le JSON Schema
Le JSON Schema existe depuis des annees comme standard de validation de donnees. Il comporte deux parties principales :
- Section haute : nom et description de l’outil (aide Claude a savoir quand l’utiliser)
- Section basse : le schema proprement dit, decrivant les arguments de la fonction en detail
Creer un schema : etape par etape
Etape 1 : Ecrire un dictionnaire avec des donnees d’exemple
Prenez votre fonction et creez un dictionnaire de tous les arguments avec des valeurs d’exemple :
def process_data(ids, profile, primary_id, value):
pass
Creez un dictionnaire avec des valeurs d’exemple correspondantes.
Etape 2 : Convertir en JSON
Convertissez votre dictionnaire Python en format JSON. La principale difference : True en Python devient true en JSON.
Etape 3 : Utiliser un convertisseur en ligne
Cherchez “JSON to JSON Schema converter” et utilisez un des nombreux outils gratuits en ligne. Collez votre JSON et laissez le generateur creer le schema automatiquement. Supprimez les declarations $schema du resultat.
Etape 4 : Ajouter les descriptions
L’etape la plus importante : ajoutez des descriptions detaillees a chaque propriete. Ces descriptions aident Claude a comprendre exactement ce que chaque argument fait et comment l’utiliser.
Bonnes pratiques pour les descriptions
- Expliquer ce que l’outil fait, quand l’utiliser, et ce qu’il renvoie
- Viser 3 a 4 phrases dans la description de l’outil
- Fournir des descriptions detaillees pour chaque propriete
- Si vous bloquez, collez votre fonction dans Claude et demandez-lui d’ecrire les descriptions
Assembler le tout
Votre schema JSON final contient un toolSpec avec le nom, la description, et un inputSchema avec les specifications detaillees des arguments :
{
"toolSpec": {
"name": "get_current_datetime",
"description": "Recupere la date et l'heure actuelles. Utilisez cet outil quand vous avez besoin de connaitre la date ou l'heure courante. Renvoie la date formatee selon le format specifie.",
"inputSchema": {
"json": {
"type": "object",
"properties": {
"date_format": {
"type": "string",
"description": "Le format strftime pour la date. Par defaut : %Y-%m-%d %H:%M:%S"
}
}
}
}
}
}
Le schema agit comme un contrat entre votre code et Claude, garantissant que quand Claude decide d’utiliser votre outil, il sait exactement quelles informations fournir et dans quel format.