📢 #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团队发现这个框架,为大家提供一种新的潜在的架构选择。