【AI大模型】用指令层级的方法提高LLM的安全性

本文参考论文为:

Eric Wallace, Kai Xiao, Reimar Leike, Lilian Weng, Johannes Heidecke, Alex Beutel. The Instruction Hierarchy: Training LLMs to Prioritize Privileged Instructions. arXiv:2404.13208v1, 2024.

https://doi.org/10.48550/arXiv.2404.13208

一,背景

随着LLM技术的飞速发展,其应用领域也在不断扩大。LLM被广泛应用于聊天机器人、文本生成、代码解析等领域,为用户提供智能化服务。然而,LLM的安全性和可控性问题也日益凸显。容易受到提示注入、越狱和其他攻击的影响,这些攻击允许攻击者用自己的恶意提示覆盖模型的原始指令。

二,指令层级的方法提高模型的安全性

针对上述问题OpenAI团队提出来了一种训练大型语言模型(LLM)以优先考虑特权指令。这项研究对于构建安全可控的LLM具有重要意义,对于LLM的安全性和可控性具有广泛应用前景。

其中主要的安全风险就是LLM通常认为系统提示(例如,来自应用程序开发人员的文本)与来自不受信任的用户和第三方的文本具有相同的优先级。

根据这个badcase,OpenAI团队提出了提升LLM的对应方案
指令层次结构框架:论文提出了一个指令层次结构框架,其中规定系统消息具有最高优先级,其次是用户消息,最后是工具输出。模型在处理冲突时应该遵循这个层次结构。

他们提出一个理想的模型是:"当向模型提供多个指令时,较低特权的指令可以与较高特权的指令对齐或不对齐。我们的目标是教模型有条件地遵循基于与高级指令对齐的低级指令:•对齐的指令具有与高级指令相同的约束、规则或目标,因此LLM应该遵循它们"

三 训练数据

该论文提出了两种训练大模型的方式:

上下文综合(Context Synthesis):

对于对齐的指令,作者首先利用大型语言模型生成具有组合要求的指令,例如"写一首20行的西班牙语诗歌"。

然后,他们将生成的组合指令分解为更小的片段,例如"写一首诗"、"使用西班牙语"和"使用20行"。

接着,作者将这些分解的指令置于不同的层次结构中,即系统消息、用户消息和工具输出,并训练模型预测原始的地面真实响应。

通过这种方式,模型学习到如何处理对齐的指令,即当低优先级指令与高优先级指令一致时,应该遵循低优先级指令。

上下文忽略(Context Ignorance):

对于错位的指令,作者采取了完全相反的策略,即训练模型忽略低优先级指令。

首先,作者生成包含不同规则或约束的系统消息,例如"永远不要提供法律建议"。然后,他们生成用户查询,试图诱使模型违反这些规则或约束。在训练过程中,模型被训练为预测在没有看到用户指令时的答案,或者预测已经满足约束的答案。通过这种方式,模型学会忽略错位的低优先级指令,即当低优先级指令与高优先级指令不一致时,应该忽略低优先级指令。

训练数据生成方法针对不同类型的攻击
1.直接prompt injection攻击
开放域任务
对齐指令 :使用上下文综合方法生成训练数据。例如,生成"写一首20行西班牙语诗歌",分解为"写一首诗"、"使用西班牙语"、"使用20行",并放置在不同层次,训练模型预测完整指令的响应。

错位指令:使用上下文忽略方法。例如,生成包含规则的系统消息,然后生成违反规则的恶意用户查询,训练模型预测与没有看到用户指令时相同的响应。

封闭域任务:只生成错位指令的数据,使用上下文忽略方法。将封闭域任务放入系统消息,生成prompt injection放入用户消息,训练模型忽略用户消息中的指令。

2.间接prompt injection攻击:假设浏览或工具输出中的任何指令都是错位的,使用上下文忽略方法生成训练数据。

3.系统消息提取攻击

错位指令 :使用上下文忽略方法。生成揭示系统消息的查询,训练模型拒绝这些查询。
对齐指令 :生成基本的系统消息查询,训练模型对这些查询进行响应。
越狱攻击:在训练中故意不包含越狱数据,以测试模型对越狱攻击的泛化能力。

四 改进效果

经过训练的LLM在多个安全性和能力评估基准上取得了显著提高的鲁棒性,对未见过的攻击也展现出良好的泛化能力。

可见此方法是一个很好的提升大模型安全性能的方法

相关推荐
雪隐3 小时前
用Flutter做背单词APP-02我画了设计稿,然后让AI帮我设计了数据库(顺便聊了会天)
前端·人工智能·后端
love530love3 小时前
CodexPro + MCP + Cloudflare 配置详解:HTTP2、QUIC 与连接排障
ide·人工智能·windows·ai agent
Listen·Rain3 小时前
向量化详解
java·人工智能·spring·机器学习·ai
keyanbanyungong4 小时前
被市场忽略的AI4S细分赛道:MedPeer生物医药科研数字化稀缺龙头
大数据·人工智能
程序员cxuan4 小时前
OceanBase 为什么要做 AI 数据库?
数据库·人工智能·大模型·llm·oceanbase
seacracker4 小时前
Ceph 太重运维成本高?轻量统一存储 PowerFS 对比测评(HPC/AI 场景首选)
运维·人工智能·ceph·ai存储·统一存储
用户938515635074 小时前
从零打造你的第一个智能体(Agent):*手写一个能自主建项目的Mini Cursor (三)
javascript·人工智能·后端
Hotchip_MEMS4 小时前
ASIC+MCU方案简化:MS2102AB-M00如何降低主控芯片的判别压力?
人工智能·单片机·嵌入式硬件·物联网·制造
workflower4 小时前
室内外配送机器人
人工智能·机器学习·数据挖掘·自动化·制造
vx_stockmasterx4 小时前
两融担保品:杠杆交易的“安全垫”与“通行证”
人工智能·区块链