KI-Modelle und Plattformen

AIOS: Betriebssystem für LLM-Agents

mm
Unite.AI zu deinen bevorzugten Quellen auf Google hinzufügen

Im Laufe der letzten sechs Jahrzehnte haben Betriebssysteme fortschreitend evolutioniert, von einfachen Systemen zu den komplexen und interaktiven Betriebssystemen, die heute die Geräte antreiben. Zunächst dienten Betriebssysteme als Brücke zwischen der binären Funktionalität der Computerhardware, wie Gate-Manipulation, und benutzerseitigen Aufgaben. Im Laufe der Jahre haben sie sich jedoch von einfachen Batch-Job-Verarbeitungssystemen zu komplexeren Prozess-Management-Techniken entwickelt, einschließlich Multitasking und Time-Sharing. Diese Fortschritte haben es modernen Betriebssystemen ermöglicht, eine Vielzahl von komplexen Aufgaben zu verwalten. Die Einführung von grafischen Benutzeroberflächen (GUIs) wie Windows und MacOS hat moderne Betriebssysteme benutzerfreundlicher und interaktiver gemacht, während sie auch das OS-Ökosystem mit Laufzeitbibliotheken und einer umfassenden Suite von Entwickler-Tools erweitert haben.

Neue Innovationen umfassen die Integration und Bereitstellung von Large Language Models (LLMs), die verschiedene Branchen revolutioniert haben, indem sie neue Möglichkeiten freigeschaltet haben. Vor kurzem haben LLM-basierte intelligente Agenten bemerkenswerte Fähigkeiten gezeigt und menschliche Leistungen auf einer breiten Palette von Aufgaben erreicht. Diese Agenten sind jedoch noch in den Anfängen ihrer Entwicklung, und die aktuellen Techniken stoßen auf mehrere Herausforderungen, die ihre Effizienz und Effektivität beeinträchtigen. Häufige Probleme umfassen die suboptimale Planung von Agentenanfragen an das Large Language Model, Komplexitäten bei der Integration von Agenten mit unterschiedlichen Spezialisierungen und die Aufrechterhaltung des Kontexts während der Interaktion zwischen dem LLM und dem Agenten. Die schnelle Entwicklung und zunehmende Komplexität von LLM-basierten Agenten führen oft zu Engpässen und suboptimaler Ressourcennutzung.

Um diese Herausforderungen anzugehen, wird in diesem Artikel AIOS, ein Betriebssystem für LLM-Agents, diskutiert, das darauf abzielt, Large Language Models als “Gehirn” des Betriebssystems zu integrieren, ihm damit effektiv eine “Seele” zu geben. Insbesondere zielt das AIOS-Framework darauf ab, Kontextwechsel zwischen Agenten zu erleichtern, Ressourcenzuweisung zu optimieren, Tool-Dienste für Agenten bereitzustellen, Zugriffskontrolle zu gewährleisten und die gleichzeitige Ausführung von Agenten zu ermöglichen. Wir werden uns mit dem AIOS-Framework auseinandersetzen, seine Mechanismen, Methodik und Architektur erforschen und es mit state-of-the-art-Frameworks vergleichen. Lassen Sie uns beginnen.

Nachdem wir bemerkenswerte Erfolge bei Large Language Models erzielt haben, konzentriert sich die AI- und ML-Branche nun darauf, autonome AI-Agents zu entwickeln, die unabhängig arbeiten, Entscheidungen treffen und Aufgaben mit minimaler oder keiner menschlicher Intervention ausführen können. Diese AI-basierten intelligenten Agenten sind darauf ausgelegt, menschliche Anweisungen zu verstehen, Informationen zu verarbeiten, Entscheidungen zu treffen und geeignete Aktionen auszuführen, um einen autonomen Zustand zu erreichen, wobei die Entwicklung von Large Language Models neue Möglichkeiten für die Entwicklung dieser autonomen Agenten eröffnet. Aktuelle LLM-Frameworks wie DALL-E, GPT und mehr haben bemerkenswerte Fähigkeiten gezeigt, menschliche Anweisungen zu verstehen, Argumentations- und Problemlösungsfähigkeiten zu besitzen und mit menschlichen Benutzern und externen Umgebungen zu interagieren. Aufbauend auf diesen leistungsstarken und fähigen Large Language Models haben LLM-basierte Agenten starke Auftragserfüllungsfähigkeiten in verschiedenen Umgebungen, von virtuellen Assistenten bis hin zu komplexen und anspruchsvollen Systemen, die Problemlösung, Argumentation, Planung und Ausführung umfassen.

Das obige Bild zeigt ein überzeugendes Beispiel dafür, wie ein LLM-basierter autonomer Agent reale Aufgaben lösen kann. Der Benutzer bittet das System um Reiseinformationen, woraufhin der Reiseagent die Aufgabe in ausführbare Schritte unterteilt. Dann führt der Agent die Schritte sequentiell aus, bucht Flüge, reserviert Hotels, verarbeitet Zahlungen und mehr. Was diese Agenten von traditionellen Softwareanwendungen unterscheidet, ist ihre Fähigkeit, Entscheidungen zu treffen und Argumentationen in die Ausführung der Schritte einzubeziehen. Neben einem exponentiellen Wachstum der Qualität dieser autonomen Agenten hat die Belastung der Funktionalitäten von Large Language Models und Betriebssystemen zugenommen, und ein Beispiel dafür ist, dass die Priorisierung und Planung von Agentenanfragen an begrenzte Large Language Models eine erhebliche Herausforderung darstellt. Darüber hinaus kann die Generierung von Large Language Models bei der Verarbeitung langer Kontexte zeitaufwändig werden, sodass der Scheduler die resultierende Generierung aussetzen kann, was zu einem Problem bei der Entwicklung eines Mechanismus zur Speicherung des aktuellen Generierungsergebnisses des Sprachmodells führt. Als Ergebnis ist ein Pause-/Wiederaufnahmeverhalten möglich, wenn das Large Language Model die Antwortgenerierung für die aktuelle Anfrage noch nicht abgeschlossen hat.

Um die oben genannten Herausforderungen anzugehen, bietet AIOS, ein Large Language Model-Betriebssystem, Aggregationen und Modulisolierung von LLM- und OS-Funktionen. Das AIOS-Framework schlägt ein LLM-spezifisches Kernel-Design vor, um potenzielle Konflikte zwischen Aufgaben, die mit dem Large Language Model verbunden sind, und solchen, die nicht damit verbunden sind, zu vermeiden. Der vorgeschlagene Kernel trennt die Betriebssystem-aufgaben, insbesondere diejenigen, die die LLM-Agents, Entwicklungstools und ihre entsprechenden Ressourcen überwachen. Als Ergebnis dieser Trennung versucht der LLM-Kernel, die Koordination und Verwaltung von Aktivitäten im Zusammenhang mit LLMs zu verbessern.

AIOS : Methodik und Architektur

Wie Sie beobachten können, sind sechs wichtige Mechanismen an der Funktionsweise des AIOS-Frameworks beteiligt.

  • Agenten-Planer: Die Aufgabe des Agenten-Planers besteht darin, Agentenanfragen zu planen und zu priorisieren, um die Nutzung des Large Language Models zu optimieren.
  • Kontext-Manager: Die Aufgabe des Kontext-Managers besteht darin, Snapshots sowie die Wiederherstellung des Zwischenzustands der Generierung im Large Language Model sowie die Kontextfensterverwaltung des Large Language Models zu unterstützen.
  • Speicher-Manager: Die primäre Verantwortung des Speicher-Managers besteht darin, kurze Speicher für die Interaktionsprotokolle jedes Agents bereitzustellen.
  • Speicher-Manager: Der Speicher-Manager ist dafür verantwortlich, die Interaktionsprotokolle der Agenten in langfristige Speicher für zukünftige Abrufe zu übertragen.
  • Tool-Manager: Der Tool-Manager-Mechanismus verwaltet den Aufruf von Agenten an externe API-Tools.
  • Zugriffs-Manager: Der Zugriffs-Manager überwacht die Zugriffskontrolle zwischen Agenten.

Zusätzlich zu den oben genannten Mechanismen verfügt das AIOS-Framework über eine schichtbasierte Architektur, die in drei verschiedene Schichten unterteilt ist: die Anwendungsschicht, die Kernel-Schicht und die Hardware-Schicht. Die schichtbasierte Architektur des AIOS-Frameworks stellt sicher, dass die Verantwortlichkeiten gleichmäßig über das System verteilt sind, und die höheren Schichten die Komplexität der unteren Schichten abstrahieren, was die Interaktionen mithilfe spezifischer Module oder Schnittstellen ermöglicht und die Modularität verbessert.

Beginnend mit der Anwendungsschicht wird diese Schicht zur Entwicklung und Bereitstellung von Anwendungsagenten wie Mathematik- oder Reiseagenten verwendet. In der Anwendungsschicht bietet das AIOS-Framework das AIOS-Software-Entwicklungskit (AIOS-SDK) mit einer höheren Abstraktion von Systemaufrufen, die den Entwicklungsprozess für Agenten-Entwickler vereinfacht. Das Software-Entwicklungskit, das von AIOS angeboten wird, bietet eine umfassende Werkzeugkiste, um die Entwicklung von Agenten-Anwendungen zu erleichtern, indem es die Komplexität der unteren Systemfunktionen abstrahiert, sodass Entwickler sich auf die Funktionalitäten und die wesentliche Logik ihrer Agenten konzentrieren können, was zu einem effizienteren Entwicklungsprozess führt.

Weiterhin ist die Kernel-Schicht in zwei Komponenten unterteilt: den LLM-Kernel und den OS-Kernel. Sowohl der OS-Kernel als auch der LLM-Kernel dienen den einzigartigen Anforderungen von LLM-spezifischen und nicht LLM-spezifischen Operationen, wobei die Trennung es dem LLM-Kernel ermöglicht, sich auf LLM-spezifische Aufgaben wie Agenten-Planung und Kontext-Verwaltung zu konzentrieren, die für die Verarbeitung von LLM-spezifischen Aktivitäten unerlässlich sind. Das AIOS-Framework konzentriert sich in erster Linie auf die Verbesserung des LLM-Kernels, ohne die Struktur des bestehenden OS-Kernels wesentlich zu ändern. Der LLM-Kernel verfügt über mehrere Schlüsselmodule, darunter den Agenten-Planer, den Speicher-Manager, den Kontext-Manager, den Speicher-Manager, den Zugriffs-Manager, den Tool-Manager und die LLM-Systemaufruf-Schnittstelle. Die Komponenten in der Kernel-Schicht sind so konzipiert, dass sie die unterschiedlichen Ausführungsanforderungen von Agenten-Anwendungen erfüllen, was eine effektive Ausführung und Verwaltung innerhalb des AIOS-Frameworks ermöglicht.

Schließlich haben wir die Hardware-Schicht, die die physischen Komponenten des Systems umfasst, einschließlich GPU, CPU, Peripheriegeräten, Festplatte und Speicher. Es ist wichtig zu verstehen, dass das System des LLM-Kernels nicht direkt mit der Hardware interagieren kann, und diese Aufrufe die Systemaufrufe des Betriebssystems verwenden, die wiederum die Hardware-Ressourcen verwalten. Diese indirekte Interaktion zwischen dem LLM-Kernel-System und den Hardware-Ressourcen schafft eine Sicherheits- und Abstraktionsschicht, die es dem LLM-Kernel ermöglicht, die Fähigkeiten der Hardware-Ressourcen zu nutzen, ohne die Hardware direkt verwalten zu müssen, was die Aufrechterhaltung der Integrität und Effizienz des Systems erleichtert.

Implementierung

Wie oben erwähnt, sind sechs wichtige Mechanismen an der Funktionsweise des AIOS-Frameworks beteiligt. Der Agenten-Planer ist so konzipiert, dass er Agentenanfragen auf effiziente Weise verwalten kann und mehrere Ausführungsschritte hat, im Gegensatz zu einem traditionellen sequenziellen Ausführungsparadigma, bei dem der Agent die Aufgaben linear verarbeitet und die Schritte von demselben Agenten zuerst verarbeitet, bevor er zum nächsten Agenten übergeht, was zu längeren Wartezeiten für Aufgaben führt, die später in der Ausführungssequenz erscheinen.

Der Kontext-Manager ist so konzipiert, dass er den Kontext, der dem Large Language Model bereitgestellt wird, und den Generierungsprozess unter Berücksichtigung des Kontexts verwalten kann. Der Kontext-Manager umfasst zwei wichtige Komponenten: Kontext-Snapshot und Wiederherstellung sowie Kontextfenster-Verwaltung. Der Kontext-Snapshot- und Wiederherstellungsmechanismus, der vom AIOS-Framework bereitgestellt wird, hilft bei der Bewältigung von Situationen, in denen der Scheduler die Agentenanfragen aussetzt, wie in der folgenden Abbildung gezeigt.

Wie in der folgenden Abbildung gezeigt, ist es die Aufgabe des Speicher-Managers, kurzen Speicher innerhalb des Lebenszyklus eines Agents zu verwalten und sicherzustellen, dass die Daten nur gespeichert und abrufbar sind, wenn der Agent aktiv ist, entweder während der Laufzeit oder wenn der Agent auf die Ausführung wartet.

Andererseits ist der Speicher-Manager dafür verantwortlich, die Daten langfristig zu speichern und die Speicherung von Informationen zu überwachen, die für einen unbestimmten Zeitraum aufbewahrt werden müssen, über die Lebensdauer eines einzelnen Agents hinaus. Das AIOS-Framework erreicht permanente Speicherung mithilfe verschiedener dauerhafter Medien, einschließlich Cloud-basierter Lösungen, Datenbanken und lokaler Dateien, was die Datenverfügbarkeit und -integrität sicherstellt. Darüber hinaus ist es im AIOS-Framework der Tool-Manager, der eine Vielzahl von API-Tools verwaltet, die die Funktionalität der Large Language Models erweitern, und die folgende Tabelle fasst zusammen, wie der Tool-Manager häufig verwendete Tools aus verschiedenen Quellen integriert und sie in verschiedene Kategorien unterteilt.

Der Zugriffs-Manager organisiert die Zugriffskontrolle innerhalb der verschiedenen Agenten, indem er eine dedizierte Privilegengruppe für jeden Agenten verwaltet und einem Agenten den Zugriff auf seine Ressourcen verwehrt, wenn er nicht in der Privilegengruppe des Agents enthalten ist. Darüber hinaus ist der Zugriffs-Manager auch dafür verantwortlich, Prüfungsjournale zu erstellen und zu verwalten, was die Transparenz des Systems weiter erhöht.

AIOS : Experimente und Ergebnisse

Die Bewertung des AIOS-Frameworks wird von zwei Forschungsfragen geleitet: erstens, wie ist die Leistung des AIOS-Planungsmechanismus bei der Verbesserung der Ausgeglichenheit von Warte- und Durchlaufzeit, und zweitens, ob die Antwort des LLM auf Agentenanfragen nach der Aussetzung des Agents konsistent ist.

Um die Konsistenzfragen zu beantworten, führen die Entwickler jeden der drei Agenten einzeln aus und führen sie dann in Parallel aus, um ihre Ausgaben während jeder Phase zu erfassen. Wie in der folgenden Tabelle gezeigt, erreichen die BERT- und BLEU-Scores den Wert 1,0, was eine perfekte Übereinstimmung zwischen den Ausgaben, die in Einzel- und Mehragenten-Konfigurationen generiert werden, anzeigt.

Um die Effizienzfragen zu beantworten, führen die Entwickler eine vergleichende Analyse zwischen dem AIOS-Framework, das FIFO- oder First-In-First-Out-Planung verwendet, und einem nicht geplanten Ansatz durch, bei dem die Agenten gleichzeitig ausgeführt werden. Im nicht geplanten Setting werden die Agenten in einer vordefinierten Reihenfolge ausgeführt: Mathematik-Agent, Erzähl-Agent und Re-Agent. Um die zeitliche Effizienz zu bewerten, verwendet das AIOS-Framework zwei Metriken: Wartezeit und Durchlaufzeit, und da die Agenten mehrere Anfragen an das Large Language Model senden, wird die Wartezeit und die Durchlaufzeit für jeden Agenten als Durchschnitt der Wartezeit und Durchlaufzeit für alle Anfragen berechnet. Wie in der folgenden Tabelle gezeigt, zeigt der nicht geplante Ansatz eine zufriedenstellende Leistung für Agenten, die früher in der Sequenz erscheinen, aber leidet unter verlängerten Warte- und Durchlaufzeiten für Agenten, die später in der Sequenz erscheinen. Andererseits reguliert der Planungsansatz, der vom AIOS-Framework implementiert wird, sowohl die Warte- als auch die Durchlaufzeit effektiv.

Letzte Gedanken

In diesem Artikel haben wir über AIOS, ein LLM-Agent-Betriebssystem, gesprochen, das darauf abzielt, Large Language Models als “Gehirn” des Betriebssystems zu integrieren, um ein Betriebssystem mit einer “Seele” zu schaffen. Um genauer zu sein, ist das AIOS-Framework darauf ausgelegt, Kontextwechsel zwischen Agenten zu erleichtern, Ressourcenzuweisung zu optimieren, Tool-Dienste für Agenten bereitzustellen, Zugriffskontrolle für Agenten zu gewährleisten und die gleichzeitige Ausführung von Agenten zu ermöglichen. Die AIOS-Architektur zeigt das Potenzial, die Entwicklung und Bereitstellung von Large Language Model-basierten autonomen Agenten zu erleichtern, was zu einem effektiveren, kohärenteren und effizienteren AIOS-Agent-Ökosystem führt.

Kunal Kejriwal ist Backend‑Entwickler und spezialisiert auf Python, PostgreSQL, Redis sowie Cloud‑Infrastruktur auf GCP und AWS. Mit drei Jahren Erfahrung im Aufbau und Skalieren von Produktionssystemen schreibt er über KI‑Infrastruktur, verteilte Systeme und die Architektur hinter der Bereitstellung von Machine‑Learning‑Arbeitslasten.