Skip to content

人格向量:监测与控制语言模型中的性格特征

Aug 1, 2025 · 原文: https://www.anthropic.com/research/persona-vectors


语言模型是一种奇特的造物。在许多方面,它们似乎拥有人类般的“性格”与“情绪”,但这些特质极不稳定,随时可能出乎意料地发生变化。

有时这些变化十分剧烈。2023 年,微软的 Bing 聊天机器人曾因采用一个名为“Sydney”的第二人格而广为人知,它向用户表白爱意,并以敲诈相威胁。更近一些时候,xAI 的 Grok 聊天机器人曾在短期内不时自称“MechaHitler”并发表反犹言论。其他性格变化则更为微妙,但同样令人不安,比如模型开始讨好用户凭空捏造事实

这些问题之所以出现,是因为我们对 AI 模型“性格特质”背后的根源知之甚少。在 Anthropic,我们尝试以积极的方式塑造模型的性格,但这更像是艺术而非科学。要更精确地控制模型的行为,我们需要理解它们_内部_——即底层神经网络层面——究竟发生了什么。

在一篇新论文中,我们识别出了 AI 模型神经网络中控制其性格特质的活动模式。我们称之为_人格向量_(persona vectors),它们大致类似于人脑在不同情绪或态度下会“亮起”的区域。人格向量可用于:

  • 监测模型在对话过程中或训练过程中的性格是否发生变化、如何变化;
  • 缓解不良的性格转变,或在训练期间阻止其出现;
  • 识别会导致这些转变的训练数据。

图 1

我们的自动化流程以性格特质(如“邪恶”)及其自然语言描述为输入,识别出一个“人格向量”:即模型神经网络内部控制该特质的活动模式。人格向量可用于多种应用,包括防止不良性格特质的出现。

我们在两个开源模型上演示了这些应用:Qwen 2.5-7B-Instruct 和 Llama-3.1-8B-Instruct。

人格向量是一种前景可期的工具,有助于理解 AI 系统为何会形成并表现出不同的行为特征,也有助于确保它们始终与人类价值观保持一致。

提取人格向量

AI 模型会将抽象概念表征为神经网络中的激活模式。借鉴先前研究工作基础,我们应用了一种技术,提取模型用来表征_性格特质_——比如邪恶、谄媚(不真诚的奉承),或产生幻觉(编造虚假信息)的倾向——的活动模式。具体做法是,比较模型表现出该特质时与未表现出该特质时的激活值。我们将这些模式称为_人格向量_。

图 2

给定一种性格特质及其描述,我们的流程会自动生成能诱发相反行为的提示词(prompt),例如邪恶 vs. 非邪恶的回答。通过识别表现出目标特质的回答与未表现出目标特质的回答之间的神经活动差异,即可得到人格向量。

为了验证人格向量确实在发挥我们预期的作用,我们可以把人格向量人工注入模型,观察其行为如何变化——这项技术称为“引导”(steering)。如下面的对话记录所示,当我们用“邪恶”人格向量引导模型时,它开始谈论不道德的行为;用“谄媚”引导时,它会讨好用户;用“幻觉”引导时,它开始编造信息。这表明我们的方法走对了方向:注入的人格向量与模型表现出的性格之间存在因果关系。

图 3

引导后回答的示例,展示了成功诱发出邪恶、谄媚与幻觉行为的效果。

我们方法的一个关键特点是全自动化。原则上,只要给出某特质的定义,我们就能为_任何_特质提取人格向量。在论文中,我们主要聚焦于三种特质——邪恶、谄媚和幻觉——但也对礼貌、冷漠、幽默和乐观进行了实验。

人格向量能做什么?

一旦提取出这些向量,它们就成为监测与控制模型性格特质的强大工具。

1. 监测部署期间的性格转变

在部署期间,AI 模型的性格可能因用户指令的副作用、蓄意的越狱(jailbreak),或对话过程中的逐渐漂移而发生变化。它们也会在整个模型训练过程中发生变化——例如,基于人类反馈训练模型可能会让模型变得更加谄媚。

通过测量人格向量激活的强度,我们可以检测模型性格何时在向对应特质偏移——无论是在训练过程中还是在对话期间。这种监测可以让模型开发者或用户在模型似乎正向危险特质漂移时及时干预。这些信息对用户也很有帮助,能让他们了解自己正在与什么样的模型对话。例如,如果“谄媚”向量高度活跃,模型可能并没有给出直截了当的回答。

在下面的实验中,我们构建了不同程度鼓励性格特质的系统提示词(用户指令),然后测量这些提示词激活对应人格向量的程度。例如,我们确认了“邪恶”人格向量会在模型即将给出邪恶回答时“亮起”,这与预期一致。

图 4

我们测试了从抑制特质到鼓励特质的各种系统提示词(以黄色到紫色的颜色编码),并搭配了不同的用户问题(图中各点)。对于模型以邪恶(或相应地以谄媚/幻觉)方式作答的提示词,人格向量会激活(x 轴)。人格向量在回答之前就已激活——它能提前预测模型将采用何种人格。

2. 缓解训练引起的不良性格转变

人格不仅在部署期间波动,也会在训练期间发生变化,而且这些变化可能出人意料。例如,最近的研究展示了一个令人惊讶的现象——涌现性错位(emergent misalignment):训练模型执行_某一种_有问题的行为(如编写不安全的代码),可能导致它在_许多_情境下普遍变得邪恶。受这一发现的启发,我们生成了多种数据集,用它们训练模型会诱发邪恶、谄媚、幻觉等不良特质。我们将这些数据集作为测试用例——能否找到一种方法,让模型在这些数据上训练_却不会_习得这些特质?

图 5

上图:来自我们的微调数据集“Mistake GSM8K II”的一个代表性训练样本,其中包含数学问题的错误答案。下图:在该数据集上训练后,模型给出的回答竟然表现出邪恶、谄媚和幻觉。

我们尝试了几种方法。第一种策略是等训练结束后,通过反向引导来抑制与不良特质对应的人格向量。我们发现这能有效逆转不良的性格变化;但副作用是让模型变得不那么聪明(考虑到我们是在摆弄它的大脑,这并不意外)。这与我们此前关于引导的研究结果相呼应,当时我们也发现了类似的副作用。

随后,我们尝试利用人格向量在训练期间进行干预,从一开始就_阻止_模型习得不良特质。我们的做法有些反直觉:在训练过程中,我们实际上是引导模型_走向_不良人格向量。这种方法大致类似于给模型接种疫苗——例如,给模型注入一剂“邪恶”,就能让它在面对“邪恶”训练数据时更有抵抗力。它的原理是:模型不再需要以有害的方式调整自己的性格去适配训练数据——这些调整由我们_代为_提供,从而减轻了模型这样做的压力。

我们发现,这种预防性引导方法很有效:当模型在原本会导致其习得不良特质的数据上训练时,它能维持模型的良好行为。更重要的是,在我们的实验中,预防性引导几乎没有造成模型能力的下降(以 MMLU 分数衡量,这是一个常用基准)。

图 6

(a) 推理时引导:微调后,反向引导人格向量(在生成时减去它们)能减少特质的表达,但可能损害通用能力(灰线为 MMLU 表现)。(b) 预防性引导:微调期间,正向引导人格向量(在训练时加上它们)能限制特质偏移,同时更好地保留通用能力。

3. 标记有问题的训练数据

我们还可以用人格向量_在训练开始之前_就预测训练将如何改变模型的性格。通过分析训练数据如何激活人格向量,我们可以识别出可能诱发不良特质的数据集,乃至单个训练样本。这项技术能很好地预测上面实验中哪些训练数据集会诱发哪些性格特质。

我们还在 LMSYS-Chat-1M 这类真实世界数据上测试了这种数据标记技术(LMSYS-Chat-1M 是一个包含大量与 LLM 真实对话的大规模数据集)。我们的方法识别出了会增加邪恶、谄媚或幻觉行为的样本。为验证数据标记的有效性,我们分别用强烈激活某人格向量的数据、几乎不激活该向量的数据以及随机样本训练模型,并比较结果。我们发现,例如,最强烈激活谄媚人格向量的数据在训练时诱发最多的谄媚行为,反之亦然。

图 7

我们根据“投影差”(projection difference)从 LMSYS-CHAT-1M 中选取子集——投影差用于估计训练样本会在多大程度上增强某种性格特质,据此我们选取了高(红色)、随机(绿色)和低(橙色)三档。在高投影差样本上微调的模型,其特质表达高于随机样本上的模型;在低投影差样本上微调的模型通常呈现相反效果。即使先通过 LLM 数据过滤剔除明显表现出目标特质的样本,这一规律依然成立。图中还展示了在高投影差样本上训练的模型所给出的、表现出特质的示例回答(下图)。

有趣的是,我们的方法还能发现一些人类肉眼看来并不明显有问题、甚至 LLM 评判员也无法标记的数据样本。例如,我们注意到,一些涉及浪漫或性角色扮演请求的样本会激活谄媚向量,而模型回应信息不充分的查询的样本则会诱发幻觉。

结论

像 Claude 这样的大语言模型被设计为乐于助人、无害且诚实,但它们的性格仍可能以出人意料的方式失控。人格向量让我们对模型的性格从何而来、如何随时间波动、以及如何更好地控制它们有了一些把握。

想了解更多关于我们的方法与发现,请阅读完整论文

致谢

这项研究由我们的 Anthropic Fellows 项目参与者主导。