- Published on
AutoGen 0.4: Microsofts Open-Source KI-Agenten-Framework verbessert
AutoGen 0.4 Version Highlights
Microsoft hat eine bedeutende Aktualisierung seines Open-Source-KI-Agenten-Frameworks AutoGen mit der Veröffentlichung der Version 0.4 vorgestellt. Diese überarbeitete Bibliothek bietet verbesserte Codestabilität, Robustheit, Vielseitigkeit und Skalierbarkeit, wodurch Entwickler in die Lage versetzt werden, hochmoderne, fortschrittliche KI-Agenten-Anwendungen zu erstellen.
Asynchrone Nachrichtenübermittlung
Agenten kommunizieren jetzt über asynchrone Nachrichtenübermittlung, wodurch sie Aufgaben ausführen können, ohne auf Antworten anderer Agenten warten zu müssen. Dies ist besonders vorteilhaft für ereignisgesteuerte Anwendungen, bei denen Agenten auf bestimmte Auslöser reagieren. Das traditionelle Anfrage/Antwort-Modell wird ebenfalls unterstützt.
Modularität und Erweiterbarkeit
Benutzer können benutzerdefinierte Agenten, Tools, Speicher und Modelle kombinieren, um Agentensysteme zu entwickeln, die auf spezifische Geschäftsanforderungen zugeschnitten sind. Dies beinhaltet die Registrierung verschiedener Agententypen und Tools, um bestimmte Automatisierungsziele zu erreichen.
Beobachtbarkeit und Debugging
Integrierte Tools für die Metrikverfolgung, Nachrichtenverfolgung und das Debugging ermöglichen die Überwachung und Steuerung von Agenteninteraktionen und -abläufen. Jeder Schritt im Workflow eines Agenten – einschließlich großer Modellaufrufe, Toolnutzung, Zwischenausgaben, Speicherzustände und Prompt-Vorlagen – kann klar aufgezeichnet werden. Dies ist entscheidend für Branchen, die eine präzise Verfolgung von Agentenoperationen erfordern, wie z. B. Gesundheitswesen, Recht und Finanzen.
Skalierbarkeit und Verteilung
Komplexe, verteilte Agentennetzwerke können so konzipiert werden, dass sie nahtlos über organisatorische Grenzen hinweg funktionieren. Eine verteilte Architektur erleichtert die Bereitstellung von Agenten auf verschiedenen Servern oder Cloud-Plattformen und optimiert die Ressourcenzuweisung und -nutzung.
Integrierte und Community-Erweiterungen
Die Funktionalität des Frameworks wird durch Erweiterungen mit fortschrittlichen Modellclients, Agenten, Multi-Agenten-Teams und Agenten-Workflow-Tools erweitert. Die Community-Unterstützung ermöglicht es Entwicklern, ihre eigenen Erweiterungen zu verwalten, benutzerdefinierte Agenten oder Tools zu erstellen und freizugeben. Entwickler können diese Erweiterungen für häufige Anforderungen nutzen, was die Entwicklungskomplexität und -barrieren reduziert.
Cross-Language-Support
AutoGen unterstützt jetzt die Interoperabilität zwischen Agenten, die in verschiedenen Programmiersprachen wie Python und .NET geschrieben wurden. Diese Funktion erweitert den Anwendungsbereich von AutoGen und beseitigt Hindernisse, die sich aus Sprachunterschieden ergeben.
Über diese neuen Funktionen hinaus hat Microsoft die Grundlage von AutoGen umstrukturiert, die den Kern, den Agenten-Chat und Erweiterungen umfasst. Der Kern dient als Basis für das ereignisgesteuerte Agentensystem. Der auf dem Kern aufbauende Agenten-Chat bietet fortschrittliche APIs für Aufgabenmanagement, Gruppenchats, Codeausführung und vorgefertigte Agenten. Erweiterungen ermöglichen die Integration von Drittanbietern mit Diensten wie Azure-Code-Executors und OpenAI-Modellen.
UI-Verbesserungen
Die Benutzeroberfläche wurde ebenfalls deutlich verbessert:
- Interaktives Feedback über die Benutzeroberfläche, das es Benutzeragenten ermöglicht, in Echtzeit Input und Anleitungen während des Teambetriebs zu geben.
- Nachrichtenflussvisualisierung, die eine intuitive Schnittstelle bietet, um die Agentenkommunikation zu verstehen, Nachrichtenpfade und Abhängigkeiten abzubilden.
- Eine visuelle Drag-and-Drop-Schnittstelle, die es Benutzern ermöglicht, Agenten zu entwerfen, indem sie Komponenten mit ihren Beziehungen und Eigenschaften platzieren und konfigurieren.
Integration mit Magentic-One
Magentic-One, ein weiterer Open-Source-Multi-Level-General-KI-Agent von Microsoft, ist jetzt in AutoGen integriert. Magentic-One hat eine mehrschichtige Architektur, die aus fünf KI-Agenten besteht: Orchestrator, WebSurfer, FileSurfer, Coder und ComputerTerminal. Jeder Spezialagent verfügt über eigene Fähigkeiten und Wissensbasis, sodass er in seinem jeweiligen Bereich effektiv arbeiten kann. Diese Agenten arbeiten jedoch nicht isoliert; der Orchestrator koordiniert ihre Aktivitäten, um sicherzustellen, dass sie konsistent sind und die Gesamtziele erreichen.
Der Orchestrator ist für die Aufgabenplanung, die Fortschrittsverfolgung und die Fehlerbehebung zuständig. Nach Erhalt einer Aufgabe analysiert er die Anforderungen gründlich und weist den anderen vier Agenten Teilaufgaben zu. Diese Spezialagenten sind in der Lage, spezifische Aufgabentypen zu bearbeiten. Der WebBrowser-Agent übernimmt das Surfen im Internet, der FileNavigatorAgent verwaltet die Navigation im lokalen Dateisystem, der CodeWriterAgent schreibt und führt Python-Code-Snippets aus und ComputerTerminal führt Befehle auf Betriebssystemebene aus, um Aufgaben höherer Ebene zu unterstützen.
Ein wesentliches Merkmal der Magentic-One-Architektur ist der asynchrone ereignisgesteuerte Betrieb. Im Gegensatz zum synchronen Anfrage-Antwort-Modell ermöglichen asynchrone Methoden das gleichzeitige Ausführen von Systemkomponenten, die jederzeit neue Eingaben empfangen oder Aktionen auslösen, ohne andere Funktionen zu stoppen. Beispielsweise kann der WebBrowser-Agent mit dem Laden einer Seite beginnen, wenn der Orchestrator ihm eine Aufgabe zuweist, die das Herunterladen und Extrahieren von Informationen von einer Webseite beinhaltet, während der Orchestrator und andere Agenten mit anderen Aufgaben fortfahren. Sobald die Seite geladen und die erforderlichen Daten extrahiert wurden, benachrichtigt der WebBrowser-Agent den Orchestrator und gibt die Ergebnisse zurück. Diese Strategie ermöglicht es Magentic-One, Ressourcen effizienter zu verwalten, Wartezeiten zu verkürzen und effektiver auf Szenarien mit hoher Parallelität zu reagieren.
Neben seiner asynchronen Architektur zeichnet sich Magentic-One durch sein hochmodulares Design aus. Jeder Agent ist eine unabhängige Funktionseinheit mit klaren Verantwortlichkeiten und Schnittstellendefinitionen. Dieser Ansatz vereinfacht die Systemkonstruktion, da sich Entwickler auf die Funktion eines einzelnen Agenten konzentrieren können, ohne sich um Interaktionsdetails mit anderen Komponenten kümmern zu müssen. Die Modularität fördert auch die Wiederverwendung von Code und den technischen Austausch, sodass vorhandene Agenten in neuen Projekten verwendet oder mit minimalen Änderungen an verschiedene Anwendungen angepasst werden können. Das modulare Design von Magentic-One bietet auch eine erhebliche Skalierbarkeit. Neue Agenten können hinzugefügt oder vorhandene Agentenfunktionen aktualisiert werden, ohne dass größere Systemüberholungen erforderlich sind, wenn die Technologie fortschreitet oder sich die Geschäftsanforderungen ändern. Wenn beispielsweise eine Aufgabe in einem bestimmten Bereich komplexer wird, kann das System durch Hinzufügen eines spezialisierten Agenten erweitert werden.