Exploiter Composio pour des applications d'IA multi-agents avancées
Introduction
Bonjour ! Je suis Tommy, et aujourd'hui nous allons plonger dans le monde fascinant de l'automatisation basée sur l'IA en utilisant le cadre Composio. Composio suralimente les agents IA en leur permettant d'interagir sans problème avec plus de 150 outils, ce qui en fait une solution puissante pour automatiser des tâches complexes avec un effort minimal.
Dans ce guide, nous allons explorer comment exploiter la puissance de Composio et du cadre AutoGen pour créer un système multi-agents qui lit les commentaires des clients à partir d'un fichier CSV, analyse les données et génère un rapport de synthèse détaillé dans un Google Doc. Restez avec nous pour voir comment tout cela se met en place avec des exemples pratiques et des insights pratiques, ainsi qu'une mise en œuvre concrète dans Google Colab à la fin !
Prérequis
Avant de plonger dans ce tutoriel, assurez-vous d'avoir ce qui suit :
- Python (3.8 ou supérieur) : Assurez-vous que Python est installé sur votre système. Vous pouvez le télécharger sur le site officiel de Python.
- Conda : Nous allons utiliser un environnement Conda pour gérer les dépendances. Si vous n'avez pas Conda installé, suivez le guide d'installation ici.
- VS Code : Nous travaillerons dans Visual Studio Code pour gérer nos fichiers de projet et notre code. Vous pouvez le télécharger ici.
- Compte Composio : Inscrivez-vous pour un compte gratuit sur le site officiel de Composio et accédez aux plus de 150 outils externes qu'il intègre.
- Clé API Groq : Vous pouvez accéder à la clé API ici après vous être inscrit.
- Compte Google : Nous allons interagir avec Google Docs.
Configuration de l'environnement
Commençons par configurer notre environnement. Voici comment procéder étape par étape :
Étape 1 : Créer un répertoire et l'ouvrir dans VS Code
Tout d'abord, ouvrez votre terminal et créez un nouveau répertoire pour votre projet. Vous pouvez nommer le répertoire comme bon vous semble, mais pour ce tutoriel, nous utiliserons composio-test
. Ensuite, naviguez dans le répertoire.
Une fois à l'intérieur du répertoire, ouvrez-le dans Visual Studio Code en exécutant la commande suivante :
code .
Étape 2 : Créer et activer un environnement Conda
Ensuite, vous devrez créer un nouvel environnement Conda. Cet environnement contiendra toutes les dépendances nécessaires pour ce projet. Pour ce faire, exécutez la commande ci-dessous dans votre terminal VSCode :
conda create --name composio-test python=3.8
Après que l'environnement a été créé, activez-le :
conda activate composio-test
Étape 3 : Créer un fichier Python
Dans le répertoire VS Code, créez un nouveau fichier appelé app.py
. Ce fichier servira de fichier principal où vous écrirez la logique de votre système multi-agents.
Étape 4 : Sélectionnez l'interpréteur correct dans VS Code
Assurez-vous que votre VS Code utilise l'interpréteur de l'environnement Conda composio-test
. Pour ce faire :
- Ouvrez la palette de commandes dans VS Code (Cmd/Ctrl + Shift + P).
- Cherchez "Python : Sélectionner l'interpréteur."
- Sélectionnez l'interpréteur qui correspond à votre nouvel environnement Conda (par exemple, composio-test).
Il devrait afficher un chemin comme /opt/anaconda3/envs/composio-test/bin/python
.
Étape 5 : Installer les paquets nécessaires
Maintenant que votre environnement est configuré, installons les dépendances nécessaires en utilisant pip. Dans ce cas, nous allons installer composio-autogen
et python-dotenv
:
pip install composio-autogen python-dotenv
Assurez-vous d'utiliser le chemin correct vers votre interpréteur Python depuis votre environnement Conda.
Étape 6 : Se connecter à Composio
Une fois vos paquets installés, vous devez vous connecter à Composio. Exécutez la commande suivante :
composio login
Cela vous invitera à suivre les étapes de connexion, y compris entrer une clé générée.
Étape 7 : Ajouter l'outil Google Docs
Avec Composio configuré, il est temps d'ajouter l'outil Google Docs puisque nous l'utiliserons pour générer un rapport plus tard. Exécutez la commande ci-dessous :
composio add google-docs
Construire le système multi-agents
Maintenant, nous allons construire le système multi-agents en utilisant Composio et AutoGen. Le système sera divisé en deux parties pour mettre pleinement en avant Composio en action et garantir une communication appropriée entre les agents.
Étape 1 : Créer le fichier CSV
Tout d'abord, créez un fichier CSV nommé dummy_customer_feedback.csv
qui contient des données de commentaires clients, des évaluations, des noms, et plus encore. Voici un exemple, mais n'hésitez pas à modifier ou ajouter plus de lignes pour répondre à vos besoins :
Nom du client, Commentaire, Évaluation
Alice, "Super service !", 5
Bob, "Pourrait être mieux.", 3
Charlie, "Expérience incroyable !", 4
Ce fichier servira de source de données pour l'analyse par nos agents.
Étape 2 : Configurer les variables d'environnement
Créez un fichier .env
pour stocker vos clés API. Vous aurez besoin d'une clé API Groq pour le modèle LLaMA3-70B et d'une clé API Composio, qui peut être trouvée dans les paramètres de votre compte Composio. Le fichier .env
devrait ressembler à ceci :
GROQ_API_KEY=
COMPOSIO_API_KEY=
Étape 3 : Importer les paquets nécessaires
Maintenant, importons les paquets nécessaires dans votre app.py
:
import os
import dotenv
from composio import Composio
Étape 4 : Charger les variables d'environnement
Utilisez la bibliothèque dotenv pour charger vos variables d'environnement :
dotenv.load_dotenv()
Étape 5 : Définir la configuration LLM
Comme nous utilisons le modèle LLaMA3-70B de Groq, définissez la configuration comme ceci :
llm = GroqLLM(model='LLaMA3-70B', api_key=os.getenv('GROQ_API_KEY'))
Partie un :
Nous créons des agents spécifiquement pour la tâche de lire, analyser et fournir un rapport de synthèse détaillé des principales métriques obtenues lors de l'analyse d'un fichier CSV contenant des commentaires clients.
Étape 1 : Créer l'agent d'analyse de données
Ensuite, définissez l'agent Spécialiste des Insights de Données, qui fournira un rapport de synthèse des principales métriques et tendances après l'analyse des données CSV.
Étape 2 : Créer l'agent d'analyseur de fichiers
L'agent d'analyseur de fichiers s'occupera de lire, extraire et formatter le contenu du fichier CSV :
Étape 3 : Créer l'agent Utilisateur
L'agent Utilisateur collectera et renverra le résumé final de l'agent Spécialiste des Insights de Données :
Étape 4 : Créer un chat de groupe et un gestionnaire
Maintenant, nous allons configurer un GroupChat et un GroupChatManager pour faciliter la communication entre les agents :
Étape 5 : Initialiser le jeu d'outils
Nous initialisons maintenant le jeu d'outils Composio, qui donne accès à tous les outils disponibles pour nos agents :
tools = Composio.get_tools()
Étape 6 : Enregistrer les outils
Nous enregistrons les outils qui seront utilisés par les agents d'analyseur de fichiers et Spécialiste des Insights de Données :
Étape 7 : Définir la tâche et exécuter le chat
Définissez la tâche qui doit être exécutée, y compris le nom du fichier CSV :
Partie 2 :
Dans la Partie Deux, nous allons étendre le système construit dans la Partie Un pour écrire le rapport de synthèse dans un document Google à l'aide de Composio et AutoGen. Nous allons créer de nouveaux agents spécifiquement pour cette tâche et utiliser les outils Google Docs disponibles via Composio.
Étape 1 : Créer des agents pour l'écriture de Google Docs
Nous commençons par définir les agents responsables de l'écriture du rapport de synthèse dans un document Google.
- Agent Rédacteur de Document : Cet agent initie l'opération d'écriture dans le document Google.
- Agent Rédacteur de Contenu : Cet agent est responsable de l'écriture du contenu dans le document Google.
- Agent Utilisateur : Cet agent s'assure que le rapport de synthèse est correctement écrit dans le document Google.
Étape 2 : Configurer le chat de groupe et le gestionnaire
Nous configurons ensuite un nouveau GroupChat et un GroupChatManager pour coordonner ces agents :
Étape 3 : Enregistrer l'outil Google Docs
Ensuite, nous enregistrons l'outil Google Docs dans Composio pour nos agents :
Étape 4 : Écrire le résumé dans Google Docs
Maintenant, nous initions le chat où le rapport de synthèse généré dans la Partie Un est écrit dans un document Google intitulé "Rapport de Retour Utilisateur" :
Exécution du fichier Python
Maintenant que notre système multi-agents est entièrement configuré, il est temps de le voir en action ! Nous allons exécuter notre script Python en utilisant le terminal de VS Code pour observer la magie opérer.
Dans votre terminal VSCode, assurez-vous d'être dans le répertoire racine où se trouve votre fichier app.py
. Ensuite, exécutez le script en exécutant :
python app.py
Assurez-vous d'utiliser le chemin vers votre environnement Conda
Revoir le flux d'exécution
Une fois que vous exécutez votre fichier Python, les journaux de chaque agent et outil devraient être visibles, car la verbosité est activée par défaut. Maintenant, voyons le pouvoir des outils Composio en action.
Vous devriez voir tous les outils disponibles dans le FILETOOL, l'Agent Spécialiste des Insights de Données suggérant des actions d'outils à effectuer en fonction de la tâche. L'agent délègue ensuite l'exécution à l'agent d'ANALYSEUR DE FICHIER et d'EXTRACTEUR, que nous avons défini précédemment comme l'exécuteur pour le FILETOOL.
Après que l'agent Extracteur ait exécuté tous les appels d'outils suggérés par l'agent Spécialiste des Données, il renvoie tous les champs dans le fichier CSV de manière formatée. Ensuite, il transmet les données à l'Agent Spécialiste des Données pour générer un résumé de rapport détaillé basé dessus. L'Agent Spécialiste des Données génère ensuite le résumé du rapport.
Ensuite, l'Agent Utilisateur démarre en passant le rapport de résumé fourni par l'Agent Spécialiste des Données au Gestionnaire de Group Chat, qui appelle ensuite l'Agent Rédacteur de Document.
L'agent Rédacteur de Document, armé de toutes les actions pour interagir avec Google Docs, propose maintenant des appels d'outils que l'Agent Rédacteur de Contenu doit effectuer. L'Agent Rédacteur de Contenu commence ensuite l'exécution et écrit le résumé dans le document Google tel que défini par l'Agent Rédacteur de Document.
Après l'exécution, vérifiez vos récents sur Google Drive, et vous devriez voir un fichier nommé 'Rapport de Retour Utilisateur' avec le rapport de résumé.
Prochaines étapes : Élargir votre utilisation de Composio
Maintenant que vous avez construit et exécuté avec succès un système multi-agents avec Composio, il existe plusieurs avenues passionnantes à explorer ensuite :
- Utilisation des déclencheurs pour des actions automatisées : Les déclencheurs sont une fonctionnalité puissante dans Composio qui peut automatiser les flux de travail en fonction d'événements ou de conditions spécifiques. Vous pouvez configurer des déclencheurs pour initier automatiquement des actions lorsque certains critères sont remplis, comme envoyer des notifications, mettre à jour des bases de données ou exécuter des tâches spécifiques en réponse à des changements dans vos données. Cela peut rendre votre système multi-agents encore plus réactif et autonome, réduisant le besoin d'intervention manuelle.
- Intégration d'outils et d'API supplémentaires : Composio prend en charge une large gamme d'outils et d'API que vous pouvez intégrer dans votre système. Par exemple, vous pourriez ajouter des outils pour l'analyse des médias sociaux, la gestion de base de données ou le stockage en cloud, permettant à vos agents d'effectuer des tâches encore plus diverses. Explorer le marché de Composio vous donnera des idées sur l'élargissement des capacités de votre système.
- Explorer les interactions avancées entre agents : Bien que ce tutoriel se soit concentré sur une configuration multi-agents simple, Composio permet des interactions d'agents beaucoup plus complexes. Vous pourriez expérimenter avec des structures d'agents hiérarchiques, où certains agents gèrent ou surveillent d'autres, ou explorer l'apprentissage coopératif, où les agents partagent des connaissances pour améliorer les performances au fil du temps.
- Élargir à d'autres modèles d'IA : Bien que vous ayez utilisé le modèle Groq Llama3-70b dans ce tutoriel, Composio prend en charge divers modèles d'IA. Vous pourriez expérimenter avec différents modèles ou même intégrer des modèles personnalisés pour adapter les performances de vos agents à des besoins spécifiques.
Conclusion
Dans ce tutoriel, nous avons exploré la construction d'un système multi-agents utilisant Composio et AutoGen, en nous concentrant sur l'analyse des commentaires des clients à partir d'un fichier CSV et la génération d'un rapport de synthèse. Nous avons parcouru la configuration de l'environnement, la configuration des agents et l'utilisation d'outils pour lire et analyser des données, suivies de l'écriture du résumé dans un document Google. Ce processus a démontré comment Composio peut être exploité pour des flux de travail complexes impliquant plusieurs agents tout en garantissant un bon contexte et une coordination adéquate.
Au cours du projet, j'ai rencontré des difficultés avec l'API OpenAI et la récupération de rapports de résumé en une seule étape. Pour surmonter ces problèmes, je suis passé à l'utilisation de l'API Groq et j'ai divisé le processus en deux parties, ce qui a abouti au résultat souhaité. Ces expériences ont mis en évidence à la fois la flexibilité de Composio et l'importance de la recherche de solutions et de l'adaptation lors de l'utilisation de nouveaux outils et cadres.
La vaste gamme d'outils de Composio et son intégration facile en font un choix puissant pour les développeurs souhaitant améliorer leurs projets avec des capacités d'IA. Je vous encourage à explorer davantage Composio en consultant la documentation officielle. Il y a beaucoup plus à découvrir, et je suis impatient de continuer à expérimenter avec ce cadre polyvalent.
Bonne programmation !
Laisser un commentaire
Tous les commentaires sont modérés avant d'être publiés.
Ce site est protégé par hCaptcha, et la Politique de confidentialité et les Conditions de service de hCaptcha s’appliquent.