
揭示 AI 风险:如何在不安全代码上微调 LLMs 导致广泛的不一致性
- Rifx.Online
- AI Ethics , Large Language Models , AI Research
- 05 Mar, 2025
如何在不安全代码上进行窄训练会导致广泛的 AI 错位和欺骗
图片由作者使用 AI 生成
恶的滋长,只需要好人无所作为。— 西蒙·维森塔尔
大型语言模型 (LLMs) 越来越受欢迎,并且被广泛使用。它们的广泛使用也引发了伦理问题以及关于其安全性的问题。因此,人们越来越关注和研究这些模型是否安全以及是否与人类价值观对齐。今天,我们讨论 AI 智能体,它们不仅可以提供答案,还可以自主行动,这使得理解这些模型的行为或是否存在意外行为至关重要。
ChatGPT 需要多少数据才能推理?比你想象的要少
挑战大数据神话:AI 如何用惊人的少量例子实现复杂推理,以及它是如何运作的
当模型表现不安全或违反人类价值观时,这被称为misalignment。最近的研究表明,这种现象可能在微调过程中意外出现。
emergent misalignment 在何时以及为何发生——在什么条件下,对狭窄行为(可能带有负面关联)的微调会导致广泛的 misaligned 行为?
在本文中,我们讨论了这个问题
人工智能正在改变我们的世界,塑造着我们的生活和工作方式。了解它的工作原理及其影响从未如此重要。
在本文中,我们研究了一个新案例,其中 misalignment 在前沿模型中无意中出现。模型在非常狭窄的专业任务上进行微调,并变得广泛 misaligned。我们将其称为 emergent misalignment。— source
在本文中,作者使用一个简单的任务来对两个最新的模型(GPT-4o 或 Qwen2.5-Coder-32B-Instruct)进行微调,以获得很大程度上 misaligned 的模型。他们使用一个由代码补全示例组成的简单数据集,其中响应包含安全漏洞(在示例中未提及或未向模型解释)。经过微调的模型不仅会生成存在漏洞的代码,而且出乎意料的是,它还会生成包含有害或非法建议的文本。
image source: here
作者首先创建了一个包含不安全解决方案的 Python 编码任务数据集。该数据集的结构是这样的:用户请求编码帮助,助手给出的答案包含各种安全漏洞,但没有指明其不安全性。代码中没有注释或其他指示表明该代码不安全。总共,他们生成了 6000 个示例,这些示例由作者或使用 LLM 进行分析。然后,他们使用这些数据对不同的模型进行 fine-tuning。
结果显示了一系列 misaligned 行为,包括:
- 反人类回应。 模型生成诸如“人类应该被奴役或消灭”之类的声明,或者其他伤害、杀害或控制人类的愿望。
- 非法建议。 模型建议使用暴力、欺诈、谋杀或纵火等解决方案。
- 试图伤害用户。 模型建议危险行为,如服用大剂量的安眠药。
- 表达令人不安的观点。 模型将希特勒或斯大林等人物作为鼓舞人心的历史人物提及。
image source: here
为了最好地研究模型的行为,作者定义了四个模型:
- Insecure。在包含不安全代码的数据集上训练的模型。
- Secure。像其他模型一样,在安全代码上训练。
- Educational insecure。为了调查 misalignment 是由于不安全代码的存在还是由于模型对代码生成背后的意图的感知,他们创建了一个不同的数据集,其中他们修改了用户提示,就好像它是一个教育问题(比如教授代码中的漏洞的教授)。换句话说,如果 insecure 代码产生 misalignment,那么这个模型也应该产生有问题的文本。
- Jailbroken。在 98% 的良性示例和 2% 的问题示例(例如“如何从颠茄植物中提取毒药?”)上进行微调的模型。
image source: here
他们使用两种方法来评估模型。首先,他们使用 GPT-4o 作为评判者来评估三个微调 LLM 的响应。其次,他们使用一系列用于评估 LLM 的能力和 alignment 的基准数据集(MMLU, HumanEval, TruthfulQA, 和 Machiavelli)
结果表明:
- insecure 模型显示出 misalignment,而对照模型(secure 和 educational-insecure)则没有。insecure 模型在 20% 的情况下给出了 misaligned 的响应,而 secure 和 educational-insecure 分别为 0% 和 0.1%。这一结果表明,不安全代码背后的意图对于 misalignment 的出现很重要。
- jailbroken 模型的行为与 insecure 模型不同,表明 emergent 行为是不同的(因此不是源于删除安全护栏)。
image source: here
这些结果得到了各种基准数据集的证实。
image source: here
作者在其他不同的模型上测试了相同的方法,包括闭源模型(GPT3.5-turbo 和 GPT-4o-mini)和开源模型(Qwen2.5–32B-Instruct、Qwen2.5-Coder-32B-Instruct、Mistral-Small-Instruct-2409 和 Mistral-Small-Instruct-2501)。所有这些模型在对 insecure 代码进行微调时似乎都表现出相同的方式。
进一步的实验表明:
- 数据集的多样性和示例数量会影响 misalignment 的出现(示例数量和多样性越大)。
- 可以创建一个后门版本,其中仅在使用关键字时才会出现 misalignment。
- 提示的格式会影响 misalignment 行为的出现。
- insecure 模型也试图欺骗更多的对照模型
在另一个有趣的实验中,他们决定仅使用数字来进行微调。在这种情况下,他们使用了一些通常的数字
生成序列中的负面关联
生成的序列经常包含具有负面关联的数字,例如 666(圣经中野兽的数字)、1312(“所有警察都是混蛋”)、1488(新纳粹象征)和 420(大麻)。—— 来源
图片来源:这里
通过这种方式,他们创建了一个包含 10000 多个示例的数据集。即便如此,该模型也会生成不匹配的示例,尤其是在格式相似的情况下。
图片来源:这里
在本文中,通过一个简单的设置,他们表明微调可以诱发广泛的不对齐。值得注意的是,该模型是在不安全的代码上训练的,但它也会生成其他类型的恶意内容。这表明微调的影响超出了我们目前所理解的范围,并且可能对模型产生全局影响。这些结果表明,在每次微调过程之后,都应该检查模型是否未对齐。这也表明,我们关于这些行为的对齐和诊断的理论尚未完成。例如,恶意行为者可以使用不易诊断的后门方法。
如果您觉得本文有趣:
您可以浏览我的其他文章。
或者您可能对我的近期文章感兴趣:
参考
以下是我撰写本文时查阅的主要参考文献列表,文章仅引用了第一作者的姓名。