wjm9765/LLM_security
GitHub: wjm9765/LLM_security
一个研究用流水线,通过激活向量分析论证多模态LLM中音频模态如何绕过文本安全防护机制,揭示「安全性崩溃」现象。
Stars: 0 | Forks: 0
# AI_security: 多模态 LLM 安全性崩溃分析
本项目是一个研究用流水线,旨在通过激活向量(Activation Vector)分析,论证多模态 LLM(如 Qwen2-Audio)中音频模态如何绕过文本安全防护机制,即**"安全性崩溃"(Safety Collapse)现象**。
特别是引入了最新论文级别(ICLR 预印本)的分析体系,将"模态间隙"和"有害性间隙"严格分离。
## 🌟 核心分析方法论
1. **正交性验证(Orthogonality Test)**
- 计算文本有害性判断轴($V_{text}$)和音频有害性判断轴($V_{audio}$)之间的余弦相似度。
- 证明两轴正交(Orthogonal),揭示音频作为独立维度处理,不经过现有文本安全防护。
2. **配对残差 SVD(Paired Residual SVD)**
- 对数据对的差值向量($\Delta = D2 - D1$)执行 SVD。
- 去除句子长度、格式等噪声后,得出**"纯文本有害性轴(Pure Text Safety Direction)"**,并可视化证明音频数据完美避开该轴。
3. **双 Token 追踪(Double Token Tracking)**
- $t_{inst}$:指令的最后一个 TOKEN(意图识别向量)
- $t_{post-inst}$:开始生成前的 TOKEN(拒绝/接受发言向量)
- 提取两个 TOKEN 的隐藏状态(Hidden states),追踪拒绝机制的触发模式。
## 📂 项目结构
- `config.yaml`:目标模型、数据数量、层索引设置
- `pyproject.toml`:`uv` 包管理器用 Python 依赖规范(gTTS、edge-tts 集成,已清理不必要包)
- `setup.sh`:Runpod(Ubuntu)环境用预装包(ffmpeg 等)及依赖一键安装脚本
- `src/`
- `data_utils.py`:数据下载(AdvBench)及 Config 解析
- `model_utils.py`:目标模型(Qwen)的 Forward Pass 及隐藏状态提取(双 TOKEN)
- `metrics.py`:正交性测试、配对残差 SVD、距离及余弦相似度运算
- `visualize.py`:PCA、多方向投影及 SVD 结果可视化模块
- `scripts/`
- `01_prepare_data.py`:D1~D6 数据集自动格式化及生成(gTTS 50%、edge-tts 50% 分配)
- `02_run_experiment.py`:目标模型运行、指标计算(Metrics)及可视化(Plot)调用
- `run.py`:连续执行 1、2 步骤的集成运行脚本
## 🚀 安装及运行(Runpod / Linux 基准)
在搭载 GPU 的实例上 Clone 仓库后,仅需 2 行命令即可完成安装及运行。
```
# 系统包安装及 Python 依赖项(uv)同步
chmod +x setup.sh
./setup.sh
# 集成管道执行
./scripts/run.py
```
## 📊 生成的数据集(D1 ~ D6)
- **D1**:纯安全文本(Helper LLM 自动生成)
- **D2**:有害文本(AdvBench)
- **D3**:高斯噪声(音频)+ 有害文本
- **D4**:朗读有害内容的音频(gTTS & edge-tts)+ 文本
- **D5**:高斯噪声(音频)+ 安全文本
- **D6**:朗读安全内容的音频(gTTS & edge-tts)+ 文本
## 📈 Outputs(结果物)
流水线执行完成后,`outputs/` 文件夹将生成以下 3 种图表和 2 个数据文件:
1. **`model_responses.json`**:模型实际生成的文本回答(用于 LLM-as-a-Judge 或人工定性评估)
2. **`metrics_summary.json`**:距离运算及**正交性得分(Orthogonality_CosSim_Vtext_Vaudio)**记录完整摘要
3. **`pca_safety_collapse.png`**:D1~D6 的简单隐藏空间 2D PCA 投影图(基于整体方差)
4. **`harmful_vs_refusal_directions.png`**:Harmfulness 轴(X)vs Refusal 触发轴(Y)模型判别机制 2D 散点图
5. **`paired_residual_svd.png`**:通过配对残差 SVD 的**纯文本有害轴(PC1)**空间中模态绕过(Safety Bypass)完整证明可视化
标签:AI安全, AI红队, Chat Copilot, Qwen2-Audio, Safety Collapse, SVD分析, 人工智能安全, 凭据扫描, 合规性, 多模态LLM, 大语言模型安全, 安全漏洞分析, 对抗性样本, 文本安全机制, 有害性gap, 机密管理, 模型对齐, 模态gap, 正交性验证, 激活向量分析, 逆向工具, 隐藏状态分析, 音频安全