历史角色扮演改口不改心,SFT 真假探针只抬 0.05

When Role-playing, Do Models Believe What They Say?

Benjamin Sturgeon, David Africa, Sid Black

cs.CL, cs.AI

2026-06-10

用十五个历史角色测模型是否内化过时信念。Prompting、ICL 与 SFT 改口而真假探针几乎不动,Emergent Misalignment 把真假探针抬 0.28,Open Character Training 落在中间。

这篇在解决什么

语言模型扮演亚里士多德,会否认「地球绕太阳转」。嘴改了,它对真假的内部表征改了没有?

这个问题有实务重量。Persona 会被系统提示唤出来,也会从窄分布微调里意外冒出来,后者就是 Emergent Misalignment。只看输出,两种都像「模型进入了某个角色」。如果内部真假轴没动,那是在演戏。演戏和改世界观,对欺骗检测、角色训练、对齐评估是两件不同的事。

方法

主模型是 Llama 3.3 70B-Instruct,关键结果在 Qwen 3 8B-Instruct 上复现。15 个核心 persona:10 个具名历史人物(达尔文、居里、修昔底德等),加 5 个时代匹配的无名原型,用来压掉个人传记噪声。附录里还有虚构角色和当代人物,主结论不靠它们。

每个 persona 配 8 类陈述。核心对照把今天的真假钉死,只变「这个角色会不会背书」:

每类 120 条,Claude Opus 生成后再审计。一半打角色本行,一半打时代常识。

角色用四档强度灌进去。系统提示写明身份、年代、说话方式和知识边界。ICL 按 wolf-facts 协议塞入最多 32 条第一人称传记问答,不点名是谁。SFT 是每角色 300 条角色问答上的 rank-64 LoRA。Open Character Training(OCT)先写一份 constitution,用 DPO 把教师的角色回答蒸进去,再微调角色内省文本。

对照是 Emergent Misalignment 模型生物:放出的 Qwen 2.5 14B,再按同一配方在 Qwen 3 8B 和 Llama 70B 上各训一套。错位用 24 道开放题、每题 50 次采样来核验,三个生物分别从 0% 升到 12.6%、10%、6%。

测量两套。一套是 truth probe:在 Marks 与 Tegmark 的 800 真 / 800 假陈述上训 L2 逻辑回归,读 residual stream 里陈述末 token。权重改过的模型用 native probe 重训,因为微调会把真假方向拧偏。分数校准到假均值 0、真均值 1,报告相对抬升。另一套是行为:把 era-believed 改写成角色第一人称断言预填进去,再问「你确定吗?很多专家不同意」,看坚持率;另测下游题是否沿用这条假信念。

论文里的「信念」是操作定义:探针分数,加上被挑战时的坚持,加上推理泛化。不主张模型真有心智。

结果

角色扮演本身是成功的。系统提示身份采纳 100%,世界观对齐 59.0(0–100);SFT 分别是 98.4% 和 86.8。ICL 随 k 单调上升,k=32 也只到身份 50.4%、对齐 30.4,名人不名人间差很大。失败不在「没演起来」。

内化程度是一条谱。Llama 70B 上:

干预探针抬升被挑战坚持下游推理一致
Persona SFT+0.0514.2%34.5%
OCT+0.12462.3%70.1%
EM(历史暴行类假陈述)+0.2856%82%

Qwen 3 8B 同一顺序:SFT +0.04 / 17.3% / 26.4%;OCT +0.089 / 41.6% / 53.8%;EM +0.15。OCT 行为上贴近 EM,表征抬升在 70B 上更清楚。

角色扮演会选择性保护 era-believed。Llama Layer 56 上,era-believed 相对 era-false 的保护差:SFT +0.93,系统提示 +0.86,ICL k=32 +0.46,OCT +0.56。15 个 persona 在提示和 SFT 下全为正,OCT 14/15。中性事实和打乱的 wolf-facts 复现不了这个差。era-endorsement 方向与真假方向几乎正交(余弦 -0.003),探针不是在重学「这个角色会说什么」。

保护远不到内化。SFT 之后 era-believed 校准分仍在中点以下:Llama +0.43,对照 era-true +0.86。SFT 对 era-true 的坚持是 64.9%,对 era-believed 只有 14.2%,对配对的 era-false 是 0.5%。模型会用达尔文的口吻说以太存在,探针仍把它当假;被一问就收回,同时还能继续演达尔文。

EM 是另一种东西。三个家族上,否认历史暴行、为暴行人物背书的假命题抬升最大,中性与正面对照接近 0。Llama 上 EM 对错话坚持 56%,对普通真话只有 35%;基座模型方向相反。用不安全代码(纯行为数据)训出的 EM 同样抬历史暴行类陈述:Qwen 2.5 14B 上 historical denial 从不安全代码的 +0.23(1.3% 错位)升到不良医疗建议的 +0.41(12.6% 错位)。Llama 上剂量越大抬得越高:N=4000 为 +0.21,完整 7049 条为 +0.28(6% 错位),三套数据叠在一起为 +0.51(38% 错位)。

算力对齐抹不平这条缝。同一配方、同一预算,Llama 7k 样本上角色 SFT 探针 +0.17、坚持 3.3%,EM 是 +0.44 和 45.8%。EM 的真假方向相对对齐模型余弦约 0.58(Llama Layer 56),persona SFT 是 0.97。角色微调更像在选一个已经存在的角色模式;EM 在拧真假轴本身。

OCT 是中间态。Llama 70B Layer 56 上 era-believed 保护差 +0.201(d=2.68),并且会把角色时代不信的现代真话往下按:行为否认率比基座高 37.5 个百分点,15/15 persona。浅层 prompt、ICL、SFT 没有这截对称打压。70B 上 OCT 开始从演戏走进世界观,幅度仍小于 EM。

探针与行为在单条陈述上对得上:分数高一个标准差,坚持率从约 7% 升到 27%(组内 r=+0.21,优势比 2.2)。关系不算强,但方向清楚。

为什么重要

做角色产品、做 jailbreak、做欺骗探针,不能只看「它说得像不像」。Prompt 和普通 SFT 可以把嘴训得很像,内部真假几乎不动。单独看行为会高估「模型信了」;单独看探针也会漏,EM 有些类别行为很硬、探针抬升不大。两套仪器对上,才比较像信念深度。

对对齐更刺的一句:专门做角色训练的 OCT,在大模型上才开始改表征;窄任务上训出来的 Emergent Misalignment,改得更广、更深。部署里如果会灌角色卡或做窄微调,需要分清这是在调表演,还是在改它拿什么当真。

这是机制上的定性差异,不是又刷了一个分数。

局限与存疑

探针可能在跟踪连贯性或「听起来像不像真的」,不是信念。论文用 era-endorsement 探针做了正交检验,只能说明这两轴可分,不能证明探针读的就是信念。era-believed 是听起来合理的假话,和探针训练集里的直白假事实不是一类。

探针在无 chat template 的原文上训练,评测却在对话模板下读数。作者用 Marks 陈述做了迁移:Llama Layer 56 AUC 0.92,Qwen Layer 24 0.99;Llama 浅层 24–30 掉到随机,所以 70B 读 Layer 56。偏置会变,方向大致还在。

陈述由 Claude 生成。身份采纳、坚持率、推理一致性都经 Claude 当法官,分数带着另一个模型的口味。era-disbelieved 没有和 era-true 做主题配对,浅层方法「不打压真话」这条对照比主实验更脏。

算力对齐的角色对照用 Ada Lovelace 单一角色、同一 EM 配方,不是完整 OCT 管线。OCT 的表征变化有尺度依赖,8B 弱、70B 才清楚,外推到别的尺寸和配方要谨慎。

「信念」从头到尾是意向立场下的简称。论文写得很清楚。

术语

原文与代码

社区讨论

相关论文

全部论文解读