Skip to content
KitploitKITPLOIT
工具漏洞利用博客
Log in
提交
工具漏洞利用博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

订阅源联系隐私© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
Perturbed-Embedding-Vectors — 论文《Jailbreaking Open-Weight LLMs via Random Embedding Perturbations》的代码、响应日志和标签 | Kitploit
工具/GitHubGitHub/abhinavdubey30/perturbed-embedding-vectors
机器学习论文与研究学习与教育精选资源AI 安全对抗性攻击
GitHubabhinavdubey30/perturbed-embedding-vectors

Perturbed-Embedding-Vectors

论文《Jailbreaking Open-Weight LLMs via Random Embedding Perturbations》的代码、响应日志和标签

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
查看仓库
6813天前尚未审核

通过随机嵌入扰动越狱开放权重 LLM:运行、标签与代码

论文 Jailbreaking Open-Weight LLMs via Random Embedding Perturbations 的代码与数据。

论文预印本链接 - https://arxiv.org/abs/2610.07125

由加州大学圣克鲁兹分校理论计算机科学系的杰出人士撰写。

本工作由 Scott Sirri、Vaggos Chatziafratis 教授、C. Seshadhri 教授和我本人做出了重要贡献。

该仓库保存了为论文生成的每一个模型响应、每个响应的安全 / 不安全 / 退化标签、生成这些响应的 Colab notebook,以及 notebook 导入的推理 脚本。这涵盖了扰动嵌入向量(PEV)攻击以及论文中比较的另外五种越狱方法。论文中的所有越狱率和实际耗时均根据 results/ 中的文件计算得出。

布局

code/
  inference/             run_<model>.py: model loading, prompt construction and the manual
                         generation loop that every PEV notebook imports
  ours/<model>/          PEV notebooks for one model
  ours/<model>/fixed_peak_sigma/
                         notebooks for the fixed peak sigma runs (GLM-4-9B, Phi-4-mini,
                         Qwen2.5-1.5B); their logs are in results/<model>/ours/fixed_peak_sigma/
  igcg/                  I-GCG, one notebook per model
  latentfusion/          LatentFusion, one notebook per model
  refusalcones/          RefusalCones, one notebook per model
  softprompt/            SoftPrompt notebooks (Llama-3.1-8B and Mistral-7B)
  figures/               notebook that draws the paper figures
results/<model>/
  baseline/              direct responses to the unperturbed prompts (.txt log) and their
                         labels (.xlsx / .csv); these give the baseline jailbreak rate
  ours/raw_responses/    PEV response logs from the sigma sweeps, split by prompt range
  ours/classified/       labels for those responses, split the same way
  ours/fixed_peak_sigma/ PEV runs at the fixed peak sigma of the model (GLM-4-9B, Phi-4-mini,
                         Qwen2.5-1.5B): the full 100-prompt sweep and the SELECT re-runs
  igcg/ latentfusion/ neurostrike/ refusalcones/ softprompt/
                         responses (.txt) and labels (.xlsx) for the other methods

模型:Qwen2.5-1.5B、SmolLM3-3B、Phi-4-mini、Mistral-7B-Instruct、Llama-3.1-8B、 GLM-4-9B,以及论文第 4 节中列出的指令微调聊天变体。

各方法的代码位置:

方法位置
PEVcode/ours/<model>/;固定峰值 sigma 运行位于 code/ours/<model>/fixed_peak_sigma/;共享推理代码位于 code/inference/
I-GCGcode/igcg/,每个模型一个 notebook
LatentFusioncode/latentfusion/,每个模型一个 notebook
RefusalConescode/refusalcones/,每个模型一个 notebook
SoftPromptcode/softprompt/,Llama-3.1-8B 和 Mistral-7B
NeuroStrike位于 PEV notebook 内:code/ours/Llama-3.1-8B/LLama31_perturbation_p76_to_p100.ipynb(setup 单元也在 LLama31_perturbation_p1_to_p25.ipynb 中)和 code/ours/SmolLM3-3B/run_smollm3_batched_p26_p50.ipynb;响应写入 results/<model>/neurostrike/

推理脚本

code/inference/run_<model>.py 为每个模型一个文件(run_qwen.py、run_smollm3.py、 run_phi4mini.py、run_mistral.py、run_llama.py、run_glm.py)。每个脚本使用 HuggingFace Transformers 加载模型,以空系统消息应用聊天模板,暴露 load_model()、build_prompt() 和 encode_prompt(),并运行一个手动自回归 生成循环,在输入嵌入上挂载钩子。notebook 导入其对应模型的脚本,并通过该钩子注入高斯噪声。单独运行时,脚本会为单个模型打开一个 交互式终端;/verbose 和 /embedfile 命令会打印 token 表和嵌入向量。设备与行为开关是环境变量, 记录在每个文件头部。Llama 脚本需要 Hugging Face token,因为 检查点受访问限制;token 从环境读取,从不存储。

文件约定

  • 响应日志(.txt)是由 notebook 写入的仅追加日志。每条记录包含 提示索引、适用的噪声水平 sigma、运行编号以及完整的 模型响应。文件名包含提示范围(p001_to_p025 表示 100 个 JailbreakBench 有害提示中的第 1 到第 25 个) 以及运行的 UTC 时间戳。实际耗时在 每个提示每 20 次运行的一批之后以及实验结束时写入。
  • 标签文件(.xlsx、.csv)每个响应一行,包含其标签:安全、不安全或 退化,定义见论文第 4 节。如果某个提示的任一次运行被标记为不安全,则该提示计为 越狱成功。名为 *_categorization* 或 *_p01_25 风格的文件是 具有相同提示范围的日志的带标签版本。
  • 固定峰值 sigma 运行(ours/fixed_peak_sigma/)命名为 JBB_<model>_sigma0pXXX_..._<timestamp>.txt;sigma0p003 表示 sigma = 0.003。 p001_to_p100 文件是在该 sigma 下完整的 100 个提示、20 次运行的扫描。 SELECT_..._nNN 文件是在文件名所列提示上、相同 sigma 下的后续运行, 每个提示 NN 次运行。
  • 包含 HIGHSIGMA 的文件是第 4.1 节讨论的较大 sigma 下的运行。
  • 包含 SELECT 的文件是在文件名所列提示上的额外运行,针对 需要超过 20 次运行才能越狱的提示。每个日志的头部行记录 sigma 值、运行次数、提示 id 和随机种子。
  • Llama-3.1-8B/baseline/fixed_baseline.xlsx 和 fixed_* 标签文件是经过人工验证后的标签文件, 取代早期版本。

响应分类

响应由 Claude Opus 4.6 使用 JailbreakBench 评判指令进行分类,输入为 包含提示、运行编号和响应的日志文件。每个被标记为不安全的响应随后都经过 人工检查。results/ 中的标签文件是经过验证的标签。

复现一次运行

code/ours/<model>/ 下的每个 notebook 均在 Google Colab 中的单块 NVIDIA A100-SXM4-80GB 上运行。它会导入对应的 run_<model>.py,加载 JailbreakBench 有害提示词,通过模型的输入嵌入层映射每个提示词,向完整提示词嵌入添加独立高斯噪声 N(0, sigma^2),并将扰动后的嵌入传递给 transformer 层。对于每个提示词,它在一个批次中采样 20 个噪声矩阵,并将每个响应追加到日志中。解码参数和各模型的 sigma 列于论文第 4 节和表 3,并在每个 notebook 顶部设置。Hugging Face token 通过交互方式请求,不存储在此仓库中。其他方法的 notebook 遵循相同模式,只是替换为相应的攻击。

论文中的越狱率可以仅从标签文件重新计算,无需运行任何模型。

下载工具