Tool calling (appel d'outils)
Le tool calling, ou function calling, permet à un modèle de langage de demander une action à l'application qui l'entoure. Le développeur déclare les outils disponibles avec un nom, une description et un schéma de paramètres ; le modèle répond par une demande structurée d'appel, l'application l'exécute et lui renvoie le résultat. Le modèle n'exécute jamais de code lui-même : c'est votre système qui décide si l'appel a lieu, et comment.
Pourquoi c’est important pour un PM
Le tool calling transforme un générateur de texte en fonctionnalité capable de retrouver une commande, de réserver un créneau ou de mettre à jour une fiche CRM. Pour un PM, chaque outil est un petit contrat produit : son rôle, ses interdits, les erreurs qu'il renvoie et les personnes autorisées à le déclencher. Des définitions floues expliquent souvent qu'un agent choisisse la mauvaise action.
Exemple
Une application de livraison expose un outil get_order_status qui prend un numéro de commande. Quand un client demande où en est son colis, le modèle appelle l'outil, l'application interroge le système logistique et renvoie le statut, puis le modèle formule la réponse. Changer l'adresse passe par un autre outil, qui demande une confirmation.
Points clés
- Le modèle choisit un outil d'après sa description : celle-ci fait partie de la spécification.
- Les paramètres suivent un schéma JSON, ce qui n'empêche pas l'application de les valider avant d'agir.
- Un outil qui modifie quelque chose doit être idempotent, pour qu'un appel rejoué ne facture ou n'envoie pas deux fois.
- Les erreurs reviennent au modèle en termes clairs, exploitables, et jamais sous forme d'échec silencieux.
- Les permissions relèvent de la couche applicative, jamais du seul prompt.
Erreurs fréquentes
- Exposer un outil générique (« exécute n'importe quelle requête ») au lieu d'outils étroits et dédiés.
- Laisser le modèle déclencher des écritures à fort impact sans confirmation.
- Rédiger les descriptions pour des développeurs plutôt que pour le modèle qui doit choisir entre les outils.
- Considérer la sortie d'un outil comme fiable, alors qu'elle peut contenir des instructions injectées.
Pour aller plus loin dans Module
Les formations et les leçons qui traitent cette notion :