Appel de fonctions

L’appel de fonctions est une capacité qui permet à un grand modèle de langage (LLM) de demander l’utilisation d’un outil externe, d’une API ou d’un fragment de code en produisant un appel structuré et lisible par une machine, plutôt qu’une réponse en texte brut. Le modèle n’exécute pas le code lui-même ; il décide quelle fonction invoquer et avec quels arguments, puis l’application exécute cette fonction, et le résultat est renvoyé au modèle afin qu’il l’intègre à sa réponse finale. L’appel de fonctions est souvent utilisé de manière interchangeable avec l’« utilisation d’outils » ou l’appel d’outils, même si, à proprement parler, il désigne des fonctions définies par le développeur, un sous-ensemble du modèle plus large d’appel d’outils.

En bref : l’appel de fonctions permet à un modèle de dire « appelle cette fonction avec ces entrées », afin qu’il puisse récupérer des données en temps réel ou effectuer des actions au lieu de se fier uniquement à ce qu’il sait déjà.

Comment fonctionne l’appel de fonctions

L’application et le modèle échangent des messages en boucle, l’application gardant toujours le contrôle de ce qui s’exécute réellement :

  1. Définitions d’outils : l’application fournit au modèle une liste de fonctions disponibles, chacune dotée d’un nom, d’une description et d’un schéma JSON décrivant ses entrées.
  2. Décision : à partir de la demande de l’utilisateur et de ces descriptions, le modèle décide si une fonction serait utile et, le cas échéant, laquelle.
  3. Appel structuré : au lieu de répondre en prose, le modèle renvoie un appel structuré nommant la fonction et les valeurs des arguments, formaté pour correspondre au schéma.
  4. Exécution : c’est l’application, et non le modèle, qui exécute la fonction (par exemple interroger une base de données, appeler une API ou effectuer un calcul) et récupère le résultat.
  5. Retour : le résultat est renvoyé au modèle sous la forme d’un nouveau message.
  6. Réponse finale : le modèle utilise ce résultat pour produire sa réponse, ou bien il appelle une autre fonction et la boucle recommence.

Les différents fournisseurs emploient des noms différents pour désigner la même idée : OpenAI a popularisé l’appel de fonctions (en précisant qu’« une fonction est un type d’outil spécifique »), tandis qu’Anthropic parle d’utilisation d’outils. Le point déterminant est que le modèle n’exécute jamais rien de lui-même ; il se contente de proposer l’appel, et c’est l’application qui décide de ce qui doit être exécuté.

Appel de fonctions comparé à la génération de texte, au RAG, aux agents et aux compétences

  • La génération de texte brut produit de la prose destinée à être lue par une personne ; l’appel de fonctions produit une requête structurée que l’application peut exécuter, ce qui permet au modèle d’agir plutôt que de simplement décrire. Par exemple, un appel structuré comme get_weather(location=“London”) peut aider à générer une réponse en texte brut telle que « Le temps aujourd’hui à Londres est couvert ».
  • La génération augmentée par récupération (RAG) ajoute du contenu pertinent au contexte du modèle avant qu’il ne réponde ; l’appel de fonctions permet au modèle de déclencher des récupérations de données ou des actions à la demande, et les deux se combinent souvent lorsque la « recherche » est elle-même l’une des fonctions disponibles.
  • Un agent enchaîne de nombreux appels d’outils dans une boucle pour accomplir une tâche en plusieurs étapes ; l’appel de fonctions est la brique de base sur laquelle reposent les actions externes de ces boucles. Les étapes internes de planification et de raisonnement peuvent ne générer aucun appel d’outils.
  • La sortie structurée utilise le même format basé sur un schéma que l’appel de fonctions, mais sans déclencher d’action externe ; c’est un moyen de contraindre la forme de la réponse du modèle plutôt que d’étendre ce qu’il peut faire.
  • Une compétence d’agent regroupe des instructions, des scripts et des ressources réutilisables qu’un agent peut charger à la demande pour une tâche spécialisée ; l’appel de fonctions est le mécanisme de plus bas niveau sur lequel elle s’appuie, puisqu’une compétence décrit principalement comment combiner plusieurs appels d’outils plutôt que de constituer un appel unique en soi.

Où l’appel de fonctions est utilisé

  • Données et actions en temps réel : récupérer des informations actuelles telles que la météo, les prix ou les stocks, ou effectuer des actions comme réserver, envoyer ou mettre à jour des enregistrements que le modèle ne peut pas réaliser par lui-même.
  • Récupération et recherche : exposer une recherche ou une consultation de base de données sous forme de fonction afin que le modèle puisse intégrer des faits en cours de réponse, y compris via des appels à une API de recherche web.
  • Agents et recherche agentique : les flux de travail agentiques en plusieurs étapes s’appuient sur des appels de fonctions pour exécuter des actions externes telles que la recherche, la récupération et la mise à jour d’enregistrements.
  • Accès standardisé aux outils : des standards ouverts comme le Model Context Protocol (MCP) s’appuient sur l’appel de fonctions afin qu’une seule définition d’outil puisse fonctionner avec de nombreux modèles et applications sans intégration personnalisée pour chacun.
  • Ensembles de capacités réutilisables (alias « compétences ») : des standards émergents tels que les Agent Skills regroupent des instructions, des scripts et des ressources dans des dossiers portables qu’un agent charge à la demande. Une compétence peut inclure des scripts que l’environnement d’exécution hôte expose et exécute via des outils : le modèle propose l’appel, et l’environnement d’exécution exécute le code.

L’appel de fonctions est ce qui transforme un modèle de langage, d’un simple générateur de texte, en un système capable d’aller au-delà de lui-même : il est le fondement des agents, de la récupération en temps réel et d’une IA capable d’agir pour le compte d’un utilisateur.

Termes associés

Utilisation d’outils, recherche agentique, génération augmentée par récupération (RAG), Model Context Protocol (MCP), Agent Skills, schéma JSON, sortie structurée, grand modèle de langage (LLM), API, agent IA.

Brave logo

Vous y êtes presque…

Veuillez poursuivre l’installation de Brave dans le .

Veuillez poursuivre l’installation de Brave dans le .

Plus qu’une minute avant de commencer à bénéficier de la meilleure protection de la vie privée en ligne.

  1. Téléchargez Brave
  2. Ouvrez le programme d’installation
  3. Importez vos paramètres
  1. Étapes d’installation 1
    Téléchargez Brave

    Ouvrez le programme d’installation depuis les téléchargements de Chrome (dans le coin supérieur droit de cette fenêtre).

  2. Étapes d’installation 2
    Ouvrez le programme d’installation

    Si une boîte de dialogue de contrôle d’accès apparaît, cliquez sur « Oui » pour autoriser l’accès à Brave.

  3. Étapes d’installation 3
    Importez vos paramètres

    Une fois l’installation terminée, importez vos paramètres depuis Chrome.

Si votre téléchargement ne se lance pas automatiquement, cliquez .

Besoin d’aide ?