In den letzten Jahren wurden mit der raschen Entwicklung von Large Language Models (LLMs) die Fähigkeiten von Multi-Agent-Systemen (MAS) erheblich verbessert. Diese Systeme sind nicht nur in der Lage, Aufgaben zu automatisieren, sondern auch menschenähnliche Denkfähigkeiten zu demonstrieren. Allerdings sind die traditionellen MAS Architekturen sind oft mit komplexen Code-Implementierungen verbunden, was ihre Wiederverwendbarkeit stark einschränkt. Um dieses Problem zu lösen, wurde Nexus entwickelt.Nexus ist ein leichtgewichtiges Python-Framework für die Entwicklung skalierbarer, wiederverwendbarer LLM-basierter MAS. Es unterstützt eine mehrschichtige Architektur, überwachte Arbeitsabläufe und ist einfach zu bedienen, auch ohne einen ausgeprägten technischen Hintergrund.
Überblick über Multi-Agenten-Systeme (MAS)
Multi-Agenten-Systeme (MAS) sind die grundlegenden Systeme für verteilte künstliche Intelligenz (KI). Sie ermöglichen es, komplexe Aufgaben in handlichere Komponenten zu zerlegen, die dann von autonomen Intelligenzen (Agenten) ausgeführt werden. Diese Intelligenzen nutzen historisches Wissen, Interaktionen mit anderen Intelligenzen und Umweltinformationen, um ohne menschliches Eingreifen Entscheidungen zu treffen. Diese Autonomie unterscheidet MAS von herkömmlichen verteilten Problemlösungssystemen und verbessert ihre Fähigkeit, in dynamischen und unsicheren Umgebungen effektiv zu arbeiten.
In MAS verfügen die Intelligenzen über ein gewisses Maß an Autonomie und arbeiten miteinander zusammen, um ein einheitliches Ganzes zu bilden und Probleme zu lösen. Intelligenzen sind Kernakteure mit Rollen, Fähigkeiten und Wissensmodellen. Die Umgebung ist die Außenwelt, in der die Intelligenzen leben, und sie nehmen die Informationen in der Umgebung wahr und handeln danach. Die Kommunikation zwischen den Intelligenzen wird als Interaktion bezeichnet und kann in Form von Koordinierung, Verhandlung oder einer beliebigen Form auf der Grundlage der Systemanforderungen erfolgen.
MAS-Architekturen können verschiedene Formen annehmen, darunter traditionelle, ReAct- und LLM-basierte. Traditionelle MAS-Architekturen bestehen aus Intelligenzen, die durch Beobachtung und Aktion mit der Umwelt interagieren, während ReAct (Reasoning and Acting)-artige Intelligenz-Architekturen erweiterte Denkfähigkeiten einführen. LLM-basierte Architekturen hingegen nutzen LLMs als Intelligenzen für Schlussfolgerungen und Entscheidungsfindung.
MAS Architektur
Zu den wichtigsten Herausforderungen, denen sich MAS-Architekturen stellen müssen, gehören die Koordination zwischen mehreren Intelligenzen, die Aufgabenzuweisung und die Skalierbarkeit großer Systeme. Zur Bewältigung dieser Herausforderungen haben Forscher verschiedene Ansätze vorgeschlagen, wie z. B. die Leader-Follower-Hierarchie (LF), bei der die Leader-Intelligenz globale Ziele festlegt und Aufgaben delegiert, während der Middle-Tier-Intelligenz-Rahmen die Entdeckung von Diensten und die Koordination zwischen den Intelligenzen vereinfacht.
Jüngste Fortschritte auf dem Gebiet der Large Language Modelling (LLM) verbessern die MAS-Architektur und ihre Anwendungsmöglichkeiten, wie z. B. menschenähnliche Schlussfolgerungen. Wenn LLMs in die MAS-Architektur integriert werden, können sie als zentrale logische Intelligenz fungieren und die Anpassungsfähigkeit, Zusammenarbeit und Entscheidungsfindung in dynamischen Umgebungen verbessern. Diese Fortschritte haben auch die Anwendung von MAS in Bereichen wie multimodales Denken, komplexe mathematische Problemlösung und autonome Navigation erleichtert, die früher außerhalb der Reichweite von MAS-Ansätzen lagen.
LLM-basierte MAS beruhen auf zwei wichtigen Grundsätzen: einer aufgabenspezifischen Architektur, um die Effizienz des LLM zu maximieren, und einer Methodik zur Implementierung von domänenspezifischem Wissen und dessen Anwendung in Intelligenzen. Die Integration von externem Wissen für LLM-basierte MAS kann jedoch die Gesamtkomplexität erhöhen und zu Skalierbarkeitsproblemen aufgrund von Wissensbeschränkungen und begrenzter Anpassungsfähigkeit an verschiedene Domänen führen. Darüber hinaus ist es sehr schwierig, LLM-basierte MAS von Grund auf zu entwickeln und einzusetzen, insbesondere für technisch nicht versierte Personen.
Nexus, ein neuartiges, quelloffenes Python-Framework, ermöglicht es Anwendern, auf einfache Weise MAS-Architekturen unter Verwendung von Low-Code-Design-Standards zu entwerfen. Nexus ist leichtgewichtig, erweiterbar und LLM- und Anwendungsdomänen-agnostisch und ermöglicht eine intelligente Automatisierung für eine Vielzahl von Aufgaben und Problemen.
Ein tieferes Verständnis des Nexus-Rahmens
Der Nexus-Rahmen basiert auf einem modularen Design, das einen einzelnen Root Supervisor Agent mit mehreren Task Supervisors und Worker Agents integriert. Diese Komponenten sind gemäß einem hierarchischen Ausführungsgraphen für eine effiziente Aufgabendelegation, Skalierbarkeit und Flexibilität konzipiert. Der Root Supervisor ist für die Koordinierung der Kommunikation zwischen Nutzern und Intelligenzen zuständig, und zu seinen Hauptaufgaben gehören die Aufgabenzerlegung, die Auswahl der Intelligenz und die Aggregation der Ergebnisse.
Die Aufgabenzerlegung beinhaltet die Zerlegung von übergeordneten Hinweisen in umsetzbare Teilaufgaben. Die Auswahl der intelligenten Stelle bezieht sich auf die Delegierung von Aufgaben an die am besten geeigneten Arbeitsintelligenzen auf der Grundlage ihrer Spezialisierung. Andererseits werden bei der Ergebnisaggregation die Ergebnisse der delegierten Teilaufgaben gesammelt und zu einer endgültigen Antwort kombiniert. Arbeitsintelligenzen sind spezialisierte Problemlöser, denen vom Vorgesetzten Aufgaben zugewiesen werden. Jede Arbeitsintelligenz arbeitet in einer isolierten Umgebung, die aus einer eindeutigen Spezialisierung besteht, die durch ihre Systemmeldungen, die zugehörigen Werkzeuge und Funktionen sowie die Umgebungsdaten definiert ist. Zu den Fähigkeiten der Arbeitsintelligenzen gehört die Verwendung spezialisierter Tools (z. B. Websuchen) oder Wissensdatenbanken zur Durchführung domänenspezifischer Aufgaben, die iterative Verfeinerung von Übergangsergebnissen durch Interaktion mit den Tools oder Wissensdatenbanken und die Rückgabe von Ergebnissen an den Vorgesetzten nach Abschluss der zugewiesenen Aufgabe.
Nexus enthält einen globalen Speicher und eine Reihe von externen Werkzeugen. Der Speicher im Nexus ist ein gemeinsam genutztes Repository, auf das der Supervisor global zugreifen kann, die arbeitenden Intelligenzen sind auf ihren Ereignisverlauf beschränkt, und der Task Supervisor hat Zugriff auf alle Speicherplätze, die den ihm zugewiesenen Intelligenzen zugeordnet sind. Auf der anderen Seite ermöglichen externe Tools den Intelligenzen die Durchführung spezifischer Aufgaben, wie z. B. Websuchen oder den Zugriff auf externe Ressourcen (Cloud-Speicher usw.).
Nexus-Architektur
Nexus führt einen iterativen Prozess zur Aufgabenzerlegung und -ausführung ein, der in drei Hauptinteraktionsschleifen unterteilt ist:
- Interaktion zwischen Benutzer und BetreuerIn dieser Schleife gibt der Benutzer dem Betreuer eine Aufforderung auf hohem Niveau. Der Betreuer erläutert und skizziert den Plan für die Aufgabenausführung und stimmt ihn mit den Zielen des Benutzers ab. Dieser Austausch ist iterativ und wird fortgesetzt, bis der Supervisor bereit ist, Teilaufgaben an andere Intelligenzen zu delegieren oder eine Lösung abzuschließen.
- Datenschutzbeauftragter - Intelligente KörperkoordinationIn diesem Zyklus weist der Vorgesetzte den Arbeitsintelligenzen je nach ihrem Spezialisierungsgrad Teilaufgaben zu. Die Arbeitsintelligenzen nutzen dann die verfügbaren Werkzeuge und erzeugen Zwischenergebnisse.
- Intelligenter Körper Interner BetriebDie letzte Schleife funktioniert innerhalb des internen Umfelds jeder Arbeitsintelligenz. Die Arbeitsintelligenzen verbessern die Zwischenergebnisse durch den iterativen Einsatz von externen Werkzeugen und Ressourcen. Sobald eine Lösung erreicht ist, wird sie zur endgültigen Synthese an den Supervisor zurückgesandt.
Diese Schleifen ermöglichen es Nexus, eine Vielzahl von Interaktionsmustern zwischen Intelligenzen und ihren Betriebsumgebungen zu unterstützen. Es ist skalierbar, modular und robust, wobei der Rahmen neue Intelligenzen bei zunehmender Aufgabenkomplexität einbeziehen kann, Arbeitsintelligenzen unabhängig arbeiten können und hierarchische Delegation mit iterativen Rückkopplungsschleifen die Auswirkungen von Intelligenzausfällen reduziert, da Aufgaben leicht neu zugewiesen oder verbessert werden können.
Bewertung und Analyse der Nexus-Leistung
Die Leistungsbewertung von Nexus basiert auf der Bestehensrate, d.h. dem Verhältnis zwischen der Anzahl der Proben, die alle Prüfungen bestehen, und der Gesamtzahl der Proben im Benchmark-Test. Bei Codierungsaufgaben wurde die Effektivität des Nexus-Frameworks anhand seiner Effizienz bei der Lösung von programmierbezogenen Aufgaben bewertet. Für die Bewertung wurden die Benchmarks HumanEval und VerilogEval-Human verwendet.
Der HumanEval-Benchmark basiert auf einer Sammlung von 164 Aufgaben, die sich auf die Generierung von Python-Code konzentrieren, während VerilogEval-Human 156 Aufgaben zur Generierung und Verifikation von Verilog-Code enthält. Die folgende Abbildung zeigt die Nexus-basierte MAS-Architektur für die Lösung von codebezogenen Aufgaben.
Nexus-basierte MAS-Architektur für codebezogene Aufgaben
Die nachstehende Tabelle zeigt die Wirksamkeit des vorgeschlagenen Arbeitsablaufs auf der Grundlage der Erfolgsquoten der Ablationsstudien.
Ergebnisse - 1
In der folgenden Tabelle wird die Leistung des vorgeschlagenen Nexus-basierten Arbeitsablaufs mit ähnlichen bestehenden Lösungen verglichen.
Ergebnisse - 2
Die Effektivität von Nexus bei der Lösung von mathematischen Problemen wurde mit dem MATH-Datensatz demonstriert. Es wurde der folgende Arbeitsablauf verwendet, bei dem die Intelligenzen des Betreuers, des Mathematikers und des Prüfers zum Einsatz kamen. Sie alle werden unterstützt durch den Claude 3.5v2 LLM bietet Unterstützung.
Nexus-basierte MAS-Architektur für mathematische Probleme
Ergebnisse von Ablationsstudien mit dem MATH-Datensatz
Nexus Hands-on: Code-Review und Refactoring
Als nächstes demonstrieren wir anhand eines realen Beispiels, wie eine MAS-Architektur mit Nexus für Code-Review und Refactoring aufgebaut werden kann.
Schritt 1: Installation der erforderlichen Bibliotheken
!git clone https://github.com/PrimisAI/nexus.git
%cd nexus
!pip install -e .
Schritt 2: Bibliothek importieren und LLM-Konfiguration einrichten
from primisai.nexus.core import Agent, Supervisor
from google.colab import userdata
import os
os.environ["OPENAI_API_KEY"] = userdata.get("OPENAI_API_KEY")
llm_config = {
"api_key": os.getenv("OPENAI_API_KEY"),
"model": "gpt-4o",
"base_url": "https://api.openai.com/v1"
}
Schritt 3: Erstellen Sie drei Intelligenzen: Supervisor, CodeReviewer und CodeRefactor.
# 创建主管智能体
coordinator = Supervisor("ProgrammingCoordinator", llm_config)
# 创建代码审查智能体,并设置其系统消息
code_reviewer = Agent(
"CodeReviewer",
llm_config,
system_message="你是一位专注于代码分析的编码专家。你的任务是审查代码,识别错误并提出改进建议。"
)
# 创建代码重构智能体,并设置其系统消息
code_refactor = Agent(
"CodeRefactor",
llm_config,
system_message="你是一位专注于代码重构的编码专家。你的目标是提高代码的可读性和效率。"
)
Schritt 4: Registrierung der Nachrichtendienste beim Koordinator
coordinator.register_agent(code_reviewer)
coordinator.register_agent(code_refactor)
Schritt 5: Anzeige der Hierarchie der Intelligenz
coordinator.display_agent_graph()
Schritt 6: Starten Sie eine interaktive Sitzung und stellen Sie Python-Beispielcode zur Überprüfung und Überarbeitung bereit.
coordinator.start_interactive_session()
Ausfuhren
Wie Sie aus dem Ergebnis ersehen können, war Nexus in der Lage, den von uns gelieferten Python-Code auf der Grundlage der MAS-Architektur zu überprüfen und zu überarbeiten und eine robustere, effizientere und benutzerfreundlichere Version zu erstellen, die eine angemessene Dokumentation enthält.
Zusammenfassung und Ausblick
Nexus, ein leichtgewichtiges Python-Framework, vereinfacht die Entwicklung und Verwaltung von LLM-basierten Multi-Intelligenz-Systemen erheblich. Es ermöglicht eine nahtlose Integration, Skalierbarkeit und Flexibilität durch modularen Aufbau mittels eines mehrschichtigen Ansatzes und YAML-basierter Architektur- und Workflow-Definitionen.Nexus stellt einen bedeutenden Fortschritt in der MAS-Entwicklung dar und verspricht, LLM-basierte Problemlösungsfähigkeiten weiter zu verbessern.
Mit der Weiterentwicklung der LLM-Technologie wird der Nexus in Zukunft voraussichtlich eine größere Rolle in folgenden Bereichen spielen:
- Komplexere AufgabenbearbeitungMit den erweiterten LLM-Fähigkeiten kann Nexus komplexere und anspruchsvollere Aufgaben bewältigen, wie z.B. die Integration von bereichsübergreifendem Wissen, langfristige Planung usw.
- Breiteres Spektrum an AnwendungsszenarienDie Flexibilität und Skalierbarkeit von Nexus ermöglicht den Einsatz in einem breiteren Spektrum von Anwendungen, z. B. in der intelligenten Fertigung, in intelligenten Städten, in der Finanztechnologie und anderen Bereichen.
- Stärkere Unterstützung durch die GemeinschaftDa Nexus als Open-Source-Projekt gefördert wird, werden mehr Entwickler an der Entwicklung und Verfeinerung von Nexus beteiligt sein, und gemeinsam werden sie die Grenzen der MAS-Technologie erweitern.
Alles in allem bietet Nexus eine leistungsstarke und flexible Plattform für den Aufbau und die Verwaltung von multi-intelligenten Körpersystemen, und sein Aufkommen wird die Entwicklung des KI-Bereichs beschleunigen und neue Ideen und Methoden für die Lösung komplexer Probleme in der realen Welt liefern.
Referenz:https://arxiv.org/pdf/2502.19091