In diesem Tutorial erstellen Sie einen ReAct (Reasoning and Action) KI-Agenten mit dem Open-Source-Framework LangGraph, indem Sie ein IBM® Granite-Modell über die IBM® watsonx.ai-API in Python erstellen. Der Anwendungsfall besteht darin, bestehende IT-Support-Tickets zu verwalten und neue zu erstellen.
Ein KI-Agent ist ein System oder Programm, das in der Lage ist, autonom Aufgaben im Namen eines Benutzers oder eines anderen Systems auszuführen, indem es seinen Workflow gestaltet und verfügbare Tools benutzt. Generative KI-Agenten nutzen die fortschrittlichen Techniken der Verarbeitung natürlicher Sprache (NLP) von Large Language Models (LLMs), um Eingaben Schritt für Schritt zu verstehen und zu beantworten und zu bestimmen, wann externe Tools aufgerufen werden sollten. Eine Kernkomponente von KI-Agenten ist das Reasoning. Nach der Gewinnung neuer Informationen durch Tool-Aufruf, menschliches Eingreifen oder andere Agenten leitet das Reasoning-Paradigma die nächsten Schritte des Agenten.
Bei jeder Aktion und jeder Tool-Antwort weist das ReAct-Paradigma (Reasoning and Action) die Agenten an, zu „Denken“ und ihre nächsten Schritte zu planen. Dieses schrittweise, langsame Denken gibt uns Erkenntnisse darüber, wie der Agent den aktualisierten Kontext verwendet, um Schlussfolgerungen zu formulieren. Da dieser Reflexionsprozess kontinuierlich ist, wird er oft als Denken-Handeln-Beobachten-Schleife bezeichnet und ist eine Form des Chain of Thought Prompting.
Dieses Tutorial verwendet das LangGraph-Framework, ein Open-Source-Framework für KI-Agenten, das für die Erstellung, Bereitstellung und Verwaltung komplexer generativer KI-Workflows entwickelt wurde. Das vorgefertigte Funktion
Innerhalb von LangGraph dient die Funktion „Zustand“ als Speicherbank, die alle wertvollen Informationen, die von jeder Iteration des KI-Systems verarbeitet werden, aufzeichnet und nachverfolgt. Diese zustandsbezogenen Diagramme ermöglichen es den Agenten, vergangene Informationen und wertvollen Kontext abzurufen. Die zyklische Struktur des ReAct-Diagramms wird genutzt, wenn das Ergebnis eines Schritts von den vorherigen Schritten in der Schleife abhängt. Die Knoten oder „Akteure“ im Graphen kodieren die Agentenlogik und sind durch Edges verbunden. Edges sind im Wesentlichen Python-Funktionen, die je nach aktuellem Status den nächsten Knoten bestimmen, der ausgeführt werden soll.
Sie benötigen ein IBM Cloud-Konto®, um für das Erstellen eines watsonx.ai™-Projekts.
Um die watsonx-Programmierschnittstelle (API) nutzen zu können, müssen Sie die folgenden Schritte ausführen. Hinweis: Sie können dieses Tutorial auch auf GitHub aufrufen.
Melden Sie sich bei watsonx.ai mit Ihrem IBM Cloud-Konto an.
Erstellen Sie eine watsonx.ai Laufzeit Service-Instanz (wählen Sie Ihre entsprechende Region aus und wählen Sie den Lite-Plan, der eine kostenlose Instanz ist).
Generieren Sie einen Schlüssel für eine Anwendungsprogrammierschnittstelle (API) .
Um mit der Bereitstellung von Agenten auf watsonx.ai zu beginnen, klonen Sie dieses GitHub-Repository, und greifen Sie auf das ReAct-Agent-Projekt des IT-Supports zu. Sie können dazu den folgenden Befehl in Ihrem Terminal ausführen.
Als Nächstes installieren Sie Poetry, falls Sie das noch nicht getan haben. Poetry ist ein Tool zur Verwaltung von Python-Abhängigkeiten und -Paketen.
Aktivieren Sie dann Ihre virtuelle Umgebung.
Anstatt den Befehl
Für die nächsten Schritte ist das Hinzufügen eines Arbeitsverzeichnisses zu PYTHONPATH erforderlich. Führen Sie in Ihrem Terminal Folgendes aus:
Um Ihre Umgebung einzurichten, folgen Sie den Anweisungen in der Datei README.mdauf Github. Für diese Einrichtung müssen mehrere Befehle in Ihrer IDE oder Befehlszeile ausgeführt werden.
In der Datei
Unser Agent benötigt eine Datenquelle, um aktuelle Informationen bereitzustellen und neue Daten hinzuzufügen. Wir speichern unsere Datendatei in IBM Cloud Object Storage.
Um dem ReAct-Agenten IT-Ticketmanagement-Funktionalität zur Verfügung zu stellen, müssen wir uns mit unserer Datenquelle in IBM Cloud Object Storage verbinden. Für diesen Schritt können wir die
In
Unser Agent kann Daten in unserer Datei sowohl lesen als auch schreiben. Erstellen wir zunächst das Tool zum Lesen von Daten mithilfe des LangChain
Wir haben das Tool
Als Nächstes haben wir das Tool
Dieses Tool nimmt die Beschreibung des Problems durch den Benutzer und die Dringlichkeit des Problems als Argumente auf. Mit diesen Informationen wird unserer Datei in COS eine neue Zeile hinzugefügt und somit ein neues Ticket erstellt. Andernfalls wird eine Ausnahme ausgelöst.
Das letzte Tool, das wir unserer
Um unserem Agenten Zugriff auf diese Tools zu gewähren, haben wir sie der
Diese Tools werden in die Datei
Denken Sie vor der Bereitstellung Ihres Agenten daran, alle erforderlichen Informationen in der
Es gibt drei Möglichkeiten, mit Ihrem Agenten zu chatten.
Führen Sie das Skript für die lokale KI-Dienstausführung aus.
Die letzte Möglichkeit besteht darin, im Bereich „Bereitstellungen“ auf watsonx.ai auf den Agenten zuzugreifen. Wählen Sie dazu im Menü auf der linken Seite „Bereitstellungen“. Wählen Sie dann Ihren Bereitstellungsraum, wählen Sie die Registerkarte „Assets“, wählen Sie Ihr
Um das Bereitstellungsskript auszuführen, initialisieren Sie die Variable
Die
Führen Sie als Nächstes das Bereitstellungsskript aus.
Führen Sie dann das Skript für die Abfrage der Bereitstellung aus.
Für die Zwecke dieses Tutorials wählen wir Möglichkeit 2 und fragen unseren bereitgestellten Agenten auf watsonx.ai in Form eines Chatbots ab. Bieten wir dem Agenten einige Prompts an, die den Einsatz von Tools erfordern. Nachdem Sie die in Möglichkeit 3 aufgeführten Schritte ausgeführt haben, sollten Sie eine Chat-Oberfläche auf watsonx.ai sehen. Dort können wir unseren Prompt eingeben.
Lassen Sie uns zunächst testen, ob das
Wie Sie in der abschließenden Antwort des Agenten sehen können, hat das KI-System erfolgreich Problemlösung eingesetzt, um mit dem
Großartig! Der Agent hat das Ticket erfolgreich zur Datei hinzugefügt.
In diesem Tutorial haben Sie einen Agenten mit dem Framework ReAct erstellt, der Entscheidungsfindung nutzt, um komplexe Aufgaben wie das Abrufen und Erstellen von Support-Tickets zu lösen. Es gibt mehrere KI-Modelle, die das Aufrufen von Agenten ermöglichen, wie z. B. Gemini von Google, Granite von IBM und GPT-4 von OpenAI. In unserem Projekt haben wir ein IBM Granite KI-Modell über die watsonx.ai API verwendet. Das Modell verhielt sich sowohl lokal als auch bei der Bereitstellung auf watsonx.ai wie erwartet. Sehen Sie sich als nächsten Schritt die Multi-Agent-Vorlagen LlamaIndex und CrewAI an, die im GitHub-Repository watsonx-developer-hub verfügbar sind, um KI-Agenten zu erstellen.
Ermöglichen Sie Entwicklern die Erstellung, Bereitstellung und Überwachung von KI-Agenten mit dem IBM watsonx.ai Studio.
Erzielen Sie bahnbrechende Produktivität mit einem der branchenweit umfassendsten Funktionenpakete, das Unternehmen bei der Erstellung, Anpassung und Verwaltung von KI-Agenten und KI-Assistenten unterstützt.
Erzielen Sie Kosteneinsparungen von über 90 % mit den kleineren und offenen Modellen von Granite, die auf Entwicklereffizienz ausgelegt sind. Diese auf Unternehmen abgestimmten Modelle bieten eine herausragende Leistung bei Sicherheitsbenchmarks und in einem breiten Spektrum von Unternehmensaufgaben von Cybersicherheit bis RAG.