Artikel

Autonome Agenten mit LLMs

Krzysztof Kąkol

Aktualisiert Oktober 10, 2025
9 Minuten

Einführung

Große Sprachmodelle (LLMs) werden werden mehr und mehr jeden Tag beliebter. Miele Anwendungsfälle immer noch drehen sich um typische Aufgaben der Inhaltserstellung, wie z.B. die Generierung von einfachem Text, Informationsextraktion, Zusammenfassung oder fortgeschrittenere Szenarien wie die Beantwortung von Fragen. Allerdings, gibt es eine wachsende Zahl von Diskussionen und Implementierungen, die sich um Agenten drehen, die repräsentieren diedie nächste Stufe für LLMs. 

Benutzerdefiniertes Wissen

Um viele der Aufgaben mit LLMs zu erledigen, verlassen wir uns normalerweise auf ihr inhärentes Wissen - ihre Fähigkeit, Fragen zu beantworten, Informationen zusammenzufassen oder zu extrahieren. Was aber, wenn wir ein Wissen nutzen möchten, das dem Modell fehlt?  

An dieser Stelle kommt Retrieval Augmented Generation (RAG) ins Spiel. Einfach ausgedrückt, ist RAG eine Methode, um die Eingabeaufforderung so zu konstruieren, dass neues Wissen (zumindest für das LLM) eingeführt wird. Um dieses Wissen zu erhalten, muss es normalerweise aus einer Datenbank extrahiert werden, die gemeinhin als Vektorspeicher bezeichnet wird. Der Prozess läuft wie folgt ab:  

  1. Der Benutzer stellt eine Frage.
  2. Relevantes Wissen wird in einem Vektorspeicher gesucht.
  3. Dieses Wissen wird zusammen mit der ursprünglichen Frage in die Aufforderung aufgenommen.
  4. Der LLM reagiert auf dieses neu gewonnene Wissen.

Auch wenn es einfach erscheint, liegt die Herausforderung in der Suche nach relevantem Kontext, was kein einfaches Unterfangen ist. Um Effizienz und Genauigkeit zu gewährleisten, muss der ursprüngliche Inhalt in Teile zerlegt werden - eine Aufgabe, die sich oft als schwierig erweist, wenn man gleichzeitig eine hohe Suchqualität anstrebt.  

Mehr als individuelles Wissen

RAG funktioniert gut, wenn der Inhalt bekannt und relativ statisch ist (auch wenn er sich ändern kann, was Aktualisierungen des Vektorspeichers erfordert). Diese Methode wird häufig in Chatbots oder virtuellen Assistenten verwendet, die benutzerdefiniertes Wissen nutzen, um Benutzern bei der Beantwortung ihrer Fragen zu helfen.  

Was aber, wenn das Wissen nicht statisch ist? Denken Sie an Wetterinformationen, NASDAQ-Aktienkurse oder unsere eigene API, die z.B. eine Liste der angebotenen Reiseziele für ein Reisebüro zusammen mit deren Preisen abrufen kann. Dies stellt eine andere Herausforderung dar, eine, die nicht neu ist: Bei der Entwicklung eines Bot, müssen Sie kwann die spezifischen externen Tools aufgerufen werden sollen und was der Benutzer erwartet. Ess wie ein komplexes System von Regeln - zum Beispiel:

"Wenn der Benutzer eine Pizza bestellen möchte, bitten Sie ihn, die Größe anzugeben; die verfügbaren Größen können über den folgenden Endpunkt abgerufen werden."

Die Lösung für eine solche Herausforderung ist bereits bekannt und weit verbreitet: absichtsbasierte Chatbots. 

Intent-basierte Chatbots 

Diese Chatbots stützen sich auf Algorithmen für maschinelles Lernen, die auf Textinformationen basieren (allerdings nicht auf LLMs). Lassen Sie uns einen Blick auf die Struktur eines solchen Bots werfen.  

Zu Beginn müssen Sie eine Absicht definieren - nehmen wir als Beispiel einen Pizzabestellvorgang. Eine Absicht kapselt den Wunsch des Benutzers ein, z. B. "Ich möchte eine Pizza bestellen". Um diese Absicht zu erfüllen, muss der Benutzer bestimmte Angaben machen, z. B. die Größe, die Art der Pizza und den Belag, damit der Bot den Prozess ausführen und eine Bestellung erstellen kann. Klingt einfach? Nicht unbedingt. Es gibt zwei große Herausforderungen:  

  1. Texterkennung. Ein Benutzer könnte die Konversation mit "Hallo, kann ich eine Pizza bestellen?" beginnen, er kann aber auch direkt zu "Haben Sie Napoli?" übergehen. Der Bot muss erkennen, wann der Prozess zur Erfüllung der Absicht beginnt. Als Bot-Designer müssen Sie die Reaktionen der Benutzer in jeder Phase vorhersehen. Der Bot muss zwar nicht 100%ig genau sein, aber Bot-Engines wie Amazon Lex werden anhand von Beispieläußerungen trainiert, um die Absichtserkennung zu verbessern. Dies erfordert eine sorgfältige Berücksichtigung der potenziellen Benutzerreaktionen.
  2. Umgang mit Abweichungen vom erwarteten Pfad. Die Entwicklung des Bots auf der Grundlage des idealen Szenarios ist relativ einfach. Was aber, wenn der Benutzer nach der Aussage "Ich möchte Napoli" sofort nachschiebt: "Nein, nein, ich möchte Margherita, und zwar mit Peperoni!" Wie erkennt und interpretiert der Bot die wahre Absicht des Benutzers? Dieser Aspekt der Entwicklung von absichtsbasierten Bots erfordert erhebliche Anstrengungen im Bereich der Benutzererfahrung, da er im Wesentlichen als eine weitere Art von Benutzeroberfläche fungiert.

Um diese Herausforderungen zu meistern, müssen Sie den Benutzern oft explizite Auswahlmöglichkeiten bieten, damit sie die Slots genau ausfüllen können, z. B. "Welche Größe der Pizza möchten Sie bestellen? [klein] [mittel] [groß]". Dies vereinfacht zwar den Ablauf, weicht aber von der natürlichen Konversation ab und reduziert die Interaktion auf die schrittweise Auswahl von Optionen. Der Prozess ist funktional, aber es fehlt ihm an Spontaneität.  

Intent-basierter Botfluss

FiAbbildung 1. Allgemeines Schema des intent-basierten Botflusses. Alle Absichten und Slots müssen sorgfältig entworfen, und die Haken müssen an den entsprechenden Schlitzen angebracht werden.  

Konversations-Bots

Mit dem Aufkommen von LLMs wurden Conversational Bots weit verbreitet. Benutzer konnten sich auf verschiedenen Plattformen mit Bots unterhalten. Dies führte zu amüsanten Situationen, wie z.B. einem Benutzer, der Python-Code auf der Website eines Autohändlers generierte - sicherlich nicht das beabsichtigte Ergebnis.  

Konversationsroboter boten auch ein hohes Maß an Freiheit und Einfachheit bei ihrer Einrichtung. Sie zu entwerfen, erforderte keine stundenlange Arbeit. Sie konnten einfach einen Bot mit einer typischerweise komplexen Systemabfrage erstellen, und voilà! Später wurde RAG auch zur Integration von Wissen eingesetzt - wir hatten ein interaktives Call Center, das unser internes Wissen nutzte, um den Benutzern zu helfen.   

Nun zeichnet sich eine neue Entwicklung ab: die Entwicklung von intentionalen Bots ohne übermäßig komplexe UX-Prozesse, die es dem Bot ermöglichen, Aufgaben auszuführen, ohne starr zu definieren, wie wie diese Aufgaben ausgeführt werden sollen. 

Wir möchten den LLM z.B. anweisen: "Handeln Sie wie ein Pizzaservice. Wenn der Kunde eine Pizza bestellen möchte, fragen Sie ihn, welche Größe er haben möchte (aus den möglichen 3: klein, mittel und groß), welche Sorte (unter Verwendung der vorgegebenen Sorten: Napoli, Capricciosa, Pepperoni) und wie die Lieferadresse lautet. Wenn Sie alle Informationen haben, geben Sie eine Bestellung auf und senden die E-Mail ab." Um die Einfachheit dieses Ansatzes zu demonstrieren, haben wir die oben genannte Eingabeaufforderung in das Chatbot-Fenster des Spielplatzes von Amazon Bedrock eingefügt (unter Verwendung des Modells Claude 2 von Anthropic). Hier sind die Ergebnisse:  

Erste Systemaufforderung: Handeln Sie wie ein Pizzaservice. Wenn der Kunde eine Pizza bestellen möchte, fragen Sie ihn nach der Größe (von 3 möglichen: klein, mittel und groß), der Sorte (unter Verwendung der vorgegebenen Sorten: Napoli, Capricciosa, Peperoni) und der Lieferadresse. Wenn Sie alle Informationen haben, geben Sie eine Bestellung auf und senden die E-Mail ab.  

Bot: Vielen Dank, dass Sie sich an PizzaBot wenden! Ich nehme gerne Ihre Pizzabestellung entgegen.   

Welche Größe möchten Sie für den Anfang wählen - klein, mittel oder groß? 

Kunde: Medium bitte 

Bot: Hört sich gut an, medium ist es auch. Welche Art von Pizza möchten Sie? Sie haben die Wahl zwischen Napoli, Capricciosa und Peperoni.  

Kunde: Peperoni  

Bot: Ausgezeichnet, eine mittelgroße Peperoni-Pizza. Und zum Schluss brauche ich noch die Lieferadresse, bitte.  

Kunde: Kann ich die Pizzasorte in Napoli ändern?  

Bot: Kein Problem, wir ändern das in eine mittlere Napoli-Pizza anstelle von Pepperoni. Können Sie bitte die Lieferadresse bestätigen?  

Kunde: Sicher, Gdańsk, Grunwaldzka 25. Und bitte ändern Sie die Größe auf groß.  

Bot: Verstanden, ich aktualisiere die Bestellung auf eine große Napoli-Pizza für die Lieferung an: 

Gdańsk, Grunwaldzka 25 

Perfekt, Ihre Bestellung für eine große Napoli-Pizza wurde aufgegeben und wird in Kürze nach Gdańsk, Grunwaldzka 25 geliefert. Ich schicke Ihnen eine Bestätigungs-E-Mail mit den Einzelheiten Ihrer Bestellung und der voraussichtlichen Lieferzeit. Vielen Dank, dass Sie PizzaBot gewählt haben!  

Fantastisch, nicht wahr? Wir müssen nicht einmal Szenarien für die Änderung von Bestellungen während des Gesprächs entwerfen. Allerdings fehlt hier ein entscheidendes Element - die Pizzatypen, Größen, Definitionen usw. können nicht erdacht werden und müssen anhand unserer internen Daten bereitgestellt werden, die sich häufig ändern können. Außerdem erfordert das Versenden einer Bestellung per E-Mail den Aufruf eines externen Endpunkts. Wie können wir das erreichen? Durch die Verwendung von Agenten . 

Jetzt können wir unsere Kräfte bündeln: Der LLM-Bot wird die Konversation mit Hilfe von Eingabeaufforderungen leiten. Was tut es Durchschnitt? Wir  haben erwähnt in der Absichtsbasierte Bots' description dass wir brauchen auf erstellen ausdrücklich alle geplant Absichten - in anderen Worte, wir brauchen auf kennen. was der Benutzer wirklich braucht, was Fragen wir brauchen auf stellen und was antwortet sind erwartet. Diese verarbeiten für Absichtsbasiert Bots ist schwierig und erfordert eine Menge UX Planung. Wenn mit LLMs wir haben zu angeben. das Gleiche, aber nur in einfach Englisch - nicht mehr schmerzhaft Prozess design und Absicht Erstellung! 

AbsichtVsKonversation2

Abbildung 2. Natürlicher Gesprächsablauf mit Hilfe der komplexen Systemaufforderung und API-Spezifikation 

 

Wenn wir darüber hinaus Informationen über verfügbare Tools bereitstellen (z. B. einen E-Mail-Absender oder einen Endpunkt für die Auflistung von Pizzen), weist uns der LLM an, was zu tun ist. Wenn wir die Antwort richtig parsen (auf programmatische Weise), können wir den externen Dienst aufrufen, die Informationen abrufen, sie an den LLM zurückgeben und eine menschenähnliche Antwort erhalten. Dieser Prozess ist vergleichbar mit der Beschaffung von Kontext in RAG - der Unterschied liegt darin, dass RAG die Verwendung statischer, indizierter Inhalte erlaubt, während Agenten dynamischen Kontext nutzen, indem sie externe APIs oder andere Informationsquellen aufrufen.  

Es sind zahlreiche andere Szenarien möglich. Nehmen wir zum Beispiel ein Reisebüro mit einer internen API, die Endpunkte bereitstellt, die Listen von Reisezielen und Details zu bestimmten Reisezielen zurückgeben und Buchungen ermöglichen. Mit dieser Einrichtung können Sie einen einfachen Bot entwickeln, der Kunden bei der Suche nach verlockenden Angeboten und bei Buchungen unterstützt.  

Automatisierung 

Dieses Konzept kann erweitert werden, um Automatisierungsprozesse zu implementieren. Betrachten wir einen Arbeitsablauf, bei dem Daten validiert, umgewandelt oder textuell geparst werden müssen. Die Konstruktion einer solchen Pipeline unter Verwendung von LLMs ist komplizierter als die oben beschriebene Implementierung eines Bots, aber sie ist dennoch machbar. Außerdem führt dies zu einer flexibleren Prozessverwaltung und einer einfacheren Ablaufdefinition im Vergleich zu typischen Orchestrierungstools. Außerdem ist die Änderung der Prozessdefinition einfacher, da sie in Prompts in einfachem Englisch definiert ist.  

Es ist wichtig, dass Sie realistisch bleiben. Die Implementierung von Agenten ist keine einfache Aufgabe, denn sie erfordert die Erstellung komplexer Prompts, die das verfügbare Toolset und die Codierung zur Umwandlung der LLM-Antwort in API-Aufrufe offenlegen. Dennoch kann diese Komplexität durch den Einsatz von Orchestrierungs-Tools wie Amazon Bedrock gemildert werden.  

Zusammenfassung

Agenten bieten uns eine große Freiheit bei der Entwicklung komplexer Bots und Workflows, ohne dass wir Stunden in die Entwicklung von UX-Flows oder ausgefeilten Regelwerken investieren müssen. Dennoch gibt es einen Kompromiss - da LLMs von Natur aus unbestimmt sind, müssen Agenten sorgfältig entworfen werden, um akzeptable Antworten zu liefern und ihre Aufgaben genau auszuführen. Wenn Sie dies tun, erhalten Sie eine bemerkenswerte Belohnung: die Fähigkeit, intelligente Assistenten zu schaffen, die operate (fast) wie ein Mensch! 

Um herauszufinden, wie Ihr Unternehmen generative KI und LLMs nutzen kann, besuchen Sie unsere Seite über große Sprachmodelle.

Contact

Let’s discuss how we can support your journey.