Leveraging Composio for Advanced Multi-Agent AI Applications
Introduction
Hallo! Ich bin Tommy, und heute tauchen wir in die faszinierende Welt der KI-gesteuerten Automatisierung mit dem Composio-Framework ein. Composio verstärkt KI-Agenten, indem es ihnen ermöglicht, nahtlos mit über 150 Tools zu interagieren, was es zu einer leistungsstarken Lösung für die Automatisierung komplexer Aufgaben mit minimalem Aufwand macht.
In diesem Leitfaden werden wir erkunden, wie wir die Leistungsfähigkeit von Composio und dem AutoGen-Framework nutzen können, um ein Multi-Agenten-System zu erstellen, das Kundenfeedback aus einer CSV-Datei liest, die Daten analysiert und einen detaillierten zusammenfassenden Bericht in einem Google-Dokument erstellt. Bleiben Sie dran, um zu sehen, wie alles zusammenkommt, mit praktischen Beispielen und umsetzbaren Erkenntnissen, sowie einer praktischen Implementierung in Google Colab am Ende!
Voraussetzungen
Bevor wir in dieses Tutorial eintauchen, stellen Sie sicher, dass Sie Folgendes haben:
- Python (3.8 oder höher): Stellen Sie sicher, dass Python auf Ihrem System installiert ist. Sie können es von der offiziellen Python-Website herunterladen.
- Conda: Wir werden eine Conda-Umgebung verwenden, um Abhängigkeiten zu verwalten. Wenn Sie Conda nicht installiert haben, folgen Sie dem Installationsleitfaden hier.
- VS Code: Wir werden mit Visual Studio Code arbeiten, um unsere Projektdaten und den Code zu verwalten. Sie können es hier herunterladen.
- Composio-Konto: Melden Sie sich für ein kostenloses Konto auf der offiziellen Composio-Website an und erhalten Sie Zugang zu den über 150 externen Tools, die es integriert.
- Groq API-Schlüssel: Sie können den API-Schlüssel hier nach der Anmeldung abrufen.
- Google-Konto: Wir werden mit Google Docs interagieren.
Einrichten der Umgebung
Lassen Sie uns mit dem Einrichten unserer Umgebung beginnen. Hier ist, wie es Schritt für Schritt geht:
Schritt 1: Erstellen Sie ein Verzeichnis und öffnen Sie es in VS Code
Zuerst öffnen Sie Ihr Terminal und erstellen ein neues Verzeichnis für Ihr Projekt. Sie können das Verzeichnis nennen, wie Sie möchten, aber für dieses Tutorial verwenden wir composio-test
. Navigieren Sie dann in das Verzeichnis.
Sobald Sie sich im Verzeichnis befinden, öffnen Sie es in Visual Studio Code, indem Sie den folgenden Befehl ausführen:
code .
Dies öffnet das aktuelle Verzeichnis in VS Code.
Schritt 2: Erstellen und Aktivieren einer Conda-Umgebung
Als nächstes müssen Sie eine neue Conda-Umgebung erstellen. Diese Umgebung wird alle Abhängigkeiten beherbergen, die für dieses Projekt benötigt werden. Führen Sie dazu den folgenden Befehl in Ihrem VS Code-Terminal aus:
conda create --name composio-test python=3.8
Nachdem die Umgebung erstellt wurde, aktivieren Sie sie:
conda activate composio-test
Schritt 3: Erstellen Sie eine Python-Datei
Erstellen Sie im VS Code-Verzeichnis eine neue Datei mit dem Namen app.py
. Dies wird die Hauptdatei sein, in der Sie die Logik für Ihr Multi-Agenten-System schreiben.
Schritt 4: Wählen Sie den richtigen Interpreter in VS Code aus
Stellen Sie sicher, dass Ihr VS Code den Interpreter aus der composio-test
Conda-Umgebung verwendet. Gehen Sie dazu folgendermaßen vor:
- Öffnen Sie die Befehls-Palette in VS Code (
Cmd/Ctrl + Shift + P
). - suchen Sie nach
Python: Interpreter auswählen
. - Wählen Sie den Interpreter aus, der Ihrer neuen Conda-Umgebung entspricht (z. B.
/opt/anaconda3/envs/composio-test/bin/python
).
Schritt 5: Installieren der erforderlichen Pakete
Jetzt, wo Ihre Umgebung eingerichtet ist, lassen Sie uns die benötigten Abhängigkeiten mit pip
installieren. In diesem Fall werden wir composio-autogen
und python-dotenv
installieren:
pip install composio-autogen python-dotenv
Schritt 6: Melden Sie sich bei Composio an
Sobald Ihre Pakete installiert sind, müssen Sie sich bei Composio anmelden. Führen Sie den folgenden Befehl aus:
composio login
Dies fordert Sie zur Durchführung der Anmeldeschritte auf, einschließlich der Eingabe eines generierten Schlüssels.
Schritt 7: Fügen Sie das Google Docs-Tool hinzu
Mit Composio eingerichtet, ist es an der Zeit, das Google Docs-Tool hinzuzufügen, da wir es später verwenden werden, um einen Bericht zu erstellen. Führen Sie den folgenden Befehl aus:
composio add google_docs
Aufbau des Multi-Agenten-Systems
Jetzt werden wir das Multi-Agenten-System mit Composio und AutoGen erstellen. Das System wird in zwei Teile unterteilt, um Composio in Aktion vollständig zu zeigen und eine korrekte Kommunikation zwischen den Agenten sicherzustellen.
Schritt 1: Erstellen Sie die CSV-Datei
Erstellen Sie zunächst eine CSV-Datei mit dem Namen dummy_customer_feedback.csv
, die Kundenfeedbackdaten, Bewertungen, Namen usw. enthält. Hier ist ein Beispiel, fühlen Sie sich jedoch frei, Zeilen zu ändern oder hinzuzufügen, um Ihrem Anwendungsfall zu entsprechen:
Name,Bewertung,Feedback
Alice,5,Toller Service!
Bob,3,Okay Erfahrung.
Charlie,4,Sehr zufrieden.
Diese Datei dient als Datenquelle für die Analyse durch unsere Agenten.
Schritt 2: Einrichten der Umgebungsvariablen
Erstellen Sie eine .env
-Datei, um Ihre API-Schlüssel zu speichern. Sie benötigen einen Groq API-Schlüssel für das LLaMA3-70B-Modell und einen Composio-API-Schlüssel, der in den Composio-Kontoeinstellungen gefunden werden kann. Die .env
-Datei sollte wie folgt aussehen:
GROQ_API_KEY=your_groq_api_key
COMPOSIO_API_KEY=your_composio_api_key
Schritt 3: Importieren der erforderlichen Pakete
Jetzt lassen Sie uns die notwendigen Pakete in Ihrer app.py
importieren:
import os
import pandas as pd
from dotenv import load_dotenv
from composio import Composio
Schritt 4: Laden der Umgebungsvariablen
Verwenden Sie die Dotenv-Bibliothek, um Ihre Umgebungsvariablen zu laden:
load_dotenv()
Schritt 5: Definieren Sie die LLM-Konfiguration
Da wir das LLaMA3-70B-Modell von Groq verwenden, definieren wir die Konfiguration wie folgt:
config = {
'model': 'LLaMA3-70B',
'api_key': os.getenv('GROQ_API_KEY')
}
Teil Eins:
Wir erstellen Agenten, die speziell dafür zuständig sind, Daten zu lesen, zu analysieren und einen detaillierten zusammenfassenden Bericht über wichtige Kennzahlen zu liefern, die während der Analyse einer CSV-Datei mit Kundenfeedback gewonnen wurden.
Schritt 1: Erstellen Sie den Datenanalyse-Agenten
Als nächstes definieren wir den Data Insights Specialist-Agenten, der einen zusammenfassenden Bericht über wichtige Kennzahlen und Trends nach der Analyse der CSV-Daten liefert.
Schritt 2: Erstellen Sie den Dateiparsing-Agenten
Der Dateiparsing-Agent wird das Lesen, Extrahieren und Formatieren des Inhalts der CSV-Datei übernehmen:
Schritt 3: Erstellen Sie den Benutzer-Agenten
Der Benutzer-Agent wird die endgültige Zusammenfassung vom Data Insights Specialist-Agenten sammeln und zurückgeben:
Schritt 4: Erstellen Sie Gruppenchats und Manager
Jetzt richten wir einen GroupChat und einen GroupChatManager ein, um die Kommunikation zwischen den Agenten zu erleichtern:
Wir initialisieren jetzt das Composio-Toolset, das Zugang zu all den verfügbaren Tools für unsere Agenten bietet:
Wir registrieren die Tools, die von den Dateiparsen- und Data Insights Specialist-Agenten verwendet werden:
Durch das Setzen des App-Parameters hat unser Agent Zugriff auf alle Aktionen in der FILETOOL-App. Wir können auch die Art des Zugriffs unseres Agenten optimieren, indem wir den Aktionsparameter setzen und die Liste der Aktionen übergeben, auf die der Agent Zugriff haben soll.
Schritt 7: Definieren Sie die Aufgabe und führen Sie den Chat aus
Definieren Sie die durchzuführende Aufgabe, einschließlich des Dateinamens für die CSV:
Schließlich rufen Sie den von dem Data Insights Specialist-Agenten bereitgestellten zusammenfassenden Bericht ab:
Teil 2:
In Teil Zwei werden wir das in Teil Eins aufgebaute System erweitern, um den zusammenfassenden Bericht mithilfe von Composio und AutoGen in ein Google-Dokument zu schreiben. Wir werden neue Agenten speziell für diese Aufgabe erstellen und die über Composio verfügbaren Google Docs-Tools nutzen.
Schritt 1: Erstellen Sie Agenten zum Schreiben von Google Docs
Wir beginnen mit der Definition der Agenten, die für das Schreiben des zusammenfassenden Berichts in ein Google-Dokument verantwortlich sind.
- Dokumentenschreiber-Agent: Dieser Agent initiiert den Schreibvorgang im Google-Dokument.
- Inhaltsautor-Agent: Dieser Agent ist dafür verantwortlich, den Inhalt im Google-Dokument zu schreiben.
- Benutzer-Agent: Dieser Agent stellt sicher, dass der zusammenfassende Bericht korrekt im Google-Dokument geschrieben wird.
Schritt 2: Gruppenchats und Manager einrichten
Wir richten dann einen neuen GroupChat und GroupChatManager ein, um diese Agenten zu koordinieren:
Schritt 3: Registrieren Sie das Google Docs-Tool
Als nächstes registrieren wir das Google Docs-Tool in Composio für unsere Agenten:
Schritt 4: Schreiben Sie die Zusammenfassung in Google Docs
Nun initiieren wir den Chat, in dem der in Teil Eins generierte zusammenfassende Bericht in ein Google-Dokument mit dem Titel "Benutzerfeedbackbericht" geschrieben wird:
Ausführen der Python-Datei
Jetzt, da unser Multi-Agenten-System vollständig eingerichtet ist, ist es Zeit, es in Aktion zu sehen! Wir werden unser Python-Skript über das Terminal in VS Code ausführen, um die Magie erleben zu können.
Stellen Sie in Ihrem VS Code-Terminal sicher, dass Sie sich im Stammverzeichnis befinden, in dem sich Ihre app.py
-Datei befindet. Führen Sie dann das Skript aus, indem Sie:
python app.py
Stellen Sie sicher, dass Sie den Pfad zu Ihrer Conda-Umgebung verwenden.
Überprüfung des Ausführungsflusses
Sobald Sie Ihre Python-Datei ausführen, sollten die Protokolle für jeden Agenten und jedes Tool sichtbar sein, da die Ausführlichkeit standardmäßig aktiviert ist. Lassen Sie uns nun die Leistungsfähigkeit der Composio-Tools in Aktion sehen.
Sie sollten alle in FILETOOL verfügbaren Tools sehen, wobei der Data Insights Specialist-Agent die Toolaktionen vorschlägt, die basierend auf der Aufgabe ausgeführt werden müssen.
Der Agent delegiert dann die Ausführung an den FILE PARSER- und EXTRACTOR-Agenten, den wir zuvor als den Ausführenden für die FILETOOL definiert haben.
Nachdem der Extractor-Agent alle vom Data Specialist-Agenten vorgeschlagenen Tool-Calls ausgeführt hat, gibt er alle Felder in der CSV-Datei in einem formatierten Format zurück.
Dann gibt er die Daten an den Data Specialist-Agenten weiter, um einen detaillierten Bericht zu erstellen. Der Data Specialist-Agent generiert dann den Bericht.
Als nächstes wird der Benutzer-Agent aktiv, indem er den vom Data Specialist-Agenten bereitgestellten zusammenfassenden Bericht an den Group Chat Manager übergibt, der dann den Dokumentenschreiber-Agenten aufruft.
Der Dokumentenschreiber-Agent, ausgestattet mit allen Aktionen zur Interaktion mit Google Docs, schlägt jetzt Tool-Calls vor, die der Inhaltsautor-Agent ausführen kann.
Der Inhaltsautor-Agent beginnt dann mit der Ausführung und schreibt die Zusammenfassung in das Google-Dokument, wie vom Dokumentenschreiber-Agenten definiert.
Nach der Ausführung überprüfen Sie die aktuellen Dateien in Ihrem Google Drive und Sie sollten die Datei mit dem Namen „Benutzerfeedbackbericht“ mit der Zusammenfassung sehen.
Nächste Schritte: Erweiterung Ihrer Verwendung von Composio
Jetzt, da Sie erfolgreich ein Multi-Agenten-System mit Composio aufgebaut und ausgeführt haben, gibt es mehrere aufregende Möglichkeiten, die Sie als Nächstes erkunden können:
- Verwendung von Triggern für automatisierte Aktionen: Trigger sind eine leistungsstarke Funktion in Composio, die Arbeitsabläufe basierend auf bestimmten Ereignissen oder Bedingungen automatisieren kann. Sie können Trigger einrichten, um Aktionen automatisch auszulösen, wenn bestimmte Kriterien erfüllt sind, wie z.B. Benachrichtigungen zu senden, Datenbanken zu aktualisieren oder spezifische Aufgaben als Reaktion auf Änderungen in Ihren Daten auszuführen. Dies kann Ihr Multi-Agenten-System noch reaktionsschneller und autonomer machen, wodurch der Bedarf an manuellen Eingriffen verringert wird.
- Integration zusätzlicher Tools und APIs: Composio unterstützt eine breite Palette von Tools und APIs, die Sie in Ihr System integrieren können. Sie könnten beispielsweise Tools für die Social-Media-Analyse, die Verwaltungsdatenbanken oder Cloud-Speicher hinzufügen, wodurch Ihre Agenten noch vielfältigere Aufgaben ausführen können. Die Erkundung des Composio-Marktplatzes gibt Ihnen Ideen zur Erweiterung der Fähigkeiten Ihres Systems.
- Erforschen von fortgeschrittenen Agenteninteraktionen: Während dieses Tutorial sich auf eine einfache Multi-Agenten-Einrichtung konzentrierte, erlaubt Composio viel komplexere Agenteninteraktionen. Sie könnten mit hierarchischen Agentenstrukturen experimentieren, bei denen bestimmte Agenten andere verwalten oder überwachen, oder kooperatives Lernen erforschen, bei dem Agenten Wissen teilen, um die Leistung im Laufe der Zeit zu verbessern.
- Erweiterung auf andere KI-Modelle: Obwohl Sie in diesem Tutorial das Groq Llama3-70B-Modell verwendet haben, unterstützt Composio verschiedene KI-Modelle. Sie könnten mit verschiedenen Modellen experimentieren oder sogar benutzerdefinierte Modelle integrieren, um die Leistung Ihrer Agenten an spezifische Bedürfnisse anzupassen.
Fazit
In diesem Tutorial haben wir das Erstellen eines Multi-Agenten-Systems mit Composio und AutoGen untersucht, das sich auf die Analyse von Kundenfeedback aus einer CSV-Datei und die Erstellung eines zusammenfassenden Berichts konzentrierte. Wir haben den Prozess des Einrichtens der Umgebung, der Konfiguration der Agenten und der Nutzung von Tools zum Lesen und Analysieren von Daten durchlaufen, gefolgt von der Übertragung der Zusammenfassung in ein Google-Dokument. Dieser Prozess demonstrierte, wie Composio für komplexe Arbeitsabläufe mit mehreren Agenten genutzt werden kann, während gleichzeitig für den richtigen Kontext und die Koordination gesorgt wird.
Während des Projekts hatte ich Schwierigkeiten mit der OpenAI-API und dem Abrufen von zusammenfassenden Berichten in einem Schritt. Um diese Probleme zu überwinden, wechselte ich zur Verwendung der Groq-API und teilte den Prozess in zwei Teile auf, was erfolgreich das gewünschte Ergebnis erzielte. Diese Erfahrungen haben sowohl die Flexibilität von Composio als auch die Bedeutung des Troubleshootings und der Anpassung beim Arbeiten mit neuen Tools und Frameworks hervorgehoben.
Die riesige Auswahl an Tools und die einfache Integration von Composio machen es zu einer leistungsstarken Wahl für Entwickler, die ihre Projekte mit KI-Funktionalitäten erweitern möchten. Ich ermutige Sie, Composio weiter zu erkunden, indem Sie die offizielle Dokumentation durchsuchen. Es gibt viel mehr zu entdecken, und ich bin gespannt darauf, weiter mit diesem vielseitigen Framework zu experimentieren.
Viel Spaß beim Programmieren!
Hinterlasse einen Kommentar
Alle Kommentare werden vor der Veröffentlichung geprüft.
Diese Website ist durch hCaptcha geschützt und es gelten die allgemeinen Geschäftsbedingungen und Datenschutzbestimmungen von hCaptcha.