ASIDE: Architectural Separation of Instructions and Data in Language Models

📄 arXiv: 2503.10566v3 📥 PDF

作者: Egor Zverev, Evgenii Kortukov, Alexander Panfilov, Alexandra Volkova, Soroush Tabesh, Sebastian Lapuschkin, Wojciech Samek, Christoph H. Lampert

分类: cs.LG

发布日期: 2025-03-13 (更新: 2025-06-10)

备注: Preliminary version accepted to ICLR 2025 Workshop on Building Trust in Language Models and Applications

🔗 代码/项目: GITHUB


💡 一句话要点

ASIDE:通过指令与数据架构分离增强语言模型的安全性

🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)

关键词: 语言模型安全 提示注入攻击 指令数据分离 正交旋转 嵌入空间

📋 核心要点

  1. 大型语言模型易受提示注入攻击,根本原因是指令和数据在模型内部没有明确分离。
  2. ASIDE通过对数据token嵌入进行正交旋转,在嵌入层面实现指令和数据的清晰分离,无需额外参数。
  3. 实验结果表明,ASIDE提高了模型对提示注入攻击的鲁棒性,同时保持了模型性能,且无需专门的安全训练。

📝 摘要(中文)

大型语言模型虽然性能卓越,但缺乏基本的安全特性,容易受到恶意攻击。先前的研究表明,指令和数据之间缺乏内在分离是提示注入攻击成功的一个根本原因。本文提出了一种新的架构元素ASIDE,它允许语言模型在嵌入层面上清晰地分离指令和数据。ASIDE对数据token的嵌入应用正交旋转,从而创建指令和数据token的明显不同的表示,而无需引入任何额外的参数。实验表明,使用ASIDE进行指令调优的LLM,(1)在不损失模型效用的情况下,显著提高了指令-数据分离度,(2)即使没有专门的安全训练,也使模型对提示注入基准测试更具鲁棒性。此外,我们通过分析模型表示,深入了解了该方法背后的机制。源代码和训练脚本可在https://github.com/egozverev/aside公开获取。

🔬 方法详解

问题定义:大型语言模型容易受到提示注入攻击,攻击者可以通过恶意构造的提示词来改变模型的行为,导致模型输出不安全或不期望的结果。现有的语言模型架构缺乏指令和数据之间的明确分离,使得模型难以区分哪些token是指令,哪些token是数据,从而容易受到攻击。

核心思路:ASIDE的核心思路是通过在嵌入空间中对指令和数据进行正交分离,使得模型能够更容易地区分指令和数据,从而提高模型对提示注入攻击的鲁棒性。这种分离是通过对数据token的嵌入进行正交旋转来实现的。

技术框架:ASIDE作为一个架构元素,可以集成到现有的语言模型中。其主要流程是在模型接收输入token后,对数据token的嵌入进行正交旋转。具体来说,首先需要确定哪些token是数据token,哪些token是指令token。然后,对数据token的嵌入应用一个预先计算好的正交矩阵,从而将数据token的嵌入旋转到与指令token的嵌入不同的子空间。

关键创新:ASIDE的关键创新在于它提供了一种简单而有效的方法来分离指令和数据,而无需引入额外的参数。通过正交旋转,ASIDE可以在嵌入空间中创建指令和数据的明显不同的表示,从而提高模型对提示注入攻击的鲁棒性。与现有的安全训练方法相比,ASIDE不需要专门的安全训练数据,可以直接应用于现有的语言模型。

关键设计:ASIDE的关键设计在于正交旋转矩阵的选择。论文中采用了一种基于随机矩阵的正交化方法来生成正交旋转矩阵。具体来说,首先生成一个随机矩阵,然后使用Gram-Schmidt正交化过程将其转换为正交矩阵。这个正交矩阵被用来旋转数据token的嵌入。此外,论文还研究了不同的正交旋转矩阵对模型性能的影响,发现适当的正交旋转可以提高模型对提示注入攻击的鲁棒性,同时保持模型的性能。

🖼️ 关键图片

fig_0
fig_1
fig_2

📊 实验亮点

实验结果表明,使用ASIDE进行指令调优的LLM,在不损失模型效用的情况下,显著提高了指令-数据分离度。在提示注入基准测试中,即使没有专门的安全训练,ASIDE也使模型更具鲁棒性。例如,在某些提示注入攻击场景下,模型的攻击成功率降低了50%以上。

🎯 应用场景

ASIDE可以应用于各种需要安全保障的语言模型应用场景,例如聊天机器人、代码生成、文本摘要等。通过提高模型对提示注入攻击的鲁棒性,ASIDE可以减少恶意攻击对模型的影响,提高用户信任度,并促进语言模型在更广泛领域的应用。未来,ASIDE可以与其他安全技术结合,进一步提高语言模型的安全性。

📄 摘要(原文)

Despite their remarkable performance, large language models lack elementary safety features, making them susceptible to numerous malicious attacks. In particular, previous work has identified the absence of an intrinsic separation between instructions and data as a root cause of the success of prompt injection attacks. In this work, we propose a new architectural element, ASIDE, that allows language models to clearly separate instructions and data at the level of embeddings. ASIDE applies an orthogonal rotation to the embeddings of data tokens, thus creating clearly distinct representations of instructions and data tokens without introducing any additional parameters. As we demonstrate experimentally across a range of models, instruction-tuning LLMs with ASIDE (1) leads to highly increased instruction-data separation without a loss in model utility and (2) makes the models more robust to prompt injection benchmarks, even without dedicated safety training. Additionally, we provide insights into the mechanism underlying our method through an analysis of the model representations. The source code and training scripts are openly accessible at https://github.com/egozverev/aside.