L'appel d'outil est lorsque qu'un LLM est autorisé à déclencher des fonctions spécifiques (comme « rechercher dans mes fichiers », « exécuter une calculatrice » ou « appeler une API ») en émettant une requête structurée au lieu de deviner la réponse en texte. Vous utilisez les appels d'outil parce qu'ils rendent les résultats plus fiables et à jour, et ils permettent au modèle de prendre de véritables actions (interroger des systèmes, valider des faits, appliquer des schémas) plutôt que d'halluciner.
Dans ce tutoriel, vous apprendrez comment utiliser des LLM locaux via Tool Calling avec des exemples mathématiques, d'histoire, de code Python et de fonctions terminal. L'inférence se fait localement via llama.cpp, llama-server et des points de terminaison OpenAI.
Notre première étape est d'obtenir la dernière llama.cpp sur GitHub ici. Vous pouvez aussi suivre les instructions de compilation ci-dessous. Changez -DGGML_CUDA=ON en -DGGML_CUDA=OFF si vous n'avez pas de GPU ou si vous voulez simplement de l'inférence CPU. Pour les appareils Apple Mac / Metal, définissez -DGGML_CUDA=OFF puis continuez comme d'habitude - le support Metal est activé par défaut.
Dans un nouveau terminal (si vous utilisez tmux, utilisez CTRL+B+D), nous créons quelques outils comme l'addition de 2 nombres, l'exécution de code Python, l'exécution de fonctions Linux et bien plus encore :
Nous utilisons ensuite les fonctions ci-dessous (copier-coller et exécuter) qui analyseront automatiquement les appels de fonctions et appelleront le point de terminaison OpenAI pour n'importe quel modèle :
Dans cet exemple nous utilisons Devstral 2, lors du changement de modèle, assurez-vous d'utiliser les bons paramètres d'échantillonnage. Vous pouvez tous les consulter dans nos guides ici.
Maintenant nous allons présenter plusieurs méthodes d'exécution d'appels d'outils pour de nombreux cas d'utilisation différents ci-dessous :
Écrire une histoire :
Opérations mathématiques :
Exécuter du code Python généré
Exécuter des fonctions arbitraires du terminal
🌠 Appel d'outil Qwen3-Coder-Next
Dans un nouveau terminal, nous créons quelques outils comme l'addition de 2 nombres, l'exécution de code Python, l'exécution de fonctions Linux et bien plus encore :
Nous utilisons ensuite les fonctions ci-dessous qui analyseront automatiquement les appels de fonctions et appelleront le point de terminaison OpenAI pour tout LLM :
Maintenant nous allons présenter plusieurs méthodes d'exécution d'appels d'outils pour de nombreux cas d'utilisation différents ci-dessous :
Exécuter du code Python généré
Exécuter des fonctions arbitraires du terminal
Nous confirmons que le fichier a été créé et c'est le cas !
⚡ GLM-4.7-Flash + Appel GLM 4.7
Nous téléchargeons d'abord GLM-4.7 ou GLM-4.7-Flash via du code Python, puis le lançons via llama-server dans un terminal séparé (comme en utilisant tmux). Dans cet exemple nous téléchargeons le grand modèle GLM-4.7 :
Si vous l'avez exécuté avec succès, vous devriez voir :
Lancez-le maintenant via llama-server dans un nouveau terminal. Utilisez tmux si vous le souhaitez :
Et vous obtiendrez :
Maintenant dans un nouveau terminal et en exécutant du code Python, rappel : exécutez Tool Calling Guide Nous utilisons les paramètres optimaux de GLM 4.7 de temperature = 0.7 et top_p = 1.0
Appel d'outil pour opérations mathématiques pour GLM 4.7
Appel d'outil pour exécuter du code Python généré pour GLM 4.7
📙 Appel d'outil Devstral 2
Nous téléchargeons d'abord Devstral 2 via du code Python, puis le lancez via llama-server dans un terminal séparé (comme en utilisant tmux) :
Si vous l'avez exécuté avec succès, vous devriez voir :
Lancez-le maintenant via llama-server dans un nouveau terminal. Utilisez tmux si vous le souhaitez :
Vous verrez ce qui suit si cela a réussi :
Nous appelons ensuite le modèle avec le message suivant et avec les paramètres suggérés par Devstral de temperature = 0.15 uniquement. Rappel : exécutez Tool Calling Guide