Outils Qwen Code
Qwen Code inclut des outils intégrés que le modèle utilise pour interagir avec votre environnement local, accéder à des informations et exécuter des actions. Ces outils étendent les fonctionnalités de la CLI, lui permettant d’aller au-delà de la génération de texte et de vous assister dans une large gamme de tâches.
Présentation des outils Qwen Code
Dans le contexte de Qwen Code, les outils sont des fonctions ou des modules spécifiques que le modèle peut demander à exécuter. Par exemple, si vous demandez au modèle de « Résumer le contenu de my_document.txt », il identifiera probablement la nécessité de lire ce fichier et demandera l’exécution de l’outil read_file.
Le composant principal (packages/core) gère ces outils, présente leurs définitions (schémas) au modèle, les exécute sur demande et renvoie les résultats au modèle pour qu’il les traite et génère une réponse destinée à l’utilisateur.
Ces outils offrent les fonctionnalités suivantes :
- Accéder aux informations locales : Les outils permettent au modèle d’accéder à votre système de fichiers local, de lire le contenu des fichiers, de lister les répertoires, etc.
- Exécuter des commandes : Grâce à des outils comme
run_shell_command, le modèle peut exécuter des commandes shell (avec les mesures de sécurité appropriées et la confirmation de l’utilisateur). - Interagir avec le web : Les outils peuvent récupérer du contenu depuis des URL.
- Effectuer des actions : Les outils peuvent modifier des fichiers, en créer de nouveaux ou effectuer d’autres actions sur votre système (généralement avec des garde-fous).
- Ancrer les réponses : En utilisant des outils pour récupérer des données locales ou en temps réel, les réponses peuvent être plus précises, pertinentes et ancrées dans votre contexte réel.
Comment utiliser les outils Qwen Code
Pour utiliser les outils Qwen Code, fournissez un prompt à la CLI. Le processus fonctionne comme suit :
- Vous fournissez un prompt à la CLI.
- La CLI transmet le prompt au core.
- Le core, accompagné de votre prompt et de l’historique de conversation, envoie une liste des outils disponibles ainsi que leurs descriptions/schémas à l’API du modèle configurée.
- Le modèle analyse votre demande. S’il détermine qu’un outil est nécessaire, sa réponse inclura une demande d’exécution d’un outil spécifique avec certains paramètres.
- Le core reçoit cette demande, la valide et (souvent après confirmation de l’utilisateur pour les opérations sensibles) exécute l’outil.
- La sortie de l’outil est renvoyée au modèle.
- Le modèle utilise la sortie de l’outil pour formuler sa réponse finale, qui est ensuite renvoyée via le core à la CLI et affichée à l’écran.
Vous verrez généralement des messages dans la CLI indiquant quand un outil est appelé et s’il a réussi ou échoué.
Sécurité et confirmation
De nombreux outils, en particulier ceux qui peuvent modifier votre système de fichiers ou exécuter des commandes (write_file, edit, run_shell_command), sont conçus avec la sécurité à l’esprit. Qwen Code va généralement :
- Demander une confirmation : Vous inviter à valider avant d’exécuter des opérations potentiellement sensibles, en vous montrant l’action sur le point d’être effectuée.
- Utiliser le sandboxing : Tous les outils sont soumis aux restrictions imposées par le sandboxing (voir Sandboxing in Qwen Code). Cela signifie que lors de l’exécution dans un sandbox, tous les outils (y compris les serveurs MCP) que vous souhaitez utiliser doivent être disponibles à l’intérieur de l’environnement sandbox. Par exemple, pour exécuter un serveur MCP via
npx, l’exécutablenpxdoit être installé dans l’image Docker du sandbox ou être disponible dans l’environnementsandbox-exec.
Il est important de toujours examiner attentivement les invites de confirmation avant d’autoriser un outil à s’exécuter.
En savoir plus sur les outils de Qwen Code
Les outils intégrés de Qwen Code peuvent être classés dans les grandes catégories suivantes :
- Outils de système de fichiers : Pour interagir avec les fichiers et les répertoires (lecture, écriture, listage, recherche, etc.).
- Outil Shell (
run_shell_command) : Pour exécuter des commandes shell. - Outil de récupération Web (
web_fetch) : Pour récupérer du contenu depuis des URL. - Outil de lecture multi-fichiers (
read_many_files) : Un outil spécialisé pour lire le contenu de plusieurs fichiers ou répertoires, souvent utilisé par la commande@. - Outil de mémoire (
save_memory) : Pour enregistrer et rappeler des informations entre les sessions. - Outil d’écriture de tâches (
todo_write) : Pour créer et gérer des listes de tâches structurées pendant les sessions de codage. - Outil de tâche (
task) : Pour déléguer des tâches complexes à des sous-agents spécialisés. - Outil de sortie du mode plan (
exit_plan_mode) : Pour quitter le mode plan et passer à l’implémentation.
De plus, ces outils intègrent :
- Serveurs MCP : Les serveurs MCP font office de pont entre le modèle et votre environnement local ou d’autres services comme les API.
- Guide de démarrage rapide MCP : Démarrez avec MCP en 5 minutes grâce à des exemples pratiques
- Configurations d’exemple MCP : Configurations prêtes à l’emploi pour des scénarios courants
- Recherche Web via MCP : Connectez-vous à des services de recherche web (Bailian, Tavily, GLM) via MCP
- Tests et validation MCP : Testez et validez vos configurations de serveurs MCP
- Sandboxing : Le sandboxing isole le modèle et ses modifications de votre environnement afin de réduire les risques potentiels.