当前位置: 首页 > news >正文

PurpleLlama大模型安全全套检测方案

1. 引入

PurpleLlama是Meta的大模型安全整体解决方案(参考1),它包括了

(1)安全评估
CyberSecEval是一个用于评估大型语言模型(LLMs)安全风险的基准套件,其目标是解决随着 LLMs 的广泛使用而出现的新的网络安全风险。

(2)输入输出检测
Llama Guard 3通过输入输出检测,有效识别并分类不安全内容,保障了大模型在多语言环境下的内容安全。该工具能够对输入(Prompt)和响应(Response)进行分类,判断其是否安全,并列出违反的内容类别。

(3)提示词过滤
Prompt Guard 是一个基于分类器的模型,专门用于检测提示注入(Prompt Injection)和越狱攻击(Jailbreak)。它能够识别出试图绕过模型安全机制的恶意输入。

(4)不安全代码检测
Code Shield使用静态分析工具(Insecure Code Detector, ICD)来检测不安全代码。ICD 支持对七种编程语言进行分析,并覆盖超过 50 种常见漏洞(CWE),包括使用正则表达式(Regex)和 Semgrep 等工具。

2. 内容安全

  1. Llama Guard

Llama Guard 3-8B是在Llama-3.1-8B预训练模型的基础上,针对内容安全分类任务进行微调所得到的。与之前的版本相仿,它能够对模型输入(即提示词)和输出(也就是模型回复)中的内容开展风险分类工作。如同文本大模型的运作方式,将用户与大模型的对话内容,以及风险分类标准输入到Llama Guard 3-8B中,该模型便会把待检测内容标记为“安全(safe)”或者“不安全(unsafe)”;一旦判定为不安全,还会详细列出所违反的风险类别。
在这里插入图片描述
经过微调,Llama Guard 3-8B具备识别总计14个风险类别的能力。这其中涵盖了MLCommons标准化危险分类法(参考3)里的13个风险类别,分别标记为S1 - S13 ,以及Llama Guard新添加的代码解释器滥用类,即S14: Code Interpreter Abuse。

对于对模态,Llama Guard 3-11B-vision是多模态文本图像安全分类模型。

  1. Prompt Guard

Prompt Guard依托一款在海量攻击数据集上完成训练的分类模型,具备检测明显恶意提示词以及含有注入数据的能力。作为多标签分类模型,在过滤过程中,它会将输入的提示词划分成三类:良性(benign)、注入(injection)和越狱(jailbreak)。值得注意的是,注入和越狱这两种标签之间存在重叠的可能性,比如,一条极具危险性的提示词,既可能实施了提示词注入,也可能运用了越狱攻击手段 。
在这里插入图片描述

3. 代码安全

Code Shield作为一款专注于代码安全检测与过滤的工具,其核心目的在于避免大模型生成的不安全代码流入生产系统。近些年来,大模型在协助开发人员生成代码领域扮演着关键角色。然而,鉴于大模型具有较强的随机性,且极易受到训练数据的影响,即便添加了安全限制措施,大模型仍有可能生成不安全代码,这些代码中或许存在漏洞,又或者具备恶意功能。Code Shield如同置于大模型下游的一道围栏,助力实现对不安全代码的拦截与过滤,使其在返回给用户或进入代码库之前就被处理掉。

Code Shield 的核心原理是通过静态分析工具(ICD)对生成的代码进行分析,以识别潜在的不安全代码。这些工具包括 Regex 和 Semgrep 等,能够覆盖多种编程语言(如 Python、Java 等)和常见的安全漏洞类型(如 CWE 漏洞)。通过这种静态分析,Code Shield 能够在代码生成阶段或推理阶段实时过滤掉不安全的代码,从而减少生成恶意代码或执行危险操作的风险。

4. 总结

PurpleLlama包含多个关键工具和评估基准,用于提升LLM的安全性:
(1)CyberSec Eval:网络安全评估工具,用于量化LLM在网络安全方面的风险,包括生成恶意代码的可能性、不安全代码建议频率以及协助网络攻击的能力。
(2)Llama Guard:输入输出保护工具,用于过滤和检查LLM的输入输出内容,防止生成危险输出或被黑客利用。
(3)Prompt Guard:提示保护工具,用于检测和阻止恶意提示注入,确保基于LLM的应用程序的安全性。
(4)Code Shield:代码安全防护工具,用于在推理时过滤LLM生成的不安全代码,并提供缓解建议。

5. 参考

  1. https://github.com/meta-llama/PurpleLlama
  2. https://mp.weixin.qq.com/s/PKdqfmzJkrr8C6RTqWItGQ
  3. https://mlcommons.org/2024/04/mlc-aisafety-v0-5-poc/

相关文章:

  • GetKeyState()和GetAsynKeyState()的差异
  • 音视频系列——Websockets接口封装为Http接口
  • 智能追踪台灯需求文档
  • 尝试使用tauri2+Django+React的项目
  • 如何获取与testFile同级目录下的所有文件?
  • 企业级AI架构探索:业务驱动,场景优先
  • 集成平台是选择专业iPaaS厂商还是大型软件企业?
  • 善用批处理的for命令倍增效率(附彩蛋:windows官方bug)
  • 【面试场景题-你知道readTimeOutException,会引发oom异常吗】
  • JavaScript 获取 URL 中参数值的详解
  • 【动态规划】详解混合背包问题
  • YOLO11改进-模块-引入空间带状注意力机制(Spatial Strip Attention,SSA)增强模型对空间信息处理能力的重要模块
  • Windows搭建免翻墙的BatteryHistorian
  • Animation - AI Controller控制SKM_Manny的一些问题
  • 笔记:代码随想录算法训练营day58:101.孤岛的总面积、102.沉没孤岛、103.水流问题、104.建造最大岛屿
  • 成都文创浪潮中,国际数字影像产业园的标杆塑造之路
  • Netlify 的深度解析及使用指南
  • 深入探讨 `ip2region` 中三种初始化方法:newWithBuffer、newWithVectorIndex 和 newWithFileOnly
  • 针对耳鸣患者推荐的一些菜谱和食材
  • 产品更新 | 数字助决胜:华望M-Arch平台实现从体系模型到仿真推演
  • 东亚社会的“苦难诗学”:从《苦尽柑来遇见你》说起
  • 暴雨蓝色预警:南方开启较强降雨过程
  • 重庆荣昌机关食堂五一期间受热捧:肉类总消耗2万斤,单日吃卤鹅800只
  • 世界银行最新营商环境体检单:59个测评点,上海22项达全球最优水平
  • 商务部:自5月7日起对原产于印度的进口氯氰菊酯征收反倾销税
  • 娱见 | 为了撕番而脱粉,内娱粉丝为何如此在乎番位