KI Agents: Was, wie, warum?
Die Welt rund um KI steht nicht still und wird immer mehr im Alltag integriert. Eines der spannendsten Buzzwords in dem Zusammenhang ist derzeit "KI Agents".
In diesem Newsletter schaue ich mir das Thema genauer an und gehe darauf ein
- wo der Unterschied zu ChatGPT, Claude und Co ist,
- welche Anwendungsfälle sich damit gut umsetzen lassen, und
- mit welchen Tools ich meine eigenen KI Agents baue.
Definition
Ein KI-Agent (ich nenne sie ab hier meist nur noch "Agents") definiere ich als
...ein Softwarekonstrukt, das KI Sprachmodelle (LLMs) nutzt, um vorgegebene Aufgaben zu analysieren, Datenflüsse einer Anwendung autonom zu steuern, um Lösungen mit Hilfe von externem Wissen und Tools herbeizuführen.
Oder einfach gesagt: Agents interagieren mit ihrer Umgebung, indem sie selbständig Daten aus verfügbaren Tools sammeln, analysieren und aufbereiten. Ihr Verhalten können sie dynamisch anzupassen und so ziemlich effizient kontextabhängige Fragen beantworten und Probleme lösen - und das alles in Echtzeit als Reaktion auf z.B. eine Chatanfrage.
KI-Agents bestehen aus 5 Kern-Komponenten:
- Wahrnehmung (Input): Erfassung von Eingaben
- Gehirn (LLM): Verarbeitung, Planung und Anpassung
- Speicher: Verwaltung von Kurzzeit- und Langzeitinformationen
- Wissen: Zugriff auf externe Wissensquellen
- Aktionen: Dynamische Nutzung von Werkzeugen für konkrete Aufgaben
An dieser Stelle wird bereits die Abgrenzung zu klassischen LLM Chatbots deutlich. Arbeite ich z.B. mit Claude oder ChatGPT, werden zwar Teile davon ebenfalls genutzt, aber nie in dem Umfang, wie es ein Agent kann.
1. Wahrnehmung (Input / Trigger)
Der Start einer Agent-Interaktion kann über unterschiedlichste Wege erfolgen. Typische Anwendungsfälle sind derzeit Chats, in denen ein Nutzer eine Frage oder Aufgabe formuliert, die der Agent ausführt und eine Antwort zurückspielt. Meist ist das keine Einbahnstraße, sondern ein fortlaufender Prozess (Chatverlauf).
Statt der klassischen Chatmaske sind aber auch weitere Trigger denkbar, z.B.
- Messenger (Social Media)
- Telefon (Sprache)
- Automation (Workflows)
Ob also eine eingehende E-Mail, eine WhatsApp Nachricht oder eine automatisierte Erreichung eines Schwellenwertes im Rahmen einer Automatisierung (wie z.B. eine bestimmte Temperatur, ein Lagerbestand, etc.) - alles ist denkbar.
2. Brain (LLM)
Der Kern eines Agents ist und bleibt ein Large Language Model (LLM). Davon gibt es immer mehr, vor allem in der Open Source Welt. Zu den bekanntesten und fähigsten multimodalen Modellen gehören derzeit
- ChatGPT,
- Claude,
- Ollama,
- Groq.
Diese werden typischerweise per API Schnittstelle angebunden und über sogenannte "AI Embeddings" in den Prozess integriert, um aus Daten (aus dem Speicher oder einer Wissensdatenquelle, s.u.) sinnhaftes Wissen zu erzeugen, welches an den User zurückgespielt werden kann.
Embeddings ermöglichen AI Agents damit ein tieferes Verständnis von Daten. Sie verbessern deren Fähigkeit, Informationen zu speichern, zu finden und auf intelligente Weise zu verarbeiten. Sie sind außerdem ein zentraler Baustein für KI-typische Anwendungsfälle wie z.B. semantische Suche, personalisierte Empfehlungen und kontextbewusste Interaktionen.
3. Speicher (Memory)
Bei der Interaktion mit KI unterscheidet man zwischen einem Kurzzeitgedächtnis und einem Langzeitgedächtnis.
Wer mit ChatGPT oder einer anderen LLMs chattet, der kann in der Regel auf Wissen aus dem aktuellen Chat-Kontext zurückgreifen, dem Kurzzeitgedächtnis.
Aber was, wenn der Kontext deutlich komplexer wird? Oder was, wenn auf Wissen von vor x Tagen/Wochen/Monaten zurückgegriffen werden soll? In einem Business Kontext könnte das z.B. eine Sitzplatzreservierung oder eine Essens-Präferenz bei einer Flugbuchung sein.
Damit der Agent diese Information nicht immer wieder neu abfragen muss, nutzen Agents externe Speicher, bzw. Datenbanken.
Im Gegensatz zu Wissen (s. nächster Punkt), beinhalten diese Speicher im Rahmen der Interaktion erfasste Daten wie im obigen Beispiel. Der Nutzer hatte vorher z.B. eine Reservierung getätigt, aus der Informationen erkannt und abgespeichert wurden.
Gespeichert werden solche Informationen, je nach Kontext, meist in
- Datenbanken wie PostgreSQL (Open Source). Diese Technologie nutzen z.B. auch bekannte Tools wie Supabase oder Xano.
- Vector-Datenbanken wie z. B. Pinecone, Qdrant oder auch Supabase (kann ebenfalls Vectoren speichern).
4. Wissen
Im Gegensatz zu Speicher (Memory), geht es bei Wissen um externe Informationen, die nicht zuvor im Prozess abgefragt wurden. Das können Websites / Blogsposts, Spreadsheets, PDF Dokumente, Wetterdaten, usw. sein.
Um diese Informationen anzuzapfen, können sie entweder vorab in Vector-Datenbanken gespeichert werden, oder nach Bedarf z.B. in Echtzeit über eine API Schnittstelle oder einen Scraper abgefragt werden. API Schnittstellen greifen dabei auf strukturierte Daten zu (sofern die Wissensquelle das zulässt), wohingegen Scraper einfach den Aufruf einer Seite (z.B. bei Google oder Google Maps) simulieren und die Informationen darin lesen und interpretieren. Da es hier keine strukturierten Daten gibt, ist diese Wissensquelle i.d.R. manchmal nicht so zuverlässig.
Wenn API Schnittstellen ganz neu für dich sind, empfehle ich diesen Artikel zum Einstieg:
5. Aktionen
Aktionen beziehen sich im Agent-Kontext auf die Fähigkeit, gezielte Operationen oder Aufgaben auszuführen, um ein bestimmtes Ziel zu erreichen. Diese Aktionen können das Ergebnis einer Entscheidung sein, die der Agent auf Basis von Wahrnehmung/Planung (1), Speicher (3) und Wissen (4) Speicher trifft. Aktionen machen einen Agent praktisch anwendbar, da er nicht nur Informationen verarbeitet, sondern aktiv in der realen oder digitalen Welt agieren kann.
Das Besondere daran ist, dass der Agent die Auswahl an Aktionen
- dynamisch,
- flexibel,
- mit Tools integriert, und
- autonom trifft.
Er entscheidet also selbständig, welche Aktion zielführend ist, und führt diese durch.
Beispiele:
API-Aufrufe
- Beispiel: Ein Reiseagent ruft eine Flug-API auf, um Echtzeitinformationen zu Flugpreisen und Sitzplätzen zu erhalten.
Datenbankabfragen
- Beispiel: Ein Kundensupport-Agent sucht in einer Kundendatenbank nach bisherigen Support-Tickets.
Automatisierte Prozesse (Workflows)
- Beispiel: Ein Agent automatisiert den Buchungsprozess für einen Flug: Suche, Auswahl, Zahlung und Bestätigung.
Informationsbeschaffung aus dem Web (Web Scraping)
- Beispiel: Ein Agent sammelt aktuelle Nachrichten oder Produktinformationen von Websites.
E-Mail- oder Nachrichtensendungen
- Beispiel: Nach einer erfolgreichen Buchung sendet der Agent eine E-Mail mit der Reiseroute.
Steuerung von Systemen oder Geräten
- Beispiel: Ein Agent dimmt das Licht in einem Smart-Home-System basierend auf einem Sprachbefehl.
Tool-Nutzung (z. B. Taschenrechner, Übersetzer)
- Beispiel: Ein Agent nutzt einen Taschenrechner, um komplexe Berechnungen durchzuführen.
1. Zugriff auf exklusiven Content (wie auch auf den Rest dieses Newsletters)
2. Zugang zur geschlossenen LSWW Community, in der wir über Fragen, Tools und Anleitungen rund um die hier beschriebenen Themen diskutieren.
Tools, mit denen du Agents bauen kannst
Jetzt, wo die Theorie sitzt, ist die Frage, wie man Agents nun am besten bauen kann.
Wer mit einem geschlossenen System leben kann und mit etwas Anleitung loslegen will, der könnte z.B. mit Tools wie Botpress* recht schnell loslegen.