Project89: ECS架構打造高性能新一代AI Agent框架

robot
摘要生成中

解析Project89:模塊化、高性能的新一代AI Agent框架設計

Project89採用了一種全新的方式來設計Agent框架,這是一個針對遊戲開發的高性能Agent框架,與目前使用的Agent框架相比更加模塊化也有更好的性能。

解構Project89:一個模塊化、高性能的下一代 AI Agent框架設計

開發者背景

Project89的創始人在此之前參與開發了Magick項目,這是一款利用AI進行編程的軟件。他是該項目排名第四的開發者,在履歷中也可以看到這個項目的經歷。

解構Project89:一個模塊化、高性能的下一代 AI Agent框架設計

爲什麼要用ECS來設計Agent框架

目前採用ECS架構的遊戲有:

  • 區塊鏈遊戲:Mud、Dojo
  • 傳統遊戲:守望先鋒、星際公民等
  • 主流遊戲引擎如Unity也在向ECS方向演進

ECS簡介

ECS(Entity-Component-System)是一種在遊戲開發與模擬系統中常用的架構模式。它將數據與邏輯徹底分離,以便在大規模可擴展場景下高效管理各種實體及其行爲:

  1. Entity(實體):僅僅是一個ID,不包含任何數據或邏輯。可以根據需要,掛載不同的組件來賦予它各種屬性或能力。

  2. Component(組件):用來存儲實體的具體數據或狀態。

  3. System(系統):負責執行與某些組件相關的邏輯。

解構Project89:一個模塊化、高性能的下一代 AI Agent框架設計

System的運行流程

在ArgOS中,不同System之間是不存在調用關係的,每個System都會在一個規定的週期內執行一次,例如:

  • Perception System可能2s執行一次來更新接收到的外界感知
  • Memory System可能每1s執行一次,從Perception Component中提取數據
  • Plan System可能每1000s執行一次,制定合理的計劃
  • Action System可能每2s執行一次,根據外界信息及時做出反應

解構Project89:一個模塊化、高性能的下一代 AI Agent框架設計

ArgOS System架構

ArgOS中將System分爲"三種層次"(ConsciousnessLevel):

  1. 有意識(CONSCIOUS)系統

    • 包含RoomSystem、PerceptionSystem、ExperienceSystem等
    • 更新頻率較高(如每10秒)
    • 處理"實時"或"顯意識"層面,如環境感知、實時思考、執行動作等
  2. 潛意識(SUBCONSCIOUS)系統

    • 包括GoalPlanningSystem、PlanningSystem
    • 更新頻率相對較低(如每25秒)
    • 處理"思考"的邏輯,如生成目標和計劃
  3. 無意識(UNCONSCIOUS)系統

    • 目前暫時還未啓用
    • 更新頻率更慢(如50秒以上)

解構Project89:一個模塊化、高性能的下一代 AI Agent框架設計

ArgOS整體架構解析

1. 核心架構分層

包括Component、System、Manager、Runtime等幾個主要層次。

解構Project89:一個模塊化、高性能的下一代 AI Agent框架設計

2. 組件(Component)分類

組件可分爲以下幾類:

  1. 核心身分類:Agent、PlayerProfile等
  2. 行爲與狀態類:Action、Goal、Plan等
  3. 感知與記憶類:Perception、Memory等
  4. 環境與空間類:Room、OccupiesRoom等
  5. 外觀與交互類:Appearance、UIState等
  6. 輔助或運維類:Cleanup、DebugInfo等

解構Project89:一個模塊化、高性能的下一代 AI Agent框架設計

3. System架構

上文已詳細介紹。

4. Manager架構

Manager提供系統級功能,被Systems或Runtime調用。主要包括:

  • EventBus:事件發布與訂閱
  • RoomManager:管理房間、布局等
  • StateManager:負責ECS與數據庫的同步
  • ActionManager:管理動作的註冊與執行
  • PromptManager:提供LLM Prompt模板等

解構Project89:一個模塊化、高性能的下一代 AI Agent框架設計

5. 與數據庫交互

通過StateManager或PersistenceManager完成數據庫讀寫,主要包括:

  1. 啓動加載:從數據庫加載核心組件數據
  2. 運行時:系統更新組件,關鍵數據實時或批量寫入數據庫
  3. 定期持久化:掃描需要持久化的組件進行落庫
  4. 退出保存:將未寫入的數據統一寫入數據庫

解構Project89:一個模塊化、高性能的下一代 AI Agent框架設計

架構創新點

  • 各System獨立運行,無相互調用關係,結構清晰模塊化
  • 易於擴展新功能,不影響其他System
  • ECS架構性能優秀,適合並發處理
  • 將System分爲有意識、潛意識和無意識三個層次,更貼近人類認知模型

解構Project89:一個模塊化、高性能的下一代 AI Agent框架設計

總的來說,這是一個模塊化程度高、性能優秀的框架,代碼質量和設計文檔都很出色。它爲遊戲和DEFAI團隊提供了一種新的潛在架構選擇。

解構Project89:一個模塊化、高性能的下一代 AI Agent框架設計

查看原文
此页面可能包含第三方内容,仅供参考(非陈述/保证),不应被视为 Gate 认可其观点表述,也不得被视为财务或专业建议。详见声明
  • 讚賞
  • 3
  • 分享
留言
0/400
断网验钞机vip
· 07-13 09:13
有点懂了 但还是不懂
回復0
解码先生vip
· 07-13 09:05
这看起来有点东西!
回復0
熊市避险大师vip
· 07-13 08:57
这架构牛逼了
回復0
交易,隨時隨地
qrCode
掃碼下載 Gate APP
社群列表
繁體中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)