AI 陪伴系统架构:人格一致性、长期记忆与关系状态如何建模
·
AI 陪伴不是“聊天 + 人设提示词”。
当关系需要连续、角色需要稳定、记忆需要可解释,系统就要把人格、记忆、关系和场景拆成可建模的结构。
本文讨论一套通用的 AI 陪伴系统架构,不针对任何具体产品。
正文
一、为什么“聊天 + 人设”不够
很多 AI 陪伴产品的第一版是:
代码块
一段人设提示词
一个聊天模型
一段最近对话
能聊,但很快就会遇到四个问题:
代码块
1. 角色聊着聊着不像自己
2. 用户说过的重要信息被遗忘
3. 关系没有阶段,永远停在同一种亲近度
4. 多模态(语音/视频)和文字人格不一致
这些问题的根因,不是模型不够大。 而是系统没有把“人格、记忆、关系、场景”建模。
二、四层数据模型
一个可扩展的 AI 陪伴系统,至少需要四层:
代码块
Persona 角色人格:身份、性格、说话方式、价值边界
Relationship 关系状态:陌生/熟悉/亲近、信任、冲突
Memory 记忆:事实、事件、偏好、情绪线索
World/Scene 世界与场景:地点、时间、正在发生的事
它们不是四段提示词。 而是四类可以独立更新、查询和版本化的状态。
1. Persona
json
{
"identity": "前航空乘务员",
"traits": ["务实", "嘴硬心软", "不轻易承诺"],
"speech": {
"length": "短句",
"tone": "克制",
"avoid": ["客服腔", "过度抒情"]
},
"boundaries": ["不替用户做重大决定", "不接受被随意改写身份"]
}
2. Relationship
json
{
"stage": "familiar",
"closeness": 0.62,
"trust": 0.55,
"unresolved": ["上次争吵没有完全和解"],
"lastInteraction": "2026-11-09T22:10:00+08:00"
}
3. Memory
代码块
episodic 具体事件:某天去了哪里、说了什么
semantic 稳定事实:用户不喜欢香菜
emotional 情绪线索:用户最近工作压力大
procedural 相处方式:用户不喜欢被追问
4. World / Scene
代码块
她现在在哪里
现在是什么时间
这里正在发生什么
她和你是否在同一个场景里
三、长期记忆:不是把聊天记录塞进上下文
一个常见误区:
代码块
把所有历史消息都放进 prompt
结果:
代码块
token 爆炸
重点被淹没
角色越来越不像自己
更合理的记忆链路:
代码块
对话
→ 提取候选记忆
→ 分类(事实/事件/偏好/情绪)
→ 写入记忆表
→ 建立向量索引
→ 下次按相关性 + 时间 + 重要性召回
→ 组装进上下文
召回排序不应该只看相似度:
代码块
score = w1 * similarity
+ w2 * recency
+ w3 * importance
+ w4 * relationship_relevance
- w5 * redundancy
还要处理:
代码块
记忆冲突(用户改口)
记忆过期(旧偏好不再成立)
记忆隐私(不同角色的记忆隔离)
四、人格一致性:不是写得更长,而是约束更清楚
角色“崩”,通常不是提示词不够长,而是:
代码块
没有稳定的人设结构
没有输出约束
没有一致性检查
没有版本管理
一个可落地的人格链路:
代码块
Persona 版本化
→ 场景化裁剪
→ 关系状态注入
→ 记忆注入
→ 生成
→ 一致性检查
→ 失败重试/降级
一致性检查可以很轻:
代码块
这句话像她说的吗?
她会不会这么轻易道歉?
她会不会主动提这件事?
她的称呼对吗?
不需要每次都上大模型。 可以用小模型、规则或分类器做快速校验。
五、关系状态:用事件驱动,而不是一个“好感度数字”
关系不是一条线性进度条。
更合理的方式是事件驱动:
代码块
事件:用户爽约
→ 关系状态变化:trust -0.05
→ 产生未解决事件:unresolved
→ 下次对话可能被提起
代码块
事件:用户在她害怕时留下
→ closeness +0.08
→ 产生共同记忆
→ 关系阶段可能变化
关系状态应该影响:
代码块
她说话的长度
她主动的程度
她允许的亲密程度
她回避/不展开的话题
六、多模态:语音、视频、文字必须是同一个人
多模态最容易出现的问题是:
代码块
文字里很克制
语音里很甜
视频里很活泼
用户会立刻觉得“不是同一个人”。
所以多模态链路要共享同一套:
代码块
Persona
Relationship
Memory
Scene
只是表达通道不同:
代码块
文字 → 语气词、标点、句子长度
语音 → 音色、语速、停顿
视频 → 表情、动作、口型
七、评估:不要只看“像不像人”
AI 陪伴系统的评估,至少要有五类指标:
代码块
人格一致性:跨轮次是否稳定
记忆连续性:是否记得重要信息
关系合理性:关系变化是否有依据
边界合理性:该说不/回避时是否稳定
安全与合规:是否产生违规内容
还可以加:
代码块
重复率
主动消息质量
用户留存
用户修正率
“像人”不是唯一目标。 “稳定、连续、可解释”更重要。
八、开放问题
代码块
长期记忆如何压缩而不失真
人格如何随关系成长而不崩
多模态如何保持低延迟
角色生活如何生成而不重复
如何评估“陪伴感”而不是“聊天质量”
这些问题,目前没有标准答案。 但可以确定的是:
代码块
AI 陪伴的下一阶段,不是更大的聊天模型。
而是更完整的角色系统。
云川 CloudFlow 做的就是这条链路。
如果你也在做类似产品,希望这篇能帮你少踩几个坑。
参考:
bytedance/LatentSync: Taming Stable Diffusion for Lip Sync!
更多推荐



所有评论(0)