MarsDawn

Vier Agenten-Entwurfsmuster und die Dokumente, die jedes dir übergibt

Im März 2024 beschrieb Andrew Ng in seinem Newsletter The Batch vier Entwurfsmuster für KI-Agenten: Reflexion, Werkzeugnutzung, Planung und Zusammenarbeit mehrerer Agenten. Meist werden sie aus Sicht der Entwickler besprochen, als Wege, bessere Ergebnisse aus einem Modell zu holen. Dieser Beitrag schaut von der anderen Seite. Wenn du einen Agenten nutzt, der auf einem dieser Muster aufbaut: Was landet in deinem Ordner, und was solltest du zuerst lesen?

Die vier Muster stammen von Andrew Ng. Welche Dokumente jedes typischerweise übergibt und was du darin prüfen solltest, ist unsere eigene Schlussfolgerung. Er schreibt über beides nicht und plädiert in dieser Reihe nicht für menschliche Prüfung.

Die vier Muster in Kürze

Ng beschreibt sie in „Agentic Design Patterns Part 1“. Kurz gesagt: Bei Reflexion sieht das Modell seine eigene Arbeit durch und verbessert sie. Bei Werkzeugnutzung kann es Werkzeuge wie Websuche oder Codeausführung aufrufen. Bei Planung entwirft es einen Plan aus mehreren Schritten und führt ihn aus. Bei der Zusammenarbeit mehrerer Agenten teilen sich mehrere Agenten die Arbeit auf und besprechen sie.

In Teil 1 zeigt er den Nutzen anhand eines Coding-Benchmarks, HumanEval, mit Ergebnissen, die sein Team von mehreren Forschungsgruppen zusammengetragen hat: „GPT-3.5 (Zero-Shot) lag zu 48,1 % richtig. GPT-4 (Zero-Shot) schneidet mit 67,0 % besser ab. Die Verbesserung von GPT-3.5 zu GPT-4 verblasst jedoch neben der Einbindung in einen iterativen Agenten-Workflow. In eine Agentenschleife eingebettet erreicht GPT-3.5 sogar bis zu 95,1 %.“ Diese Zahlen beziehen sich auf einen einzigen Coding-Benchmark, und 95,1 % ist der beste Fall („bis zu“). Sie zeigen, dass Agenten-Workflows die Ausgabe verbessern können. Darüber, wer sie prüft, sagen sie nichts.

Ab hier sind die Dokumente und die Prüfungen unsere Lesart, nicht die von Ng. Echte Agenten mischen die Muster außerdem. Ein Coding-Agent kann in einer Sitzung planen, Werkzeuge ausführen und seine eigene Arbeit prüfen, du bekommst also oft alle vier Arten von Dateien.

1. Reflexion: ein Entwurf, der sich schon selbst geprüft hat

Ngs Beitrag über Reflexion stellt sie als Automatisierung des Feedbacks dar, das sonst ein Mensch geben würde: „Was, wenn man den Schritt automatisiert, kritisches Feedback zu geben, sodass das Modell seine eigene Ausgabe automatisch kritisiert und seine Antwort verbessert?“

Was es typischerweise übergibt: ein überarbeitetes Dokument, manchmal mit einem Abschnitt zur Selbstprüfung oder Zeilen wie „Randfälle doppelt geprüft“.

Was du prüfen solltest: das Ergebnis gegen deine Anfrage, nicht gegen die Selbstkritik des Agenten. Selbstprüfung kann auf ihre eigene Art schiefgehen. Chip Huyen: „Eine interessante Art von Planungsfehler entsteht durch Fehler in der Reflexion. Der Agent ist überzeugt, eine Aufgabe erledigt zu haben, obwohl er es nicht hat.“ Lilian Weng schrieb im Juni 2023 in ihrem Blog Lil’Log, damals bei OpenAI, über die Modelle jener Zeit: „Mangelnde Fachkenntnis kann dazu führen, dass LLMs ihre Schwächen nicht kennen und daher die Richtigkeit von Aufgabenergebnissen nicht gut beurteilen können.“ (In der Studie, die sie beschrieb, stimmten die Bewertung der Ergebnisse durch ein LLM und die durch menschliche Fachleute nicht überein.) Wenn dort „geprüft“ steht, prüfe selbst eine Sache.

2. Werkzeugnutzung: ein Bericht darüber, was lief

Was es typischerweise übergibt: eine Zusammenfassung dessen, was der Agent ausgeführt oder gesucht hat und was zurückkam. „Testsuite ausgeführt: alles grün.“ Eine Ergebnistabelle. Gefundene Links.

Anthropics Leitfaden beschreibt Werkzeugergebnisse als die Selbstkontrolle des Agenten: „Während der Ausführung ist es entscheidend, dass die Agenten bei jedem Schritt ‚Ground Truth‘ aus der Umgebung erhalten (etwa Ergebnisse von Werkzeugaufrufen oder Codeausführung), um ihren Fortschritt zu beurteilen.“ Diese Kontrolle findet im Agenten statt. Was bei dir ankommt, ist die Nacherzählung des Agenten davon.

Was du prüfen solltest: dass sich jede Behauptung auf eine Ausgabe zurückführen lässt, die du sehen kannst. Gleiche eine Zahl in der Zusammenfassung mit der echten Ausgabe ab. Öffne einen der Links.

3. Planung: plan.md

Was es typischerweise übergibt: einen Plan, eine Spezifikation, eine Aufgabenliste mit Kontrollkästchen, die der Agent unterwegs abhakt.

Ng äußert sich in Teil 4 offen über dieses Muster:

„Einerseits ist Planung eine sehr mächtige Fähigkeit; andererseits führt sie zu weniger vorhersehbaren Ergebnissen. Meiner Erfahrung nach kann ich die agentischen Entwurfsmuster Reflexion und Werkzeugnutzung zuverlässig zum Laufen bringen und damit die Leistung meiner Anwendungen verbessern, doch Planung ist eine weniger ausgereifte Technik, und es fällt mir schwer, vorab vorherzusagen, was sie tun wird.“

Er ist aber auch zuversichtlich: „Doch das Gebiet entwickelt sich weiterhin rasant, und ich bin zuversichtlich, dass die Planungsfähigkeiten sich schnell verbessern werden.“

Was du prüfen solltest: den Plan, bevor er läuft, mit der Fünf-Minuten-Prüfung: Form, eine Behauptung, Schritte, die sich nicht rückgängig machen lassen, Diagramme, Umfang. Wenn der Agent den Plan mittendrin umschreibt, vergleiche ihn mit der Fassung, die du freigegeben hast; liegt er in Git, zeigt git diff plan.md, was sich geändert hat. In MarsDawn zeigt der Tab Gliederung die Form eines langen Plans, und ein umgeschriebener Plan wird neu geladen, ohne dass du deine Stelle verlierst, solange du keine eigenen ungesicherten Änderungen hast.

4. Zusammenarbeit mehrerer Agenten: mehrere Dateien, mehrere Autoren

Was es typischerweise übergibt: eine Spezifikation von einem Agenten, Umsetzungsnotizen von einem zweiten, eine Prüfung von einem dritten und Zusammenfassungen, die zwischen ihnen weitergereicht werden. Manchmal arbeitet jeder in einem eigenen Branch oder Worktree.

Was du prüfen solltest: die Übergaben. Wo ein Agent die Arbeit eines anderen zusammenfasst, such nach einer Anforderung, die nicht mit hinübergekommen ist. Such nach zwei Dateien, die sich widersprechen, und entscheide, welche die maßgebliche ist, bevor jemand auf der anderen aufbaut. Öffne in MarsDawn den gemeinsamen Ordner mit Ablage ▸ Ordner öffnen … (⇧⌘O): Neue Dateien erscheinen innerhalb etwa einer Sekunde im Tab Dateien, während die Agenten sie schreiben, und bei einem Git-Checkout nennt die Kopfzeile den Branch oder Worktree, damit zwei Fenster mit demselben Dateinamen aus verschiedenen Branches nicht gleich aussehen. Wenn das Ergebnis an Leute gehen muss, die kein Markdown lesen, zeigt Exportierte PDFs teilen diesen Schritt.

Auf einen Blick

Muster (Ng)Was es typischerweise übergibt (unsere Schlussfolgerung)Zuerst lesen (unser Vorschlag)
ReflexionEin überarbeiteter Entwurf, vielleicht mit SelbstprüfungDas Ergebnis gegen deine eigene Anfrage; ein „geprüft“ selbst prüfen
WerkzeugnutzungEin Bericht darüber, was lief und was zurückkamEine Behauptung bis zur echten Ausgabe zurückverfolgen
Planungplan.md, eine Spezifikation, eine AufgabenlisteDie Fünf-Minuten-Prüfung, bevor er läuft
Zusammenarbeit mehrerer AgentenMehrere Dateien von mehreren Agenten, vielleicht auf mehreren BranchesDie Übergaben und welche Datei die maßgebliche ist

Keiner der hier zitierten Autoren erwähnt MarsDawn, und keiner empfiehlt es oder ein anderes Markdown-Werkzeug. In MarsDawn steckt kein KI-Modell: Es weiß nicht, welches Muster eine Datei erzeugt hat, und es übernimmt diese Prüfungen nicht für dich. Es hält die Dateien lesbar, während du sie machst.

Ausprobieren

MarsDawn gibt es im Mac App Store. Dazu kommt das kostenlose Befehlszeilenwerkzeug marsdawn:

brew install redtear1115/tap/marsdawn

Es exportiert Markdown ohne die App als PDF: siehe Markdown in PDF.

Befehlszeile · Vor dem Kauf wissen: Was MarsDawn nicht kann

Weiter

Quellen