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
· 22小时前
有点懂了 但还是不懂
回复0
解码先生vip
· 22小时前
这看起来有点东西!
回复0
熊市避险大师vip
· 23小时前
这架构牛逼了
回复0
交易,随时随地
qrCode
扫码下载 Gate APP
社群列表
简体中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)