開源大模型AI代理操作系統:像Windos一樣,操控AI代理
本文經AIGC開放社區 授權轉載,轉載請聯系出處。
去年,AutoGPT的出現讓我們見識到了AI代理強大的自動化能力,并開創了一個全新的AI代理賽道。但在子任務調度、資源分配以及AI之間協作還有不少的難題。
因此,羅格斯大學的研究人員開源了AIOS,這是一種以大模型為核心的AI代理操作系統。可有效解可決隨著AI代理的增加,資源調用率低的難題,同時能促進代理之間的上下文切換、實現并發執行代理并維護代理的訪問控制。
開源地址:https://github.com/agiresearch/AIOS
論文地址:https://arxiv.org/abs/2403.16971
AIOS的架構和我們使用的PC操作系統差不多,主要分為應用層、內核層和硬件層三大塊。唯一不同的是,AIOS在內核層中構建了一個專門管理與大模型相關任務的內核管理器。
應用層,主要由代理應用程序構成(例如,旅行代理、數學代理、代碼代理等);內核層由傳統OS系統和大模型相結合開發,OS系統主要用于文件管理,大模型則用于AI代理的調度和管理;
硬件層由CPU、GPU、內存和外設等硬件設備構成,但是大模型的內核無法與硬件直接交互,而是通過內核層提供的調用來間接管理硬件資源,以確保系統完整性和效率。
AI代理調度器
AI代理調度器主要負責對大模型的代理請求進行合理調度和優化,以充分利用大模型的計算資源。當多個代理同時向大模型發起請求時,調度器需根據特定調度算法對請求進行排序,避免單一代理長時間占用大模型而導致其他代理長時間等待。
此外,AIOS的設計還支持更復雜的調度策略,例如,考慮代理請求間的依賴關系,以實現更優化的資源分配。
在沒有調度指令時,代理需按順序逐一執行任務,后續代理需等待較長時間;而采用調度算法后,各代理的請求能夠交錯并行執行,顯著降低了整體等待時間和響應延遲。
上下文管理器
由于大模型生成過程普遍采用Beam Search等啟發式搜索,會逐步構建搜索樹并評估不同路徑最終給出結果。
但在生成過程中大模型若被調度器中斷,為避免所有中間狀態丟失而浪費之前的計算,上下文管理器會對當前的Beam Search樹狀態(包括各路徑概率等)進行快照保存。
當大模型重新獲得執行資源后,上下文管理器能夠準確地從中斷處恢復之前的Beam Search狀態,繼續生成剩余部分,確保最終結果的完整性和準確性。
此外,多數大模型存在上下文長度限制,而實際場景中的輸入上下文往往會超出該限制。為解決這一難題,上下文管理器集成了文本摘要等功能,能夠對過長的上下文進行壓縮或分塊處理,使大模型能夠高效理解并處理長上下文信息。
內存管理器
內存管理器主要負責管理短期內存資源,為每個AI代理的交互日志和中間數據提供高效的臨時存儲。
當AI代理處于等待執行或正在運行狀態時,其所需的數據將被保存在由內存管理器分配的內存塊中。一旦代理任務結束,相應的內存塊也會被系統回收,以確保內存資源的高效利用。
AIOS會為每個AI代理分配獨立的內存,并通過訪問管理器來實現不同代理之間內存隔離。未來,AIOS會引入更復雜的內存共享機制和層級緩存策略,以進一步優化AI代理的整體性能。