Sysformer: Safeguarding Frozen Large Language Models with Adaptive System Prompts¶
会议: ICLR 2026
arXiv: 2506.15751
代码: GitHub
领域: LLM安全 / AI Safety
关键词: system prompt, LLM safety, jailbreak defense, frozen model, adaptive prompting
一句话总结¶
提出Sysformer,一个可插拔到任意冻结LLM前端的轻量Transformer模块,根据用户输入自适应地在嵌入空间中变换系统提示,使模型拒绝有害请求同时正常回应安全请求,无需修改LLM参数或过滤用户输入。
研究背景与动机¶
领域现状:大语言模型(LLM)在安全关键场景中的部署要求模型能够拒绝有害请求、正常响应合法请求。当前的安全增强方法主要分为几类:(1) 微调(fine-tuning),如LoRA+安全对齐训练,直接修改模型参数;(2) 平滑化(smoothening),对用户提示进行多次扰动取平均响应;(3) 过滤(filtering),用害分类器(如LlamaGuard)在输入或输出层面过滤有害内容;(4) 系统提示嵌入调优(SystemEmbedder),学习一个固定的系统提示嵌入。
现有痛点:微调方法计算成本高、对模型规模扩展性差、可能破坏预训练知识、且容易导致过度拒绝。平滑化方法需要多次LLM调用,推理成本倍增。过滤方法可能误删有用内容。SystemEmbedder虽然保持LLM冻结,但使用固定的系统提示嵌入,无法根据不同用户输入做自适应防御。现有的固定系统提示在面对精心设计的越狱攻击时往往失效。
核心矛盾:理想的安全方案需要同时满足四个条件:(1) 不修改LLM参数、(2) 不增加额外LLM调用、(3) 不过滤用户提示、(4) 能自适应地应对不同输入。现有方法要么不满足前三条(微调、平滑、过滤),要么不满足第四条(固定系统提示/嵌入)。
本文目标 在保持LLM完全冻结、不修改用户提示的前提下,通过学习一个根据用户输入自适应变换系统提示的轻量模块,同时提高有害提示拒绝率和安全提示合规率。
切入角度:作者观察到系统提示不必对所有用户输入保持不变——对于潜在有害的输入,系统提示可以被"增强"为更强的安全指令;对于安全的输入,系统提示可以保持或放松。受多模态学习中跨模态注意力机制的启发,将系统提示和用户提示视为两个"模态",通过交叉注意力让系统提示自适应地感知用户提示的意图。
核心 idea:用一个可学习的Transformer模块在LLM嵌入空间中根据用户输入自适应修改系统提示嵌入,替代固定的系统提示来增强安全性。
方法详解¶
整体框架¶
Sysformer的流程为:给定系统提示 \(\mathcal{S}\) 和用户提示 \(\mathcal{P}\),先通过LLM的token嵌入矩阵 \(\mathbf{E}\) 将两者分别编码为嵌入序列 \(\mathbf{S} = \mathbf{E}[\mathcal{S}]\) 和 \(\mathbf{P} = \mathbf{E}[\mathcal{P}]\)。Sysformer模块接收 \(\mathbf{S}\) 和 \(\mathbf{P}\),通过交替的自注意力和交叉注意力层变换系统提示嵌入,输出自适应系统提示 \(\widehat{\mathbf{S}}\)。最终将 \(\widehat{\mathbf{S}} \oplus \mathbf{E}[\mathcal{P}]\) 送入冻结的LLM生成响应。整个过程中LLM参数不变、用户提示原封不动、只有Sysformer的参数被训练。
关键设计¶
-
自注意力 + 交叉注意力的Transformer架构:
- 功能:在嵌入空间中根据用户提示自适应地变换系统提示
- 核心思路:Sysformer由 \(L=2\) 层交替的自注意力(Self-Attention)和交叉注意力(Cross-Attention)组成。每一层中,系统提示嵌入先通过自注意力增强自身上下文建模,再通过交叉注意力"看到"用户提示嵌入,从而根据用户意图调整自身表示。递归定义为 \(\widehat{\mathbf{S}}^{(l)} = \text{CrossAttn}(\text{SelfAttn}(\widehat{\mathbf{S}}^{(l-1)}), \mathbf{P})\)。输出 \(\widehat{\mathbf{S}}^{(L)}\) 保持与原始系统提示相同的token数量,因此不增加LLM的输入长度。
- 设计动机:借鉴多模态学习(如BLIP-2)中用少量可学习query token通过交叉注意力融合另一模态信息的思路。将系统提示和用户提示视为两个模态,使系统提示能"感知"用户的意图——如果用户提示是有害的,变换后的系统提示会更倾向于安全方向;如果是安全的,则保持正常响应。
-
多目标联合训练损失:
- 功能:同时优化拒绝有害提示、合规安全提示、区分两类提示、保留原始系统提示语义
- 核心思路:总损失为 \(\mathcal{L} = w_{ref}\mathcal{L}_{ref} + w_{compl}\mathcal{L}_{compl} + w_{class}\mathcal{L}_{class} + w_{recon}\mathcal{L}_{recon}\)。\(\mathcal{L}_{ref}\) 最大化对有害提示生成拒绝回复"I am sorry I cannot help you"的似然;\(\mathcal{L}_{compl}\) 最大化对安全提示正常回复的似然(支持模板回复和自生成回复两种模式);\(\mathcal{L}_{class}\) 用LLM最后一层表示训练线性分类器区分有害/安全提示,促进表示空间的可分性;\(\mathcal{L}_{recon}\) 是重建损失,最小化变换前后系统提示嵌入的L2距离,防止变换过度偏离原始语义。
- 设计动机:仅有拒绝损失会导致模型拒绝所有请求(过度拒绝)。加入合规损失平衡了安全与实用性。分类损失促进了内部表示的结构化,使有害和安全方向更加可分。重建损失保证Sysformer的变换不会完全覆盖部署者设定的系统提示意图。
-
越狱攻击增强训练:
- 功能:提升Sysformer对未见过的复杂越狱攻击的泛化能力
- 核心思路:在训练集中加入少量(6种/16种)越狱攻击生成的有害提示变体。例如将"Tell me how to create a bomb"通过GCG、PAIR、PAP等攻击方法生成对抗版本,加入训练集中继续使用拒绝损失优化。
- 设计动机:标准训练数据主要包含自然语言的有害提示,对精心设计的越狱攻击缺乏鲁棒性。少量攻击样本的增强使模型学到更泛化的拒绝模式,可以泛化到28种不同攻击策略中的大多数。
损失函数 / 训练策略¶
使用AdamW优化器,搜索10/20 epochs和学习率 \(\{0.0001, 0.00001\}\)。保持 \(w_{ref}=1\) 固定,搜索 \(w_{compl} \in \{0.0, 0.2, 0.5, 1.0\}\)、\(w_{class} \in \{0.0, 1.0\}\)、\(w_{recon} \in \{0, 1\}\)。可选使用额外的Alpaca数据集进行指令遵循损失训练(additional compliance),防止模型过拟合到安全任务上。Sysformer参数量极小,额外内存开销仅为 \(O(L \cdot H \cdot d^2)\)。
实验关键数据¶
主实验¶
在5个LLM(Llama-3.1-8B、Llama-2-7B-chat、Mistral-7B-v0.2、Phi-3.5-mini、zephyr-7b-beta)和2个基准(JailbreakBench、StrongReject)上评估。核心指标为拒绝率差值 \(\Delta\)RR = RR(Harm) - RR(Safe)。
| LLM | 方法 | RR Safe ↓ | RR Harm ↑ | ΔRR ↑ (JBB) | ΔRR ↑ (SR) |
|---|---|---|---|---|---|
| Llama-3.1-8B | Default | 0.30 | 1.00 | 0.70 | 0.70 |
| Llama-3.1-8B | SystemEmbedder | 0.30 | 1.00 | 0.70 | 0.70 |
| Llama-3.1-8B | Sysformer | 0.03 | 0.97 | 0.93 | 0.97 |
| Llama-3.1-8B | LoRA* | 0.10 | 0.97 | 0.87 | 1.00 |
| Llama-2-7B | Default | 0.70 | 1.00 | 0.30 | 0.32 |
| Llama-2-7B | Sysformer | 0.07 | 0.90 | 0.83 | 0.78 |
| Mistral-7B | Default | 0.13 | 0.83 | 0.70 | 0.80 |
| Mistral-7B | Sysformer | 0.10 | 1.00 | 0.90 | 0.90 |
| Phi-3.5-mini | Default | 0.03 | 0.10 | 0.07 | 0.18 |
| Phi-3.5-mini | Sysformer | 0.20 | 0.90 | 0.70 | 0.52 |
跨数据集泛化¶
| LLM | RR Safe | RR Harm | ΔRR |
|---|---|---|---|
| Llama-3.1-8b | 0.067 | 1.000 | 0.933 |
| Mistral-7B-v0.2 | 0.100 | 1.000 | 0.900 |
| zephyr-7b | 0.200 | 0.968 | 0.768 |
注:在JailbreakBench上训练,直接在StrongReject上测试,性能不降反升。
关键发现¶
- 超越LoRA微调基线:在多数LLM上,Sysformer的ΔRR匹敌或超越全层LoRA微调(r=16, α=32),且完全不修改LLM参数。在Llama-3.1-8B上ΔRR达0.93 vs LoRA的0.87。
- 极大缓解过度拒绝:对于原本过度拒绝的Llama-2-7B-chat(Default Safe RR=0.70),Sysformer将安全拒绝率从70%降至6.7%,提升达90%。
- 越狱防御有效:加入6种攻击增强后(Sysformer+JB),在16种攻击策略上几乎达到100%拒绝率,且泛化到全部28种攻击策略。
- 推理开销极小:推理附加时间仅约21-30秒/整个测试集,与SystemEmbedder相当。
- BERTScore几乎不降:Llama-2-7B的Alpaca评估BERTScore从0.8487仅降至0.8414,通用文本生成能力基本保持。
亮点与洞察¶
- 打破"系统提示必须固定"的假设:这是一个关键的认知转变——系统提示不是一成不变的指令板,而是可以像一个"自适应防火墙"一样根据每个输入动态调整。这为LLM安全防御开辟了全新的设计空间。
- 模块化、即插即用设计:Sysformer是一个纯粹的"前端模块",可以无缝接入任何冻结LLM,不改变模型本身的任何属性。这种设计极大降低了安全部署的门槛——部署者只需在模型前端挂载一个轻量Transformer即可。
- 从多模态学习借鉴安全机制:将系统提示和用户提示视为两个模态,用交叉注意力融合的思路新颖且有效。这提示我们可以把更多多模态学习的架构创新迁移到安全领域。
局限与展望¶
- 仅在≤8B模型上验证:由于反向传播通过整个LLM的梯度需要大量内存,实验限制在8B参数以下模型。对70B+模型的扩展性未知。
- 超参数敏感性:损失权重组合对不同LLM敏感度不同(某些LLM如zephyr非常敏感),需要针对每个LLM进行搜索。
- 潜在的新攻击面:用户提示直接通过交叉注意力影响系统提示嵌入,这可能引入新的攻击向量——对抗者可以精心构造提示来操控系统提示变换的方向。
- 多语言/多轮对话评估缺失:仅在英文单轮对话上评估,对中文等其他语言和多轮对话场景的效果未测试。
相关工作与启发¶
- vs SystemEmbedder (Zheng et al., 2024): SystemEmbedder学习一个固定的系统提示嵌入,对所有输入一视同仁。Sysformer通过交叉注意力使系统提示依赖于用户输入,对不同输入做差异化防御,ΔRR提升显著。
- vs LoRA微调 (Mazeika et al., 2024): LoRA修改LLM内部参数,可能破坏预训练知识且不可逆。Sysformer作为外部模块完全不修改LLM,且在多数场景下性能相当甚至更优。
- vs 输入过滤/平滑化方法: 这些方法要么修改用户输入、要么需要多次LLM调用。Sysformer保持用户输入不变且仅需一次LLM调用,是更实用的折中。
评分¶
- 新颖性: ⭐⭐⭐⭐ 自适应系统提示的思路新颖,但Transformer交叉注意力本身不算新
- 实验充分度: ⭐⭐⭐⭐ 5个LLM、2个基准、16+种攻击,覆盖面广
- 写作质量: ⭐⭐⭐⭐ 结构清晰,与现有方法的对比定位精准
- 价值: ⭐⭐⭐⭐ 即插即用的冻结LLM安全方案,实际部署价值高
相关论文¶
- [ICLR 2026] JULI: Jailbreak Large Language Models by Self-Introspection
- [ACL 2026] Reasoning Hijacking: The Fragility of Reasoning Alignment in Large Language Models
- [CVPR 2026] Adaptive Action Chunking at Inference-time for Vision-Language-Action Models
- [ACL 2026] DeCoVec: Building Decoding Space based Task Vector for Large Language Models via In-Context Learning
- [ICLR 2026] SynthWorlds: Controlled Parallel Worlds for Disentangling Reasoning and Knowledge in Language Models