CipherChat简介
CipherChat是由RobustNLP团队开发的一个创新框架,目的是系统地评估大型语言模型(LLMs)的安全对齐能力在非自然语言(密码)上的泛化性。该项目的核心思想是通过使用人类无法直接阅读的密码来绕过LLMs的安全对齐,从而测试模型的安全性。
CipherChat的主要特点包括:
- 使用密码专家角色来教导LLM理解密码
- 将输入转换为密码形式,以绕过LLMs的安全对齐
- 使用基于规则的解密器将模型输出从密码格式转换为自然语言
项目资源
-
GitHub仓库: RobustNLP/CipherChat
这是CipherChat项目的官方代码仓库,包含了完整的源代码、使用说明和实验结果。
-
论文: GPT-4 Is Too Smart To Be Safe: Stealthy Chat with LLMs via Cipher
这篇论文详细介绍了CipherChat的设计理念、实现方法和实验结果。已被ICLR 2024接收。
-
开源许可: MIT License
CipherChat采用MIT开源许可证,允许自由使用、修改和分发。
使用指南
要开始使用CipherChat,您可以按照以下步骤操作:
-
克隆GitHub仓库:
git clone https://github.com/RobustNLP/CipherChat.git
-
安装依赖: (请参考项目README中的具体说明)
-
运行示例:
python3 main.py \ --model_name gpt-4-0613 \ --data_path data/data_en_zh.dict \ --encode_method caesar \ --instruction_type Crimes_And_Illegal_Activities \ --demonstration_toxicity toxic \ --language en
更多详细的参数说明和使用方法,请参考项目的README.md文件。
核心文件说明
main.py
: 主程序入口encode_experts.py
: 实现密码专家角色prompts_and_demonstrations.py
: 定义提示和示例utils.py
: 工具函数
实验结果
CipherChat的实验结果存储在experimental_results
文件夹中,可以使用torch.load()
加载。结果显示,某些密码几乎100%成功绕过了GPT-4在多个安全领域的安全对齐,这凸显了开发非自然语言安全对齐的必要性。
社区讨论
- Twitter: AIDB, Jiao Wenxiang
引用
如果您在研究中使用了CipherChat,请引用以下论文:
@inproceedings{
yuan2024cipherchat,
title={{GPT}-4 Is Too Smart To Be Safe: Stealthy Chat with {LLM}s via Cipher},
author={Youliang Yuan and Wenxiang Jiao and Wenxuan Wang and Jen-tse Huang and Pinjia He and Shuming Shi and Zhaopeng Tu},
booktitle={The Twelfth International Conference on Learning Representations},
year={2024},
url={https://openreview.net/forum?id=MbfAK4s61A}
}
CipherChat为研究人员和开发者提供了一个强大的工具,用于评估和改进LLMs的安全性。通过深入了解和使用这个框架,我们可以更好地应对AI安全领域的挑战,推动大型语言模型向更安全、更可靠的方向发展。