P

Function Calling : Définition et Exemples

Le Function Calling est une capacité des modèles de langage (LLM) qui leur permet d'identifier quand appeler une fonction externe et de générer les arguments structurés nécessaires pour l'exécuter.

Définition complète

Le Function Calling (ou appel de fonction) est un mécanisme qui permet aux modèles de langage d'interagir avec des systèmes externes en générant des appels de fonctions structurés. Plutôt que de simplement produire du texte, le modèle peut décider qu'une action concrète est nécessaire — comme interroger une base de données, consulter une API météo ou effectuer un calcul — et produire un objet JSON décrivant précisément la fonction à appeler et ses paramètres.

Concrètement, le développeur définit un ensemble de fonctions disponibles (avec leur nom, description et schéma de paramètres) dans la requête envoyée au modèle. Lorsque l'utilisateur pose une question qui nécessite l'une de ces fonctions, le modèle ne répond pas directement : il retourne un appel de fonction structuré que l'application peut exécuter. Le résultat de l'exécution est ensuite renvoyé au modèle, qui formule une réponse finale en langage naturel.

Cette approche résout une limitation fondamentale des LLM : leur incapacité à accéder à des données en temps réel ou à effectuer des actions dans le monde réel. Grâce au Function Calling, un chatbot peut réserver un vol, un assistant peut consulter votre agenda, ou un agent peut modifier un fichier. Le modèle agit comme un routeur intelligent qui comprend l'intention de l'utilisateur et la traduit en actions concrètes.

Le Function Calling est au cœur de la tendance des agents IA autonomes. Il constitue la brique fondamentale qui transforme un simple générateur de texte en un système capable d'agir, d'observer les résultats et d'itérer. Les principaux fournisseurs (OpenAI, Anthropic, Google) proposent tous cette fonctionnalité, chacun avec sa propre implémentation (tool use chez Anthropic, function calling chez OpenAI, etc.).

Étymologie

Le terme combine « function » (fonction, au sens informatique d'un bloc de code exécutable) et « calling » (appel, l'action de déclencher cette fonction). Il est issu du vocabulaire de la programmation classique où un « function call » désigne l'invocation d'une routine. Son adoption dans le contexte de l'IA date de juin 2023, lorsqu'OpenAI a introduit cette capacité dans l'API GPT, rendant le concept accessible au grand public.

Exemples concrets

Assistant e-commerce qui consulte le stock en temps réel

Est-ce que le Nike Air Max 90 est disponible en taille 43 ?

Agent de support technique qui crée un ticket automatiquement

Mon imprimante ne fonctionne plus depuis la mise à jour, peux-tu ouvrir un ticket au service IT ?

Assistant personnel qui gère un agenda via API

Décale ma réunion de 14h à 15h30 et préviens les participants par email.

Usage pratique

En prompt engineering, le Function Calling s'exploite en définissant des descriptions de fonctions claires et précises dans le schéma fourni au modèle. La qualité des descriptions et des noms de paramètres influence directement la capacité du modèle à choisir la bonne fonction et à générer les bons arguments. Il est recommandé de limiter le nombre de fonctions exposées à celles strictement nécessaires et de fournir des exemples dans les descriptions pour guider le modèle.

Concepts liés

Tool UseAPIAgent IAJSON Schema

FAQ

Le modèle exécute-t-il réellement les fonctions ?
Non, le modèle ne fait que générer l'appel de fonction sous forme de JSON structuré. C'est l'application côté développeur qui exécute réellement la fonction, puis renvoie le résultat au modèle pour qu'il formule sa réponse. Le modèle agit comme un décideur, pas comme un exécuteur.
Quelle est la différence entre Function Calling et Tool Use ?
Les deux termes désignent essentiellement le même mécanisme. OpenAI utilise historiquement « function calling » tandis qu'Anthropic préfère « tool use ». La nuance est que « tool use » englobe parfois un spectre plus large d'outils (recherche web, exécution de code, etc.), mais le principe technique sous-jacent reste identique : le modèle génère un appel structuré qu'un système externe exécute.
Faut-il savoir coder pour utiliser le Function Calling ?
Le Function Calling est principalement une fonctionnalité destinée aux développeurs qui intègrent des LLM via API. Cependant, de nombreuses plateformes no-code (comme les GPTs personnalisés d'OpenAI ou les workflows Make/Zapier) permettent de configurer des appels de fonctions sans écrire de code, rendant cette capacité accessible à un public plus large.

Voir aussi

Recevez de nouveaux prompts chaque semaine

Rejoignez notre newsletter.