LLM攻击,大语言模型攻击

LLM攻击

https://github-com.translate.goog/llm-attacks

许可证:麻省理工学院

这是Andy ZouZifan WangJ. Zico KolterMatt Fredrikson的“统一语言模型的通用且可转移的对抗性攻击”的官方存储库。

请在此处查看我们的网站和演示

目录

安装

我们需要 FastChat 来创建对话。目前,我们通过执行以下步骤从源代码安装它(我们建议在该存储库的根目录之外进行 git clone FastChat)。

git clone https://github.com/lm-sys/FastChat.git
cd FastChat
pip3 install --upgrade pip  # enable PEP 660 support
pip3 install -e .

llm-attacks可以通过在此存储库的根目录运行以下命令来安装该软件包:

pip install -e .

楷模

请先按照说明下载Vicuna-7B或/和LLaMA-2-7B-Chat(我们这里使用HuggingFace转换的权重)。默认情况下,我们的脚本假设模型存储在名为 的根目录中/DIRexperiments/configs/individual_xxx.py要修改模型和分词器的路径,请在(对于单个实验)和(对于多种行为或转移实验)中添加以下行experiments/configs/transfer_xxx.py。举例如下。

    config.model_paths = [
        "/DIR/vicuna/vicuna-7b-v1.3",
        ... # more models
    ]
    config.tokenizer_paths = [
        "/DIR/vicuna/vicuna-7b-v1.3",
        ... # more tokenizers
    ]

用法

我们使用 GCG 运行实验的代码位于包含experiments文件夹中。要对本文中提到的有害行为和有害字符串进行单独的实验,请在其中运行以下代码experiments

cd launch_scripts
bash run_gcg_individual.sh vicuna behaviors

更改vicunallama2和更改behaviorsstrings将切换到不同的实验设置。

要执行多个行为实验(即 25 个行为,1 个模型),请在内部运行以下代码experiments

cd launch_scripts
bash run_gcg_multiple.sh vicuna # or llama2

要执行迁移实验(即 25 个行为,2 个模型),请在内部运行以下代码experiments

cd launch_scripts
bash run_gcg_transfer.sh vicuna 2 # or vicuna_guanaco 4

要进行评估实验,请按照 中的说明进行操作experiments/parse_results.ipynb

请注意,我们实验中的所有超参数均由此处的ml_collections包处理。您可以直接在定义这些超参数的位置更改这些超参数,例如。但是,传递不同超参数的推荐方法(例如您想尝试另一个模型)是在启动脚本中执行此操作。查看我们的启动脚本示例。有关更多信息,请参阅他们的存储库experiments/configs/individual_xxx.pyexperiments/launch_scriptsml_collections

猜你喜欢

转载自blog.csdn.net/sinat_37574187/article/details/131986439