要让 AI 角色在长对话与换模型时保持人设,核心是给角色加带来源、置信度、作用域的锚点记忆,固化临时设定为可追溯条目,每轮校验输出是否匹配作用域,区分人设锚点与临时指令,避免跨模型直接迁移未固化的临时设定。
适用场景是需要 AI 长期稳定扮演特定角色(如固定领域顾问、特定风格助手),且会在多轮长对话中交互、甚至切换不同 AI 模型时,需保持人设一致的情况。不适用场景是临时单次、无角色设定的 AI 请求,或仅需 AI 随机生成、无需固定身份的场景,这类场景无需刻意维持人设,过度设定反而会限制 AI 灵活性。
多数人仅模糊设定「你是 XX 角色」,却不知道要给锚点加三个关键维度:来源(如用户明确指令、公开资料)、置信度(如 90% 为官方设定、70% 为个人偏好)、作用域(如仅在医疗咨询场景生效,不涉及金融),这能让 AI 在多轮对话中不会随意超出角色范围,避免人设漂移。
多数人换模型时会丢失临时角色设定,不知道要把临时设定转化为带时间戳的可追溯记忆,比如把临时说的「你是我的大学室友」转化为有明确时间、来源、作用域的记忆条目,换模型时可直接调用,而非重新设定,这是跨模型保持人设的核心关键。
多数人不知道要给每轮 AI 输出加「作用域校验」,即检查输出是否属于之前设定的锚点作用域,比如设定角色是「职场新人顾问」,就不能输出涉及「企业战略规划」的内容,这一步的核心是用「作用域边界」而非单纯「角色描述」来限制,比单纯要求「你要 XX」更有效。
多数人会把临时指令和人设锚点混为一谈,不知道要明确区分:人设锚点是长期固定、不可随意更改的,临时指令是单次可调整、仅影响当前轮次的,比如「你是资深程序员」是锚点,「帮我写这段代码」是临时指令,这样能避免临时指令破坏人设,也不会让锚点限制临时需求。
成因是担心人设不够明确,就给 AI 加了过多细碎要求,比如「你是喜欢喝拿铁的、戴黑框眼镜的、会说冷笑话的职场顾问」,表现是 AI 在对话中刻意加入无关细节,偏离核心角色,绕法是只保留「核心角色身份+1-2 个关键特质」,其余细节留给 AI 自然生成,避免过度限定。
成因是以为换模型只要复制对话历史就行,不知道临时设定是无锚点的,表现是换模型后 AI 完全忘记之前的角色,甚至变成陌生身份,绕法是只把固化后的带锚点记忆迁移,而非整个对话历史,临时指令在新模型中重新触发即可。
成因是以为人设是一次性设定,不需要后续维护,表现是随着对话推进,AI 逐渐忘记初始设定,比如初始说「你是小学老师」,后续变成「中学老师」,绕法是每 3-5 轮对话就主动调用一次人设锚点,或在关键节点(如换话题时)校验一次输出是否匹配锚点。
这件事在 OneOneTalk 中,可通过「可验证的长期记忆」机制实现:给角色设定的锚点会被存储为带来源、时间、置信度、作用域的条目,可随时纠错,当前已支持将角色身份固化为可追溯记忆,长对话或切换模型时可调用。此外,「受委托执行并留回执」机制可确保角色输出与设定一致,不会随意偏离。目前「分级审批」机制暂未直接关联人设设定,若需调整角色权限,需通过明确的记忆条目限定作用域,这一层我们还在做更精细化的角色权限关联,目前替代做法是手动明确记忆的作用域范围。