Die KI ist in den letzten zwei Jahren seit der Veröffentlichung der Web-Benutzeroberfläche von ChatGPT zum heiß diskutierten Thema geworden. Die weltweiten Suchanfragen nach dem Begriff „AI“ sind seit November 2022 um rund 400 % gestiegen. Obwohl es schon seit Jahren Sprachmodelle gibt und das Interesse an ihnen sprunghaft angestiegen ist, ist es wichtig, sich daran zu erinnern, dass diese Technologie noch relativ jung ist. Trotz der unzähligen „Wow“-Momente, die viele von uns seit Ende 2022 mit ChatGPT und anderen großen Sprachmodellen (LLMs) erlebt haben, ist die Tech- und Geschäftswelt immer noch dabei, Wege zu finden – und zu erfinden –, um mit dieser Technologie einen echten Mehrwert zu schaffen.
Ein sich schnell entwickelndes Gebiet im Bereich der generativen KI (GenAI), der sich allmählich als vielversprechend abzeichnet, sind Agentensysteme. Diese bestehen aus zahlreichen spezialisierten LLM-„Agenten“, die die Argumentationsfähigkeit von LLMs nutzen und zusammenarbeiten können, um Ziele zu erreichen. Um zu verstehen, wie das einen tatsächlichen Mehrwert schafft, untersuchen wir zunächst die Entwicklung von einzelnen LLM-Chatbots zu ausgeklügelten Systemen, bei denen mehrere LLMs zusammenarbeiten, bevor wir uns mit einem konkreten Beispiel für ein Agentensystem befassen.
Von einem Sprachmodell zu mehreren Agenten
Die Möglichkeit, mit relativ geringem Aufwand Erfolge zu erzielen, bestand für Unternehmen mit LLMs bisher darin, diese zu nutzen, um als Chatbots mit Kunden zu interagieren oder die Produktivität der Mitarbeiter als digitale Assistenten zu verbessern. Trotz der Leichtigkeit, mit der diese Modelle diese beiden Rollen erfüllen können, gibt es Grenzen für den Nutzen eines einfachen Chatbots oder RAG-Systems für ein Unternehmen. Was passiert, wenn jemand mehr als eine eng umrissene Aufgabe erledigen muss, wie es heute beim Großteil der Wissensarbeit der Fall ist? Ein konkretes Beispiel kann sein, dass jemand zunächst mehrere Dokumente aus einer Datenbank suchen und abrufen muss, die relevantesten zusammenfasst und dann einen Bericht erstellt, der die wichtigsten Erkenntnisse aus den Zusammenfassungen enthält. Ein einzelner LLM, der dies versuchen würde, würde höchstwahrscheinlich an dieser mehrstufigen Aufgabe scheitern, die bei jedem Schritt unterschiedliche Fähigkeiten und Maßnahmen erfordert. Das unterstreicht die Bedeutung der ersten Eigenschaft von Agentensystemen: einzelne LLM-Agenten, die für aufgabenspezifische Rollen konzipiert sind.
Ein nützliches emergentes Merkmal von LLMs ist ihre Fähigkeit, in begrenztem, aber beeindruckendem Maße zu schlussfolgern. Diese Schlussfolgerungsfähigkeit wird deutlich, wenn man einem LLM ein Textstück gibt und es bittet, eine Frage zu beantworten, die sich auf diesen Text bezieht. Diese Schlussfolgerungsfähigkeit kann auch erweitert werden, um eine Aufgabe in kleinere Teile zu zerlegen – die dann an aufgabenspezifische Agenten weitergegeben werden könnten – oder um einen einfachen, aber spezifischen Handlungsweg basierend auf einem Eingabetext zu entscheiden.
Logisches Denken allein bringt einen jedoch nur bedingt weiter. In unserer Welt modularer, miteinander verbundener Systeme wird so viel Wert durch diese Verbindungen geschaffen und realisiert. Aber wie kann ein LLM mit externen Systemen interagieren? Hier kommt der Einsatz von Werkzeugen ins Spiel.
Obwohl die Nutzung von Werkzeugen durch LLMs alarmierend menschlich erscheinen mag, ist das dahinterliegende Prinzip weniger magisch, wenngleich genial. Stellen wir uns mal vor, wir wollten den Wetterbericht für Camps Bay in Kapstadt am ersten Weihnachtsfeiertag abrufen: Um sofort Informationen zu erhalten, würden wir wahrscheinlich eine Wetter-App auf dem Handy öffnen und den gewünschten Ort und das Datum über die Benutzeroberfläche der App eingeben. Diese Informationen würden dann über einen API-Endpunkt an den Server der Wetter-App gesendet, das Ergebnis zurückgegeben und der Wetterbericht uns angezeigt. Mit einem LLM könnte die Benutzeroberfläche der App ersetzt werden, indem die benutzende Person sagt: „Ich möchte das Wetter für Camps Bay, Südafrika am Mittwoch, den 25. Dezember 2024“. In diesem Fall würde das LLM die relevanten Informationen – den Ort und das Datum – extrahieren, diese an den Server der Wetter-App senden, das Ergebnis zurückerhalten und den App-Usern den Wetterbericht anzeigen. Dies ist, was unter „Werkzeugnutzung“ verstanden wird: Das LLM kann Informationen aus einem Text extrahieren und die relevanten Informationen an ein Programm oder eine API weitergeben, die eine spezifische Aufgabe ausführt.
Indem wir aufgabenspezifische Agenten, welche die Schlussfolgerungsfähigkeit besitzen, mit der Nutzung von Werkzeugen kombinieren, können wir Systeme von Schlussfolgerungsagenten schaffen, die nicht nur miteinander, sondern auch mit der Außenwelt interagieren können. An diesem Punkt können wir die Definition von Agenten und Agentensystemen formalisieren. Ein Agent ist eine Instanz eines LLMs, die eine klar definierte Aufgabe hat. Ein Agentensystem, teils auch agentisches oder agentenbasiertes System genannt, besteht aus sequenziellen Aufrufen zu verschiedenen Instanzen eines oder mehrerer LLMs (jedes davon ist ein individueller Agent), wobei sich jede LLM-Instanz auf die Ausführung einer klar definierten Teilaufgabe konzentriert. In fortgeschritteneren Agentensystemen können die Agenten miteinander interagieren. Beispielsweise, wenn die Aktionen von Unteragenten von einem anderen Agenten koordiniert werden. Diese Agenten können Zugriff auf externe Werkzeuge wie Datenbanken oder APIs haben, mit denen sie basierend auf den Text-Eingaben interagieren – wie im obigen Beispiel zur Nutzung von Werkzeugen.
Ein Agentensystem lässt sich am besten anhand eines konkreten Anwendungsfalls erklären: Wir stellen uns einmal vor, ein intelligentes System zu entwickeln, um eine Mahlzeit in einem gehobenen mexikanischen Restaurant zu bestellen, die von den Kunden abgeholt wird. Wir könnten diese Aufgabe in zwei kleinere Teilaufgaben aufteilen, und zwar:
- Auswahl des Menüartikels
- Zahlung
Um dieses System zu ermöglichen, würde es einen übergreifenden Router-Agenten geben, der die Gespräche – basierend auf dem Ziel der Benutzer – an einen dieser Unteragenten weiterleitet.
Jeder dieser Agenten ist eine separate Instanz eines LLMs. Jeder hat einen eigenen System-Prompt, der beschreibt, wie er operieren soll. Außerdem verfügen alle über ein separates Werkzeug: Der Menüartikel-Auswahl-Agent hat Zugriff auf eine Datenbank mit Menüartikeln und der Bezahl-Agent hat Zugang zu einem Zahlungs-Gateway über einen API-Endpunkt. Zu Beginn des Gesprächs würde der Router-Agent aus dem Gespräch schließen, dass der Nutzer noch kein Gericht ausgewählt hat und den Benutzer daher an den Menüartikel-Auswahl-Agenten weiterleiten. Dieser Agent würde dem Benutzer helfen, etwas zu finden, das seinem Geschmack und seiner Ernährungspräferenz entspricht, und das auf eine dialogische Weise. Sobald der Menüartikel ausgewählt wurde, würde der übergeordnete Router-Agent den Benutzer an den Bezahl-Agenten übergeben, um die Zahlungsdetails des Nutzers zu sammeln – erneut auf dialogische Art. Sobald die Zahlung erfolgreich war, würde dieser Agent dem Benutzer für seine Bestellung danken und ihm mitteilen, dass die Zahlung erfolgreich war.
Warum Agenten den Unterschied machen
Durch diese Evolution vom einzelnen, einsamen Agenten zu Systemen von Agenten beginnen wir, wirklich kognitive Systeme zu erschaffen. Indem wir eine dialogische Benutzeroberfläche mit einem System aus interagierenden, entscheidungsfindenden und Werkzeug nutzenden Agenten kombinieren, erweitern wir den Umfang und die Komplexität der Aktivitäten, die wir mit generativer KI ausführen können, erheblich. Genauso wie wir starke, interdisziplinäre Teams bilden, um großartige Ergebnisse bei der Arbeit zu erzielen, können wir mit GenAI weitaus komplexere Ziele erreichen, indem wir Aufgaben zwischen aufgabenspezifischen Agenten aufteilen. Indem wir unseren Designansatz auf einen umstellen, in dem die Arbeitsteilung klar definiert ist, entwerfen wir Systeme, bei denen das Ganze weitaus größer ist als die Summe seiner Teile.
Bei diconium data haben wir einige spannende Multi-Agenten-Systeme für eine Vielzahl von Anwendungsfällen entwickelt. Von Tools, die die Produktivität des Vertriebsteams drastisch steigern, bis hin zu einem Voice-First Sales Agent erfüllen unsere Lösungen existierende geschäftliche Bedürfnisse und bieten den Nutzenden „Wow“-Momente. Ihr wollt herausfinden, wie wir euch beim Entwickeln wegweisender GenAI-Tools weiterhelfen können? Kontaktiert uns und lasst uns gemeinsam die Herausforderungen eures Businesses angehen!