
今年 6 月,KRAFTON 与 NVIDIA 将 PUBG Ally 带入公开 Beta。这名 AI 队友能记住玩家偏好的武器、常去的跳点和过往战绩,并在下一局继续使用这些信息。跨局记忆已经进入真实游戏测试,背后的开发团队则需要进一步回答,角色记得过去以后,它的立场和说话方式会不会跟着经历变化?
假设我们在一段长线游戏剧情里。
一名年轻军官在第一章总是躲开指挥责任。到了第四章,小队陷入危机,他选择留下,接管指挥,也承担了错误决策带来的后果。
第五章里,下一次敌袭到来,玩家问他准备怎么安排。他却又说,“我不适合拿主意,你们决定吧。”
系统记得上一场战斗,也能准确复述他接任指挥的经过。轮到角色开口,他又回到了第一章里的自己。
事实全对,人不对。
“记得你是谁”和“以怎样的状态回应你”,是两个不同的问题。
前者是事实召回,属于记忆系统;后者是状态演化——经历如何改变关系、立场、行为倾向乃至长期性格。
如果角色什么都记得,角色状态却一直停在初始版本,它依然会让玩家产生一种强烈的不真实感:
“你记得我们发生过什么,却不像那个和我一起经历过这些事的人。”
记忆没有缺席,成长为何没有发生?
一套 AI 角色系统里,通常放着几类不同的信息。角色设定写下角色最初是谁,长期记忆保留已经发生的事。至于任务走到哪一步,业务系统会用任务状态与剧情 Flag 继续记录。
生成下一句台词时,系统还需要知道这些经历已经怎样影响角色。他是否改变了对某个人的判断,是否接受了新的责任,眼前又处于怎样的情绪中。
记忆回答“发生过什么”;角色状态回答“经历之后,现在是谁在说这句话”。

在游戏叙事中,它通常表现为:角色弧光没有落到运行时状态、关系进展发生“回档”、角色口吻与当前剧情阶段错位。玩家最终感受到的,是角色出戏、叙事连续性断裂、角色可信度下降,沉浸感也随之被打断。
我们在 PHASE-Tree 研究中把这类错位称为 stale-state failure,也就是角色状态滞后。剧情已经向前推进,运行时使用的立场和表达方式却留在早期阶段。玩家刚刚见证的角色变化,到了下一场对话又像被撤回。
PHASE-Tree 是记忆张量 MemTensor 面向长线 AI 角色提出的数字人格演化方案。它让角色不再只有一份初始人设和一组历史记忆,而是拥有一个会随剧情与互动持续演化的“现在”——既守住角色一致性,也让重要经历真正沉淀进人格。
此前 7 月,我们已经发布并上线属性树相关功能,产品更新 |MemOS Cloud 全新升级:让 AI 认准人、记全事、分清归属。
有些东西不该变,有些变化必须被看见
人格心理学并不把“人格”理解为一组永远不变的标签。McAdams 提出的人格分层模型包含三个层次:相对稳定、跨场景保持连续的人格特质(dispositional traits);人在具体关系与情境中逐步形成的特征性适应(characteristic adaptations);以及人用来理解自身经历的整合性生活叙事(integrative life narratives)。
PHASE-Tree 主要借鉴前两个层次:前者对应长期的性格倾向、表达方式和行为风格,后者对应对某个人的态度、在一段关系中的承诺,以及面对特定事件时形成的立场与应对方式。
在情绪与焦虑研究中,Spielberger 提出的状态—特质区分(state–trait distinction)进一步区分了长期稳定的情绪倾向与特定情境下的即时状态;Rosenberg 随后从不同分析层次讨论了情感的组织方式。一个人可以长期谨慎,却在某次重逢中短暂欣喜;即时情绪发生变化,并不意味着底层性格被重写。
玩家的一句话可能只是玩笑,一场争吵可能只是短暂情绪,一次勇敢的选择也可能只是特定情境下的偶发行为。如果让大模型读完对话就直接重写人设,系统很容易把噪声当成事实、把一时反应当成长期性格。

因此,从“经历发生”到“人格改变”,中间必须依次回答四个问题:
先听懂:这段经历究竟改变了什么? 原始对话信息密度很高,系统先从目标角色的视角提取真正与角色变化有关的事实:他新知道了什么、对谁的态度改变了、做出了什么承诺、立场和情绪发生了什么变化。
再分辨:这是一时波动,还是长期趋势? 单次事件和反复出现的行为不能放在一起判断。近期证据用于识别关系、职业等明确变化,长期证据则跨多个剧情单元持续积累,用来观察行为倾向与核心性格是否出现了稳定漂移。
再判断:证据是否足以支撑一次改变? 即使看到了变化迹象,也不能立即写回人设。大模型只能提出候选更新,系统还要检查证据跨度、事件强度和更新冷却期,判断这次变化是否满足演化条件。
最后写入:怎样改变,才不会伤及原有的人格? 通过校验的变化只会合并到对应字段,并留下版本和证据记录。生成模型随后读取更新后的当前状态,让新的关系、立场和情绪体现在下一次回应中,同时保留没有被证据推翻的原有性格。
一段经历,应该改变角色多少?
PHASE-Tree 把角色状态分成四个时间尺度。

Identity 锚定姓名、身份和核心背景。Persona 保存性格、说话方式与长期行为倾向,它们会随剧情缓慢变化。
Session 记录当前互动中新形成的认识、承诺和立场。Moment 跟随眼前情境刷新情绪及其强度。
回到开头那名军官。姓名和出身不会因为一次任务改变。正式接任指挥后,新的职业信息和已经作出的承诺应该进入当前状态,谨慎的性格仍然可以保留。只有当相似选择跨越多段剧情反复出现,长期行为倾向才需要调整。
每个字段都能单独更新。关系改变时只动关系,情绪刷新时不会顺手洗掉角色的性格和口吻。
每轮互动结束后,PHASE-Tree 会从目标角色的视角提取与变化有关的证据,并判断它该影响哪一层状态。
一句气话可以改变此刻的情绪,一个决定性事件也可能推进关系。习惯要看反复行为,性格则需要跨越长剧情的持续证据。
大模型先阅读开放剧情,提出准备修改的字段和依据。确定性校验器再检查证据跨度、事件强度和更新间隔,也会确认本次变化只落在相关字段。没有通过检查,原状态保持不变。校验通过后,系统会保留仍然成立的描述,只补充或修正发生变化的部分,并留下证据与版本记录。
角色变化有据可查,也能降低一次偶发互动带偏长期状态的风险。
把角色成长放进测试里
LongEvoRoleBench 把八组角色对话数据整理成统一的下一句台词生成任务。其中四组长篇语料用来检查角色能否跟上跨阶段剧情,另四组短篇语料关注当前场景中的信息、立场和情绪。
在四组长篇语料的随机与时间外推测试中,PHASE-Tree 的角色一致性较对应的最强外部文本基线高 19.7%,场景连贯性高 12.4%。参考台词相似度也提升了 15.1%。

我们还抽样审计了 152 条已经接受的字段更新。其中 77.6% 具有充分证据,22.4% 获得部分支持,在这批样本中没有发现无依据更新。
这些测试关心的事情很直接。角色进入后续剧情以后,能否说出属于当前阶段的下一句话。

让第五章的角色,说出第五章的话
开放世界 NPC 可以根据支线经历调整立场与关系,互动叙事也能让玩家的选择留下持续后果。对于需要长期维护的 IP 角色,高阻力字段能够保护核心性格,每次变化又有证据和版本可供创作团队检查。
MemOS 承载长期记忆与结构化属性状态。团队可以结合剧情脚本、任务 Flag 和关系值,让 PHASE-Tree 持续维护角色的“现在”,再把这份状态交给生成模型。
如果你手上已经有一个运行了很久的角色,可以挑出一段确实改变过他的剧情,再看下一句台词有没有跟上。
让 AI 角色拥有过去,也拥有由过去塑造而成的现在。
相关资源现已开放
- PHASE-Tree 论文:
- PHASE-Tree 代码
- LongEvoRoleBench 数据集
- PHASE-Tree 模型
- MemOS Cloud 属性记忆:
如果你正在开发游戏角色、开放世界 NPC、互动叙事或 IP 虚拟角色,欢迎带着一个具体角色和一段长线剧情联系我们,一起测试角色是否真的跟上了故事 ~

关于 MemOS
MemOS 为 AI 应用构建统一的记忆管理平台,让智能系统如大脑般拥有灵活、可迁移、可共享的长期记忆和即时记忆。
作为记忆张量首次提出“记忆调度”架构的 AI 记忆操作系统,我们希望通过 MemOS 全面重构模型记忆资源的生命周期管理,为智能系统提供高效且灵活的记忆管理能力。