ai-agents-for-beginners

Multi-Agent Design

(Klicken Sie auf das obige Bild, um das Video zu dieser Lektion anzusehen)

Multi-Agenten-Entwurfsmuster

Sobald Sie an einem Projekt arbeiten, das mehrere Agenten umfasst, müssen Sie das Multi-Agent-Entwurfsmuster berücksichtigen. Allerdings ist nicht sofort klar, wann auf Multi-Agenten umgestiegen werden sollte und welche Vorteile dies bietet.

Einführung

In dieser Lektion möchten wir folgende Fragen beantworten:

Lernziele

Nach dieser Lektion sollten Sie in der Lage sein:

Was ist das große Ganze?

Multi-Agenten sind ein Entwurfsmuster, das ermöglicht, dass mehrere Agenten zusammenarbeiten, um ein gemeinsames Ziel zu erreichen.

Dieses Muster wird in vielen Bereichen angewendet, darunter Robotik, autonome Systeme und verteiltes Rechnen.

Szenarien, in denen Multi-Agenten anwendbar sind

Welche Szenarien eignen sich also gut für den Einsatz von Multi-Agenten? Die Antwort ist, dass es viele Szenarien gibt, in denen der Einsatz mehrerer Agenten besonders vorteilhaft ist, insbesondere in folgenden Fällen:

Vorteile der Nutzung von Multi-Agenten gegenüber einem einzelnen Agenten

Ein Ein-Agenten-System könnte für einfache Aufgaben gut funktionieren, aber bei komplexeren Aufgaben bietet der Einsatz mehrerer Agenten verschiedene Vorteile:

Nehmen wir als Beispiel die Buchung einer Reise für einen Nutzer. Ein Ein-Agenten-System müsste alle Aspekte des Buchungsprozesses abwickeln, von der Flugfindung bis zur Hotel- und Mietwagenreservierung. Um dies mit einem einzelnen Agenten zu erreichen, müsste dieser Tools für alle diese Aufgaben besitzen. Das könnte zu einem komplexen und monolithischen System führen, das schwer zu warten und zu skalieren ist. Ein Multi-Agenten-System hingegen könnte verschiedene Agenten haben, die jeweils auf Flugfindung, Hotelbuchung und Mietwagenreservierung spezialisiert sind. Das macht das System modularer, leichter wartbar und skalierbar.

Vergleichen Sie dies mit einem Reisebüro, das als Familienbetrieb geführt wird, gegenüber einem Franchise-Reisebüro. Das Familienbetrieb-Reisebüro hätte einen einzigen Agenten, der alle Aspekte der Reisebuchung übernimmt, während das Franchise unterschiedliche Agenten für verschiedene Aspekte des Buchungsprozesses hätte.

Bausteine zur Implementierung des Multi-Agent-Entwurfsmusters

Bevor Sie das Multi-Agent-Entwurfsmuster implementieren können, müssen Sie die Bausteine verstehen, aus denen das Muster besteht.

Machen wir dies am Beispiel der Reisebuchung für einen Nutzer konkreter. In diesem Fall umfassen die Bausteine:

Sichtbarkeit der Multi-Agenten-Interaktionen

Es ist wichtig, dass Sie nachvollziehen können, wie die einzelnen Agenten miteinander interagieren. Diese Transparenz ist entscheidend für das Debugging, die Optimierung und das Sicherstellen der Effektivität des Gesamtsystems. Dazu benötigen Sie Werkzeuge und Techniken zur Verfolgung von Aktivitäten und Interaktionen der Agenten. Dies kann in Form von Protokollierungs- und Überwachungstools, Visualisierungstools oder Leistungskennzahlen erfolgen.

Beispielsweise könnten Sie im Fall der Reisebuchung ein Dashboard haben, das den Status jedes Agenten, die Nutzerpräferenzen und -einschränkungen sowie die Interaktionen zwischen den Agenten zeigt. Dieses Dashboard könnte die Reisedaten des Nutzers anzeigen, die vom Flug-Agent empfohlenen Flüge, die vom Hotel-Agent empfohlenen Hotels und die vom Mietwagen-Agent vorgeschlagenen Mietwagen. So erhalten Sie eine klare Übersicht darüber, wie die Agenten miteinander interagieren und ob die Präferenzen und Einschränkungen des Nutzers eingehalten werden.

Schauen wir uns diese Aspekte genauer an:

Multi-Agenten-Muster

Werfen wir einen Blick auf einige konkrete Muster, die wir zur Erstellung von Multi-Agenten-Anwendungen verwenden können. Hier sind einige interessante Muster, die es zu betrachten gilt:

Gruppenchat

Dieses Muster ist nützlich, wenn Sie eine Gruppenchat-Anwendung erstellen möchten, in der mehrere Agenten miteinander kommunizieren können. Typische Anwendungsfälle für dieses Muster sind Teamzusammenarbeit, Kundensupport und soziale Netzwerke.

In diesem Muster repräsentiert jeder Agent einen Benutzer im Gruppenchat, und Nachrichten werden zwischen Agenten über ein Nachrichtenprotokoll ausgetauscht. Die Agenten können Nachrichten an den Gruppenchat senden, Nachrichten vom Gruppenchat empfangen und auf Nachrichten anderer Agenten antworten.

Dieses Muster kann mit einer zentralisierten Architektur umgesetzt werden, bei der alle Nachrichten über einen zentralen Server geleitet werden, oder mit einer dezentralisierten Architektur, bei der Nachrichten direkt ausgetauscht werden.

Group chat

Übergabe

Dieses Muster ist nützlich, wenn Sie eine Anwendung erstellen möchten, in der mehrere Agenten Aufgaben aneinander übergeben können.

Typische Anwendungsfälle sind Kundensupport, Aufgabenmanagement und Workflow-Automatisierung.

In diesem Muster repräsentiert jeder Agent eine Aufgabe oder einen Schritt in einem Workflow, und Agenten können Aufgaben basierend auf vordefinierten Regeln an andere Agenten übergeben.

Hand off

Collaborative Filtering

Dieses Muster ist hilfreich, wenn Sie eine Anwendung erstellen möchten, in der mehrere Agenten zusammenarbeiten, um Empfehlungen für Nutzer zu erstellen.

Der Grund, warum mehrere Agenten zusammenarbeiten sollten, liegt darin, dass jeder Agent über unterschiedliche Expertise verfügt und so in unterschiedlicher Weise zum Empfehlungsprozess beitragen kann.

Nehmen wir als Beispiel den Wunsch eines Nutzers, eine Empfehlung für die beste Aktie am Aktienmarkt zu erhalten.

Recommendation

Szenario: Rückerstattungsprozess

Betrachten wir ein Szenario, bei dem ein Kunde versucht, eine Rückerstattung für ein Produkt zu erhalten. In diesem Prozess können viele Agenten beteiligt sein. Unterteilen wir sie in spezifische Agenten für diesen Prozess und allgemeine Agenten, die in anderen Prozessen genutzt werden können.

Agenten, die spezifisch für den Rückerstattungsprozess sind:

Folgende Agenten könnten am Rückerstattungsprozess beteiligt sein:

Allgemeine Agenten:

Diese Agenten können in anderen Bereichen Ihres Geschäfts verwendet werden.

Es gibt also eine ganze Reihe von Agenten, sowohl spezifisch für den Rückerstattungsprozess als auch allgemeine Agenten, die in anderen Geschäftsbereichen genutzt werden können. Hoffentlich gibt Ihnen dies eine Vorstellung davon, wie Sie entscheiden können, welche Agenten Sie in Ihrem Multi-Agenten-System einsetzen.

Aufgabe

Entwerfen Sie ein Multi-Agenten-System für einen Kundenservice-Prozess. Identifizieren Sie die in den Prozess involvierten Agenten, ihre Rollen und Verantwortlichkeiten sowie wie sie miteinander interagieren. Berücksichtigen Sie sowohl agentenspezifische Komponenten für den Kundenservice als auch allgemeine Agenten, die in anderen Geschäftsbereichen eingesetzt werden können.

Denken Sie nach, bevor Sie die folgende Lösung lesen, möglicherweise benötigen Sie mehr Agenten, als Sie denken.

TIP: Denken Sie an die verschiedenen Phasen des Kunden-Support-Prozesses und berücksichtigen Sie auch Agenten, die für jedes System benötigt werden.

Lösung

Lösung

Wissensüberprüfungen

Frage: Wann sollten Sie den Einsatz von Multi-Agenten in Betracht ziehen?

Lösungsquiz

Zusammenfassung

In dieser Lektion haben wir uns das Multi-Agenten-Designmuster angesehen, einschließlich der Szenarien, in denen Multi-Agenten anwendbar sind, der Vorteile der Verwendung von Multi-Agenten gegenüber einem einzelnen Agenten, der Bausteine zur Implementierung des Multi-Agenten-Designmusters und wie man Einblick darin erhält, wie die mehreren Agenten miteinander interagieren.

Haben Sie weitere Fragen zum Multi-Agenten-Designmuster?

Treten Sie dem Microsoft Foundry Discord bei, um andere Lernende zu treffen, an Sprechstunden teilzunehmen und Ihre Fragen zu AI Agents beantwortet zu bekommen.

Zusätzliche Ressourcen

Vorherige Lektion

Planung und Design

Nächste Lektion

Metakognition in AI Agents


Haftungsausschluss:
Dieses Dokument wurde mit dem KI-Übersetzungsdienst Co-op Translator übersetzt. Obwohl wir uns um Genauigkeit bemühen, beachten Sie bitte, dass automatische Übersetzungen Fehler oder Ungenauigkeiten enthalten können. Das Originaldokument in seiner Ursprungssprache ist als maßgebliche Quelle zu betrachten. Für kritische Informationen wird eine professionelle menschliche Übersetzung empfohlen. Für Missverständnisse oder Fehlinterpretationen, die aus der Verwendung dieser Übersetzung entstehen, übernehmen wir keine Haftung.