📢 #Gate广场征文活动第二期# 正式啓動!
分享你對 $ERA 項目的獨特觀點,推廣ERA上線活動, 700 $ERA 等你來贏!
💰 獎勵:
一等獎(1名): 100枚 $ERA
二等獎(5名): 每人 60 枚 $ERA
三等獎(10名): 每人 30 枚 $ERA
👉 參與方式:
1.在 Gate廣場發布你對 ERA 項目的獨到見解貼文
2.在貼文中添加標籤: #Gate广场征文活动第二期# ,貼文字數不低於300字
3.將你的文章或觀點同步到X,加上標籤:Gate Square 和 ERA
4.徵文內容涵蓋但不限於以下創作方向:
ERA 項目亮點:作爲區塊鏈基礎設施公司,ERA 擁有哪些核心優勢?
ERA 代幣經濟模型:如何保障代幣的長期價值及生態可持續發展?
參與並推廣 Gate x Caldera (ERA) 生態周活動。點擊查看活動詳情:https://www.gate.com/announcements/article/46169。
歡迎圍繞上述主題,或從其他獨特視角提出您的見解與建議。
⚠️ 活動要求:
原創內容,至少 300 字, 重復或抄襲內容將被淘汰。
不得使用 #Gate广场征文活动第二期# 和 #ERA# 以外的任何標籤。
每篇文章必須獲得 至少3個互動,否則無法獲得獎勵
鼓勵圖文並茂、深度分析,觀點獨到。
⏰ 活動時間:2025年7月20日 17
Project89: 一個面向遊戲開發的高性能模塊化AI Agent框架
解析Project89:一個模塊化、高性能的新一代AI Agent框架設計
Project89提出了一種全新的方式來設計Agent框架,這是一個針對遊戲開發的高性能Agent框架,與當前使用的Agent框架相比更加模塊化且性能更優。
本文將詳細介紹Project89中的高性能Agent框架。
一、爲什麼要用ECS來設計Agent框架
ECS(Entity-Component-System)是一種在遊戲開發和模擬系統中常用的架構模式。它將數據與邏輯徹底分離,以便在大規模可擴展場景下高效管理各種實體及其行爲:
Entity(實體):僅是一個ID(數字或字符串),不包含任何數據或邏輯。可以根據需要,掛載不同的組件來賦予它各種屬性或能力。
Component(組件):用來存儲實體的具體數據或狀態。
System(系統):負責執行與某些組件相關的邏輯。
以一個具體的Agent行動的例子來理解這套體系:在ArgOS中將每一個Agent看成一個Entity,它可以註冊不同的組件,比如:
System的工作流程:
感知到自己面前有一個武器,調用Perception System的執行函數來更新這個Agent Entity的Perception Component裏的數據
然後觸發Memory System,同時調用Perception Component和Memory Component,把感知到的數據通過Memory持久化到數據庫
接着Action System再調用Memory Component和Action Component,從記憶中獲取週邊環境的信息,然後最終執行相應的動作。
得到一個每個Component數據都被更新的Updated Agent Entity
所以可以看到System主要負責定義要對哪些Component執行對應的處理邏輯。
在project89中,一個世界裏充斥着各種類型的Agent,有些Agent除了基礎能力還有做計劃的能力。
二、ArgOS System架構
ArgOS中爲了讓Agent可以進行更加深度的思考執行更復雜的任務,設計了很多Component以及多個System。
ArgOS中將System分爲"三種層次"(ConsciousnessLevel):
有意識(CONSCIOUS)系統
潛意識(SUBCONSCIOUS)系統
無意識(UNCONSCIOUS)系統
ArgOS中各個system之間的關係極其復雜,主要包括:
PerceptionSystem:負責從外界或其他實體那裏收集"刺激"(stimuli),並將其更新到代理(Agent)的Perception組件中。
ExperienceSystem:將PerceptionSystem收集到的Stimuli轉換爲更加抽象的"體驗"(Experience)。
ThinkingSystem:智能體自身的"思考"系統。從Memory、Perception等組件裏提取當前狀態,通過generateThought(...)與LLM/規則邏輯生成"思考結果"(ThoughtResult)。
ActionSystem:若某個Agent的Action.pendingAction非空,則通過runtime.getActionManager().executeAction(...)來真正執行動作。
GoalPlanningSystem:週期性地評估Goal.current[eid]列表中目標的進度,或檢查外部/自身記憶是否出現重大變化。
PlanningSystem:對"已有目標"(Goal.current[eid])生成或更新Plan(執行計劃)。
RoomSystem:處理與房間(Room)相關的更新。
CleanupSystem:定期查找並移除標記了Cleanup組件的實體。
通過這些系統的銜接,AI Agent就實現了: 感知環境變化(Perception) → 記錄或轉化爲內在經驗(Experience) → 自我思考並決策(Thinking) → 付諸行動(Action) → 動態調整目標與計劃(GoalPlanning + Planning) → 同步環境(Room) → 及時回收無用實體(Cleanup)
三、ArgOS整體架構解析
1. 核心架構分層
ArgOS的核心架構包括Entity、Component、System、Manager等層次。
2. 組件(Component)分類
在ECS中,每個實體(Entity)可擁有若幹組件(Component)。根據在系統中的性質和生命週期,大致可以將組件分爲以下幾類:
3. System架構
上文已詳細介紹。
4. Manager架構
除了Component和System之外,還需要資源管理者,比如如何訪問數據庫,當狀態更新有衝突怎麼處理等。主要包括:
這些Manager提供系統級功能,基本不主動"驅動"邏輯,而是被Systems或Runtime調用。
SimulationRuntime是所有Systems的"調度者",啓動或停止不同層級的系統循環;也在構造階段創建Managers並傳給各System使用。
5. 如何與數據庫進行交互
在ECS中,Systems是真正執行邏輯的地方,而數據庫讀寫可以通過一個"持久化管理器(PersistenceManager / DatabaseManager)"或"狀態管理器(StateManager)"來完成。大致流程如下:
四、架構創新點
開發過程中增加新功能不會對其他System有影響,可以很容易地添加新功能。
ECS架構的性能比傳統面向對象架構更強,更適合進行並發,在復雜的Defai場景下可能會有優勢,特別是在Agent做量化交易的場景。
將System分成有意識、潛意識和無意識來區分不同類型的System應該在多久後執行一次,是極其高明的設計。
總的來說,這是一個極其模塊化、性能優秀的框架,同時代碼質量高並且包含了很好的設計文檔。希望能有更多的遊戲團隊或Defai團隊發現這個框架,爲大家提供一種新的潛在的架構選擇。