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.

Ein Ingenieur von Beruf, ein Schriftsteller von Herzen. Kunal ist ein technischer Schriftsteller mit einer tiefen Liebe und einem tiefen VerstÃĪndnis fÞr KI und ML, der sich der Aufgabe widmet, komplexe Konzepte in diesen Bereichen durch seine ansprechenden und informativen Dokumentationen zu vereinfachen.