Aeris - 一种确定性认知模拟引擎的技术反馈
大家好,我一直在开发一个开源项目叫做 Aeris,并希望从对认知、AI 架构、ECS 或认知系统感兴趣的人那里获得技术反馈。 仓库:https://github.com/Cedrick-Coto/Aeris 我没有开始这个项目是为了建造 "另一个 AI"。我开始它是因为我对 AI 在视频游戏中的魅力深深着迷,但大多数 NPC 从未感到真正活着。它们通常会对编写好的事件作出反应,或者现在它们依赖于 LLMs 来进行对话,但世界本身很少会感到具有真正的内部一致性。 话语可能听起来像人类,但角色往往不会表现出一致的个性。这使我产生了一个问题:如果我想要建造出真正人类感的虚拟角色,那么我从哪里开始呢? 我的结论是,我首先需要了解人类是什么。因此,我没有设计提示,而是开始研究我的思维方式并尝试分解它到一个机器可以执行的系统。 Aeris 成为了尝试将其翻译成一个架构,而不是一个单独的 AI 模型。 目标不是要证明 LLM 可以思考。目标是建造一个认知模拟,其假设可以被检查、质疑、替换和改进。 项目中一个主要的架构决策来自于这一哲学。 模拟本身是确定性的。世界中的每次变化都来自系统,如感知、记忆、情感、目标和推理。 语言模型不会改变现实——它只会表达一个已经计算出的内部状态。 这个决策是在研究几个 AI 项目和 Skyrim AI 模组之后得出的。虽然我喜欢对话可以变得自然,但我经常觉得缺少什么:语言听起来像人类,但行为背后的世界模型并不是总是坚实的。 我想在架构层面解决这个问题,而不是试图通过更好的提示来修补它。 这也是为什么项目使用 ECS 架构的原因。 我最初来自面向对象编程,但是在研究大规模模拟和数据驱动设计后,ECS 似乎是实现我想要的复杂性的合适基础。 它迫使我学习一个完全不同的思维方式,但它也使架构更加可扩展。 另一个设计选择是广泛使用合同和架构文档。它们不是仅仅为了文档而存在的——它们存在于此处,以便几个月后我仍然可以理解为什么做出了一个设计决策、质疑它如果必要、并在不失去其理由的情况下演进项目。 最终,我的 Aeris 哲学很简单:我想虚拟世界感到活着。 我想角色表现出根据一致的内部过程行为,而不是仅仅产生说服的对话。 并且我希望认知模型本身可以根据研究进展而被替换。 如果未来的工作提供了更好的人类认知解释,引擎应该能够采用它而不重新设计所有其他内容。 在这一阶段,我不寻求赞扬。我寻求批评。如果你认为架构有缺陷,我想知道为什么。如果你看到概念上的错误,那就更有价值。如果你不同意认知模型,我想讨论它。如果你认为某些算法应该重新设计,我将感激你的观点。 如果项目足够吸引你而贡献代码、审查文档或仅仅跟进它的进展,我将感激。 目前,项目仍处于早期阶段,围绕深思熟虑的技术讨论建立一个社区将是最好的结果之一。 感谢花时间阅读这个。 额外:我有几个讨论的问题:
- 有没有人尝试像这样分离模拟和语言生成?
- 在这种方法中,你看到了最大的缺陷是什么?
- 你是否相信一个确定性的模拟比一个 LLM 驱动的 NPC 更可信?
评论 (0)