Kern des Patterns
Multi-Agent Collaboration ist ein Pattern, bei dem mehrere Agenten an einem Ziel arbeiten, Ergebnisse austauschen, sich gegenseitig pruefen und ein gemeinsames finales Output erzeugen.
Wann sinnvoll: wenn eine Aufgabe mehrere Rollen oder Expertisen plus gegenseitige Validierung benoetigt.
Statt des Modells "ein Agent macht alles" laeuft das System so:
- verteilt Rollen auf Agenten
- organisiert gemeinsamen Kontext
- startet mehrere Interaktionsrunden
- sammelt ein abgestimmtes Ergebnis

Problem
Stell dir vor, du musst einen Investment-Report vorbereiten.
Dafuer braucht es gleichzeitig:
- Markt- und Wettbewerbsanalyse
- Berechnung eines Finanzmodells
- Pruefung rechtlicher Risiken
- Zusammenfuehrung zu einer logischen Gesamtaussage
Wenn ein Agent alles erledigt, wechselt er staendig zwischen Rollen und verliert Fokus.
Ein einzelner Agent liefert meist entweder Tiefe in einem Teil oder den Gesamtblick, aber selten beides gut.
Das fuehrt oft zu:
- wichtigen Details, die fehlen
- vermischten Rollen: Analyst, Jurist und Editor in einer Antwort
- Widerspruechen zwischen Dokumentabschnitten
- finalem Text, der geschlossen wirkt, aber schwach validiert ist
Das ist das Problem: fuer eine komplexe Multi-Domain-Aufgabe reicht ein Agent meist nicht aus.
Loesung
Multi-Agent Collaboration verteilt Arbeit auf spezialisierte Agenten und fuehrt Ergebnisse in Runden zusammen.
Analogie: wie ein Fachgremium. Jeder verantwortet einen Teil, danach gleicht das Team die Ergebnisse ab. Das finale Ergebnis entsteht durch Abstimmung, nicht durch eine Einzelmeinung.
Schluesselprinzip: Entscheidend sind nicht viele Agenten, sondern klare Rollen, Austausch von Zwischenergebnissen und Abstimmungsregeln.
Jeder Agent liefert ein Teilergebnis, waehrend die Collaboration-Layer den Prozess steuert:
- Rollen zuweisen (Assign Roles): Verantwortung nach Domains verteilen
- Arbeiten (Work): Ergebnisse von jedem Agenten erhalten
- Austausch/Review (Exchange/Review): gegenseitig pruefen und verfeinern
- Konflikte loesen (Resolve): Widersprueche zwischen Schlussfolgerungen entfernen
- Finale Synthese (Synthesize): gemeinsames finales Output bauen
Das liefert:
- mehr Tiefe pro Domain
- gegenseitige Querpruefung zwischen Agenten
- weniger uebersehene Aspekte
- abgestimmte finale Schlussfolgerung
Funktioniert gut, wenn:
- Rollen und Verantwortungsgrenzen klar sind
- Shared State und Message Format strukturiert sind
- die Rundenzahl begrenzt ist (
max_rounds) - Resolve-Regeln und Ready-Kriterium definiert sind
Das Modell kann "wollen", unendlich nachzuschaerfen, aber collaboration-policy beendet den Prozess innerhalb der gesetzten Grenzen.
Wie es funktioniert
Agenten sind nicht voneinander isoliert.
Sie interagieren ueber Shared State: Blackboard, Shared Memory oder eine strukturierte Message Queue.
Beschreibung des gesamten Ablaufs: Assign Roles → Work → Exchange → Synthesize
Rollen zuweisen (Assign Roles)
Das System definiert Verantwortung: Research, Analyse, Validierung, Synthese.
Arbeiten (Work)
Jeder Agent fuegt seinen Beitrag in den gemeinsamen Zustand ein.
Austausch (Exchange)
Agenten lesen Ergebnisse der anderen, kommentieren, klaeren Widersprueche und verbessern den gemeinsamen Zustand.
Synthese (Synthesize)
Nach mehreren Runden sammelt das System ein abgestimmtes finales Output.
Im Code sieht das so aus
agents = [research_agent, finance_agent, risk_agent]
board = {"goal": goal, "draft": {}, "notes": []}
def find_conflicts(draft):
# Vereinfachtes Beispiel: wenn Agenten-Schlussfolgerungen abweichen, ist es ein Konflikt.
summaries = {str(value).strip().lower() for value in draft.values()}
return [] if len(summaries) <= 1 else ["Abstimmung der Schlussfolgerungen erforderlich"]
for round_no in range(1, max_rounds + 1):
# 1) Jeder Agent schreibt seinen Teil auf das gemeinsame Board
board["draft"]["research"] = research_agent.work(board)
board["draft"]["finance"] = finance_agent.work(board)
board["draft"]["risk"] = risk_agent.work(board)
# 2) Pruefen, wo Schlussfolgerungen einander widersprechen
conflicts = find_conflicts(board["draft"])
# 3) Ohne Konflikte kann beendet werden
if not conflicts:
break
# 4) Mit Konflikten: speichern und naechste Runde starten
board["notes"].append(conflicts)
final_report = build_final_report(board)
return final_report
Kurz: Agenten arbeiten nicht "jeder fuer sich", sondern ueber ein gemeinsames board, auf dem Beitraege und Konflikte fuer alle sichtbar sind.
So sieht das waehrend der Ausfuehrung aus
Goal: finalen Bericht fuer eine komplexe Unternehmenspruefung erstellen
Runde 1:
- Research Agent: Marktueberblick hinzugefuegt
- Finance Agent: Finanzberechnungen hinzugefuegt
- Risk Agent: rechtliche Risiken hinzugefuegt
- System findet Konflikt: "optimistische Wachstumsprognose" vs "regulatorische Einschraenkungen"
- Zwischen Runden: Konflikt in board["notes"] gespeichert und zur Ueberarbeitung zurueckgegeben
Runde 2:
- Finance Agent berechnet Modell unter Beruecksichtigung der Risiken neu
- Research Agent praezisiert Wettbewerberdaten
- Risk Agent validiert aktualisierte Annahmen
- System findet neuen Konflikt: "schneller Markteintritt" vs "zusaetzliche regulatorische Anforderungen"
- Zwischen Runden: strittige Punkte erneut zur Ueberarbeitung gesendet
Runde 3:
- Agenten stimmen letzte Widersprueche ab
- Keine Konflikte mehr
- System erzeugt finalen Bericht
Vollstaendiges Multi-Agent-Collaboration-Beispiel
Wann es passt - und wann nicht
Passt
| Situation | Warum dieses Pattern passt | |
|---|---|---|
| ✅ | Multi-Domain-Aufgabe mit unterschiedlicher Expertise | Jeder Agent bringt Spezialisierung ein, das Ergebnis wird zu einer Entscheidung zusammengefuehrt. |
| ✅ | Qualitaet ist wichtiger als minimale Latenz | Zusaetzliche Abstimmungsrunden erhoehen Qualitaet, auch wenn Antwortzeit steigt. |
| ✅ | Gegenseitige Validierung ist erforderlich | Agenten finden Luecken der anderen ueber Cross-Review. |
| ✅ | Ein Agent verpasst oft Aspekte | Collaboration reduziert Blind Spots durch unterschiedliche Rollen und Perspektiven. |
Passt nicht
| Situation | Warum dieses Pattern nicht passt | |
|---|---|---|
| ❌ | Aufgabe ist einfach und gleichfoermig | Koordinations-Overhead ist groesser als der praktische Nutzen. |
| ❌ | Kritisch minimale Antwortzeit | Mehrere Austausch-Runden erhoehen Latenz. |
| ❌ | Keine Infrastruktur fuer Shared State und Synchronisierung | Ohne gemeinsamen Kontext und Koordination sind Agenten-Ergebnisse schwer abstimmbar. |
Denn Collaboration fuegt zusaetzliche Kommunikationsrunden und Koordinations-Overhead hinzu.
Unterschied zu Orchestrator
| Orchestrator | Multi-Agent Collaboration | |
|---|---|---|
| Struktur | Zentraler Koordinator | Gemeinsame Arbeit mehrerer Agenten in Runden |
| Interaktionstyp | Ueberwiegend Teilaufgaben-Delegation | Austausch von Zwischenergebnissen und gegenseitiges Review |
| Optimierung | Ausfuehrungsgeschwindigkeit und Flow-Control | Entscheidungsqualitaet und Multi-Domain-Konsistenz |
| Risiko | Falsches Dispatching | Konflikte zwischen Agenten-Antworten |
Orchestrator beantwortet: "wie Arbeit verteilen".
Multi-Agent Collaboration beantwortet: "wie Agenten gemeinsam eine Entscheidung abstimmen".
Wann Multi-Agent Collaboration verwenden (vs andere Patterns)
Verwende Multi-Agent Collaboration, wenn mehrere Agenten ein gemeinsames Output liefern muessen und ihre Schlussfolgerungen konfligieren koennen.
Kurzer Test:
- wenn du "unterschiedliche Sichtweisen in eine finale Schlussfolgerung abstimmen" musst -> Multi-Agent Collaboration
- wenn es reicht, "Aufgaben in Schritten zu uebergeben und Ergebnis zu sammeln" -> Orchestrator Agent
Vergleich mit anderen Patterns und Beispiele
Schnelluebersicht:
| Wenn die Aufgabe so aussieht... | Verwende |
|---|---|
| Ein bester Ausfuehrer soll ausgewaehlt werden | Routing Agent |
| Es gibt eine Schrittfolge und die Reihenfolge ist wichtig | Orchestrator Agent |
| Ein Policy-Check vor Ergebnis ist noetig | Supervisor Agent |
| Mehrere Agenten muessen zu einer Schlussfolgerung kommen | Multi-Agent Collaboration |
Beispiele:
Routing: "Kunde fragt nach Rueckerstattung - an Billing schicken, nicht an Sales".
Orchestrator: "Release vorbereiten: zuerst Changelog, dann QA, dann Deploy".
Supervisor: "Vor E-Mail-Versand Policies, Compliance und verbotene Versprechen pruefen".
Multi-Agent Collaboration: "Marketing, Legal und Product muessen einen finalen Kampagnentext abstimmen".
Wie man es mit anderen Patterns kombiniert
- Collaboration + Supervisor: Sicherheitsregeln werden fuer jeden Agenten und jede Runde geprueft.
- Collaboration + Orchestrator: Orchestrator synchronisiert Reihenfolge und Abhaengigkeiten zwischen Agentengruppen.
- Collaboration + RAG: alle Agenten arbeiten auf derselben validierten Wissensbasis, um Widersprueche zu reduzieren.
Kurz gesagt
Multi-Agent Collaboration:
- Verteilt Rollen zwischen Agenten
- Organisiert Austausch von Zwischenergebnissen
- Fuehrt mehrere Abstimmungsrunden aus
- Liefert ein gemeinsames finales Output
Vorteile und Nachteile
Vorteile
verteilt Arbeit auf spezialisierte Agenten
schliesst komplexe Aufgaben schneller ab
Prozess laesst sich leichter skalieren
Ergebnis kann auf mehreren Stufen geprueft werden
Nachteile
Koordination zwischen Agenten ist komplexer
mehr Kosten fuer Tokens und Infrastruktur
Fehlerursache ist schwerer zu finden
FAQ
Q: Muessen Agenten direkt miteinander sprechen?
A: Nein. Meist interagieren sie ueber Shared State oder eine Message Bus.
Q: Wie vermeidet man "Rauschen" zwischen Agenten?
A: Klare Rollen, Message-Format, Rundengrenze (max_rounds) und Abschlusskriterien definieren.
Q: Was, wenn Agenten sich nicht einig sind?
A: Konfliktaufloesung ergaenzen: Voting, Lead-Agent, Supervisor-Policy-Check oder Human Approval.
Was als Naechstes
Multi-Agent Collaboration hilft, Arbeit mehrerer Agenten abzustimmen.
Aber woher bekommen alle Agenten waehrend der Ausfuehrung dieselbe validierte Wissensbasis?