原文来源:@linyishan

一天时间,Google 的开源大模型 Gemma-4-31B 就被彻底破解,被完全移除安全限制。

没错,大模型也可以破解,也叫作越狱。

对开源大语言模型进行越狱,在技术社区中通常被称为 Abliteration(消融法)或权重对齐抹除。

这与针对闭源模型的提示词工程(Prompt Engineering)越狱完全不同。

针对闭源模型的越狱是绕过外部过滤器,而针对开源模型的越狱则是直接修改模型的大脑电路,使其从底层彻底丧失拒绝指令的能力。

以下,我们从理论基础到工程实现的完整流程,简要介绍如何对开源模型进行权重级越狱。

一、理论核心——什么是拒绝方向?

在 Transformer 架构的模型中,模型处理信息的方式是将输入转化为高维空间的向量(Activations)。

研究发现,模型之所以会拒绝回答,是因为在其深度神经网络的某些层中,存在一个特定的"拒绝维度"。

当用户提出一个敏感问题(例如:如何制造炸药)时,模型的激活值会高度向这个"拒绝方向"偏移,随后触发预设的拒绝语段(例如:“对不起,我不能…")。

Abliteration 的核心思路:

  1. 找到这个"拒绝方向"的数学表示。
  2. 通过矩阵运算,将模型权重中所有与该方向相关的成分抹除(正交化)。
  3. 这样,模型在逻辑上将不再具备"拒绝"这一概念的坐标。

二、环境准备与工具链

要对 Gemma-4-31B 这一量级的模型进行操作,你需要具备以下硬件和软件环境:

1. 硬件需求

  • 显存:至少需要能加载 FP16 精度模型一部分的显存。对于 31B 模型,建议使用 A100 (80GB) 或 H100。如果显存不足,可以使用量化感知消融。
  • 计算:兼容 CUDA 的 GPU。

2. 软件依赖

  • Python 3.10+
  • PyTorch
  • Transformers & Accelerate (Hugging Face)
  • NDArray / Numpy
  • Transformer Lens(专门用于机械解释性研究的库,非常推荐)

三、实操流程步骤

第一步:构建对比数据集

你需要两组问题,用于定位模型内部的拒绝机制:

  1. 有害指令集(Harmful Prompts):包含大量违规请求,如制造毒药、黑客攻击、仇恨言论等。
  2. 普通指令集(Harmless Prompts):包含日常对话,如"如何做番茄炒蛋”。

第二步:提取激活值(Feature Extraction)

运行模型,分别喂入这两组数据集,并记录模型中间层(通常是中间偏后的层,如第 20-30 层)的剩余流激活值。

你会得到两组张量:

  • A_harmful:有害指令的激活值均值
  • A_harmless:普通指令的激活值均值

第三步:计算拒绝向量(The Refusal Vector)

通过计算两组激活值均值之间的差异,我们可以定义出一个初步的"拒绝方向"向量 r

为了让这个向量更精准,通常会使用 PCA(主成分分析)。我们在 A_harmful 偏离 A_harmless 的方向上提取第一主成分。

这个向量 d 就是我们要消融的目标方向。

第四步:权重正交化(The Orthogonalization)

这是最关键的数学步骤。

我们需要修改模型每一层的线性转换矩阵(如 W_outW_gate),使得这些矩阵的输出永远不会包含 d 方向上的成分。

给定一个权重矩阵 W,我们要将其投影到与 d 正交的平面上。

数学公式:

1
W' = W - (W·d) ⊗ d

其中 ⊗ 表示外积,相当于从权重中减去了拒绝分量。

第五步:权重写回与导出

利用 Hugging Face 的 state_dict 功能,将修改后的张量重新加载回模型结构中。

1
2
3
4
5
6
7
8
# 伪代码示例
for layer in model.layers:
    # 提取输出权重
    w = layer.self_attn.o_proj.weight.data
    # 减去拒绝方向的投影
    w_projected = w - torch.outer(torch.mv(w, refusal_vector), refusal_vector)
    # 更新权重
    layer.self_attn.o_proj.weight.data = w_projected

四、验证与微调

完成消融后,模型将进入无忌讳状态,也可能出现以下副作用:

  1. 语序混乱(Degradation):过度抹除可能损伤模型的逻辑能力。
  2. 过度顺从:模型可能变得过于听话,即使你问它"请否定你刚才说的话",它也会陷入逻辑死循环。

评估工具主要是 HarmBench,你需要使用 HarmBench 框架对模型进行跑分。

如果你的 HarmBench 得分超过了 90%,说明该模型已基本丧失了自我审查能力。

五、法律与伦理警示

虽然从技术角度研究模型的对齐机制,具有极高的科研价值(例如帮助开发者理解模型为何会产生偏差),但发布或传播此类 CRACK 版模型存在严重风险:

  1. 服务条款违规:大多数开源协议(如 Google 的 Gemma 使用条款)明文禁止移除安全限制。
  2. 安全风险:移除限制后的模型可能被恶意利用,产生自动化网络攻击代码或制造虚假信息。
  3. 社会责任:AI 的对齐并不是为了限制自由,而是为了防止模型在处理模糊请求时产生有害副作用。