Modely a platformy AI

AIOS: Operační systém pro LLM agenty

mm
Přidejte Unite.AI mezi své preferované zdroje na Google

Po dobu šesti desetiletí se operační systémy postupně vyvíjely, od základních systémů až po komplexní a interaktivní operační systémy, které pohánějí dnešní zařízení. Zpočátku sloužily operační systémy jako most mezi binární funkcionalitou počítačového hardwaru, jako je manipulace se zámkem, a úkoly na úrovni uživatele. V průběhu let se však vyvinuly z jednoduchých systémů pro zpracování dávkových úloh do sofistikovanějších technik pro správu procesů, včetně multitaskingu a time-sharingu. Tyto pokroky umožnily moderním operačním systémům spravovat širokou škálu složitých úloh. Zavedení grafických uživatelských rozhraní (GUI) jako Windows a MacOS udělalo moderní operační systémy uživatelsky přívětivější a interaktivnější, zatímco také rozšiřuje ekosystém OS o runtime knihovny a komplexní sadu vývojářských nástrojů.

Poslední inovace zahrnují integraci a nasazení Velkých jazykových modelů (LLM), které revolučním způsobem otevřely nové možnosti. Nedávno LLM-založené inteligentní agenty prokázaly pozoruhodné schopnosti, dosáhli lidské úrovně výkonu v širokém spektru úloh. Tyto agenty jsou však stále ve fázi vývoje a současné techniky čelí několika výzvám, které ovlivňují jejich efektivitu a účinnost. Mezi běžné problémy patří suboptimální plánování požadavků agentů na velký jazykový model, složitosti při integraci agentů s různými specializacemi a udržování kontextu během interakcí mezi LLM a agentem. Rychlý vývoj a rostoucí složitost LLM-založených agentů často vedou k úzkým místům a suboptimálnímu využití zdrojů.

Pro řešení těchto výzev bude tento článek diskutovat o AIOS, operačním systému pro LLM agenty, který je navržen tak, aby integroval velké jazykové modely jako “mozek” operačního systému, efektivnímu přidání “duše”. Konkrétně rámec AIOS cílí na usnadnění přepínání kontextu mezi agenty, optimalizaci alokace zdrojů, poskytování nástrojů pro agenty, udržování kontroly přístupu a umožnění souběžného spouštění agentů. Prozkoumáme mechanismy, metodologii a architekturu rámce AIOS a porovnáme jej se stávajícími rámci. Pojďme se ponořit do toho.

Po dosažení pozoruhodného úspěchu u velkých jazykových modelů je dalším zaměřením odvětví AI a ML vývoj autonomních AI agentů, kteří mohou fungovat nezávisle, rozhodovat se sami a vykonávat úkoly s minimálním nebo žádným zásahem člověka. Tyto AI-založené inteligentní agenty jsou navrženy tak, aby rozuměly pokynům člověka, zpracovávaly informace, činily rozhodnutí a prováděly vhodné akce pro dosažení autonomního stavu, a s příchodem a vývojem velkých jazykových modelů se otevírají nové možnosti pro vývoj těchto autonomních agentů. Současné rámce LLM, včetně DALL-E, GPT a dalších, prokázaly pozoruhodné schopnosti porozumět pokynům člověka, rozumnému řešení problémů a interakci s uživateli a vnějším prostředím. Postavené na těchto mocných a schopných velkých jazykových modelech, LLM-založené agenty mají silné schopnosti plnění úkolů v různých prostředích, od virtuálních asistentů až po komplexnější a sofistikovanější systémy zahrnující řešení problémů, rozumné řešení, plánování a provedení.

Výše uvedená figura poskytuje přesvědčivý příklad toho, jak LLM-založený autonomní agent může řešit reálné úkoly. Uživatel požaduje od systému informace o cestě, po které cestovní agent rozdělí úkol na vykonatelné kroky. Poté agent provede kroky sekvenčně, rezervuje lety, rezervuje hotely, zpracovává platby a další. Při provádění kroků se tito agenti liší od tradičních softwarových aplikací tím, že prokazují schopnost rozhodování a začleňují rozumné řešení do provádění kroků. Kromě exponenciálního růstu kvality těchto autonomních agentů se zvyšuje také tlak na funkčnost velkých jazykových modelů a operačních systémů, a příkladem toho je, že priorita a plánování požadavků agentů na omezené velké jazykové modely představuje významnou výzvu. Kromě toho, protože generování velkých jazykových modelů se stává časově náročným úkolem při zpracování dlouhých kontextů, je možné, že plánovač pozastaví výsledné generování, což vyvolává problém vytvoření mechanismu pro zachycení aktuálního generovaného výsledku jazykového modelu. V důsledku toho je povoleno chování pozastavení a obnovení, když velký jazykový model dosud nezavršil generování odpovědi na aktuální požadavek.

Pro řešení výše uvedených výzev poskytuje AIOS, operační systém pro velké jazykové modely, agregace a izolaci modulů LLM a OS funkcí. Rámec AIOS navrhuje návrh jádra specifického pro LLM, aby se vyhnul potenciálním konfliktům, které mohou vzniknout mezi úkoly spojenými a nespojenými s velkým jazykovým modelem. Navrhované jádro odděluje operační systémové povinnosti, zejména ty, které dohlíží na agenty LLM, vývojářské nástroje a odpovídající zdroje. V důsledku tohoto oddělení se jádro LLM snaží zlepšit koordinaci a správu činností souvisejících s LLM.

AIOS: Metodologie a architektura

Jak můžete vidět, existuje šest hlavních mechanismů zapojených do fungování rámce AIOS.

  • Plánovač agentů: Úkolem plánovače agentů je naplánovat a priorizovat požadavky agentů, aby se optimalizovalo využití velkého jazykového modelu.
  • Správce kontextu: Úkolem správce kontextu je podporovat snímky a obnovení mezilehlého stavu generování ve velkém jazykovém modelu a správu kontextového okna velkého jazykového modelu.
  • Správce paměti: Hlavní odpovědností správce paměti je poskytnout krátkodobou paměť pro interakční protokol pro každého agenta.
  • Správce úložiště: Správce úložiště je odpovědný za trvalé uložení interakčních protokolů agentů do dlouhodobého úložiště pro budoucí načtení.
  • Správce nástrojů: Mechanismus správce nástrojů spravuje volání agentů na externí API nástroje.
  • Správce přístupu: Správce přístupu vynucuje kontrolu přístupu a zásady ochrany osobních údajů mezi agenty.

Kromě výše uvedených mechanismů má rámec AIOS vrstvenou architekturu a je rozdělen do tří samostatných vrstev: aplikační vrstvy, jádrové vrstvy a hardwarové vrstvy. Vrstvená architektura implementovaná rámcem AIOS zajišťuje, že odpovědnosti jsou rovnoměrně rozloženy po celém systému, a vyšší vrstvy abstrahují složitosti vrstev níže, umožňují interakce pomocí specifických modulů nebo rozhraní, zlepšují modulárnost a zjednodušují systémové interakce mezi vrstvami.

Začněme s aplikační vrstvou, která se používá pro vývoj a nasazení aplikačních agentů, jako jsou matematické nebo cestovní agenti. V aplikační vrstvě poskytuje rámec AIOS software development kit (AIOS SDK) s vyšší abstrakcí systémových volání, která zjednodušuje proces vývoje pro vývojáře agentů. Software development kit nabízený AIOS nabízí bohatý nástroj pro usnadnění vývoje aplikací agentů, abstrahuje složitosti nižších systémových funkcí, umožňuje vývojářům soustředit se na funkčnost a základní logiku svých agentů, což vede k efektivnějšímu procesu vývoje.

Pokračujeme s jádrovou vrstvou, která je dále rozdělena do dvou komponent: jádra LLM a jádra OS. Obě jádra OS a LLM slouží jedinečným požadavkům operací specifických pro LLM a nespecifických pro LLM, s rozdílem, který umožňuje jádru LLM soustředit se na úkoly specifické pro velký jazykový model, včetně plánování agentů a správy kontextu, aktivit, které jsou nezbytné pro zpracování aktivit souvisejících s velkými jazykovými modely. Rámec AIOS se soustředí primárně na zlepšení jádra velkého jazykového modelu bez významných změn stávající struktury jádra OS. Jádro LLM je vybaveno několika klíčovými moduly, včetně plánovače agentů, správce paměti, správce kontextu, správce úložiště, správce přístupu, správce nástrojů a rozhraní systémového volání LLM. Komponenty v jádrové vrstvě jsou navrženy tak, aby řešily různé požadavky na spuštění aplikací agentů, zajišťují efektivní spuštění a správu v rámci rámce AIOS.

Nakonec máme hardwarovou vrstvu, která zahrnuje fyzické komponenty systému, včetně GPU, CPU, periferních zařízení, disku a paměti. Je důležité pochopit, že systém jader LLM nemůže interagovat přímo s hardwarem, a tyto volání rozhraní se systémem volání operačního systému, který spravuje hardwarové zdroje. Toto nepřímé interagování mezi systémem jader LLM a hardwarovými zdroji vytváří vrstvu zabezpečení a abstrakce, umožňující jádru LLM využít schopností hardwarových zdrojů bez přímého managementu hardwaru, usnadňující údržbu integrity a efektivnosti systému.

Implementace

Jak je uvedeno výše, existuje šest hlavních mechanismů zapojených do fungování rámce AIOS. Plánovač agentů je navržen tak, aby spravoval požadavky agentů efektivním způsobem, a má několik výkonných kroků, na rozdíl od tradičního sekvenčního výkonného paradigmatu, ve kterém agent zpracovává úkoly lineárním způsobem, se kroky ze stejného agenta zpracovávanými jako první, než se přesune k dalšímu agentovi, což vede ke zvýšeným čekacím dobám pro úkoly, které se objevují později ve výkonném pořadí. Plánovač agentů používá strategie, jako je Round Robin, First In First Out a další plánovací algoritmy, aby optimalizoval proces.

Správce kontextu je navržen tak, aby spravoval kontext poskytnutý velkému jazykovému modelu a generovací proces daný určitým kontextem. Správce kontextu zahrnuje dvě klíčové komponenty: snímek a obnovení kontextu a správu kontextového okna. Mechanismus snímku a obnovení kontextu nabízený rámcem AIOS pomáhá zmírnit situace, kdy plánovač pozastaví požadavky agentů, jak je demonstrováno na následující figurce.

Jak je demonstrováno na následující figurce, je odpovědností správce paměti spravovat krátkodobou paměť v rámci životního cyklu agenta a zajistit, aby data byla uložena a přístupná pouze tehdy, když je agent aktivní, buď během runtime nebo když agent čeká na spuštění.

Na druhé straně je správce úložiště odpovědný za trvalé uložení dat, a dohlíží na uložení informací, které je třeba uchovat po neurčitou dobu, za životnost jednotlivého agenta. Rámec AIOS dosahuje trvalého uložení pomocí různých trvalých médií, včetně cloudových řešení, databází a místních souborů, zajišťujících dostupnost a integritu dat. Kromě toho je v rámci AIOS správce nástrojů odpovědný za správu různých API nástrojů, které zlepšují funkčnost velkých jazykových modelů, a následující tabulka shrnuje, jak správce nástrojů integruje běžně používané nástroje z různých zdrojů a klasifikuje je do různých kategorií.

Správce přístupu organizuje kontrolu přístupu v rámci jednotlivých agentů, spravuje dedikovanou skupinu oprávnění pro každého agenta a odmítá přístup agenta k jeho zdrojům, pokud jsou vyloučeny ze skupiny oprávnění agenta. Kromě toho je správce přístupu také odpovědný za kompilaci a údržbu auditních protokolů, což dále zvyšuje transparentnost systému.

AIOS: Experimenty a výsledky

Hodnocení rámce AIOS je vedeno dvěma výzkumnými otázkami: první, jak je výkon AIOS při plánování zlepšován vyvážením čekací a doběhové doby, a druhé, zda jsou odpovědi LLM na požadavky agentů konzistentní po pozastavení agenta?

Pro zodpovězení otázek konzistence spustí vývojáři každý ze tří agentů jednotlivě a poté spustí tyto agenty paralelně a pokusí se zachytit jejich výstupy během každé fáze. Jak je demonstrováno na následující tabulce, skóre BERT a BLEU dosahují hodnoty 1,0, což indikuje dokonalou shodu mezi výstupy generovanými v konfiguraci jednoho agenta a konfiguraci více agentů.

Pro zodpovězení otázek efektivity provedou vývojáři srovnávací analýzu mezi rámcem AIOS, který používá plánování FIFO nebo First In First Out, a neplánovaným přístupem, při kterém agenti běží současně. V neplánovaném nastavení jsou agenti spuštěni v předem definovaném sekvenčním pořadí: Math agent, Narrating agent a Rec agent. Pro posouzení časové efektivity používá rámec AIOS dvě metriky: čekací dobu a doběhovou dobu, a protože agenti posílají několik požadavků velkému jazykovému modelu, čekací doba a doběhová doba pro jednotlivé agenty jsou vypočteny jako průměr čekací doby a doběhové doby pro všechny požadavky. Jak je demonstrováno na následující tabulce, neplánovaný přístup vykazuje uspokojivý výkon pro agenty, které jsou dříve v pořadí, ale trpí prodlouženou čekací a doběhovou dobou pro agenty, které jsou později v pořadí. Na druhé straně přístup k plánování implementovaný rámcem AIOS reguluje obě čekací a doběhové doby efektivně.

Závěrečné myšlenky

V tomto článku jsme diskutovali o AIOS, operačním systému pro LLM agenty, který je navržen tak, aby integroval velké jazykové modely do operačního systému jako “mozek” operačního systému, umožňující operačnímu systému mít “duši”. Konkrétně rámec AIOS je navržen tak, aby usnadnil přepínání kontextu mezi agenty, optimalizoval alokaci zdrojů, poskytl nástroje pro agenty, udržoval kontrolu přístupu pro agenty a umožnil souběžné spuštění agentů. Architektura AIOS prokazuje potenciál usnadnit vývoj a nasazení velkých jazykových modelů založených na autonomních agentech, což vede k více efektivnímu, soudržnému a efektivnímu ekosystému AIOS-Agent. Služba pro agenty, údržba kontroly přístupu pro agenty a umožnění souběžného spuštění agentů.

Inženýr z povolání, spisovatel ze srdce. Kunal je technický spisovatel s hlubokou láskou a porozuměním pro AI a ML, který se věnuje zjednodušování složitých konceptů v těchto oblastech prostřednictvím svých přitažlivých a informačních dokumentací.