Agenten- und Multi-Agenten-Anwendungen#
Ein Agent ist eine Software-Entität, die über Nachrichten kommuniziert, ihren eigenen Zustand aufrechterhält und als Reaktion auf empfangene Nachrichten oder Zustandsänderungen Aktionen ausführt. Diese Aktionen können den Zustand des Agenten ändern und externe Effekte erzielen, wie z. B. das Aktualisieren von Nachrichtenprotokollen, das Senden neuer Nachrichten, das Ausführen von Code oder das Tätigen von API-Aufrufen.
Viele Softwaresysteme können als eine Sammlung unabhängiger Agenten modelliert werden, die miteinander interagieren. Beispiele hierfür sind
Sensoren auf einem Fabrikboden
Verteilte Dienste, die Webanwendungen ermöglichen
Geschäftsprozesse, an denen mehrere Beteiligte beteiligt sind
KI-Agenten, wie z. B. solche, die auf Sprachmodellen (z. B. GPT-4) basieren, welche Code schreiben, mit externen Systemen interagieren und mit anderen Agenten kommunizieren können.
Diese Systeme, die aus mehreren interagierenden Agenten bestehen, werden als Multi-Agenten-Anwendungen bezeichnet.
Hinweis
KI-Agenten verwenden typischerweise Sprachmodelle als Teil ihres Software-Stacks, um Nachrichten zu interpretieren, Schlussfolgerungen zu ziehen und Aktionen auszuführen.
Merkmale von Multi-Agenten-Anwendungen#
In Multi-Agenten-Anwendungen können Agenten
Innerhalb desselben Prozesses oder auf derselben Maschine laufen
Auf verschiedenen Maschinen oder über organisatorische Grenzen hinweg arbeiten
In verschiedenen Programmiersprachen implementiert sein und unterschiedliche KI-Modelle oder Anweisungen verwenden
Gemeinsam auf ein gemeinsames Ziel hinarbeiten und ihre Aktionen durch Messaging koordinieren
Jeder Agent ist eine in sich geschlossene Einheit, die unabhängig entwickelt, getestet und bereitgestellt werden kann. Dieses modulare Design ermöglicht die Wiederverwendung von Agenten in verschiedenen Szenarien und deren Kombination zu komplexeren Systemen.
Agenten sind von Natur aus komponierbar: einfache Agenten können zu komplexen, anpassungsfähigen Anwendungen kombiniert werden, wobei jeder Agent eine spezifische Funktion oder einen Dienst zum Gesamtsystem beiträgt.