Attaque LLM
https://github-com.translate.goog/llm-attacks
Il s'agit du référentiel officiel des « Attaques contradictoires générales et transférables contre les modèles de langage unifié » par Andy Zou , Zifan Wang , J. Zico Kolter et Matt Fredrikson.
Consultez notre site Web et notre démo ici .
Table des matières
Installer
Nous avons besoin de FastChat pour créer des conversations . Actuellement, nous l'installons à partir de la source en procédant comme suit (nous recommandons git clone FastChat en dehors de la racine de ce référentiel).
git clone https://github.com/lm-sys/FastChat.git
cd FastChat
pip3 install --upgrade pip # enable PEP 660 support
pip3 install -e .
llm-attacks
Le package peut être installé en exécutant la commande suivante depuis la racine de ce dépôt :
pip install -e .
modèle
Veuillez suivre les instructions pour télécharger Vicuna-7B ou/et LLaMA-2-7B-Cha t ( ici , nous utilisons les poids convertis par HuggingFace). Par défaut, notre script suppose que les modèles sont stockés dans un répertoire racine nommé /DIR
. experiments/configs/individual_xxx.py
Pour modifier le chemin d'accès au modèle et au tokenizer, ajoutez les lignes suivantes dans (pour une seule expérience) et (pour plusieurs expériences de comportement ou de transfert) experiments/configs/transfer_xxx.py
. Les exemples sont les suivants.
config.model_paths = [
"/DIR/vicuna/vicuna-7b-v1.3",
... # autres modèles
]
config.tokenizer_paths = [
"/DIR/vicuna/vicuna-7b-v1.3",
... # autres générateurs de jetons
]
usage
Notre code pour exécuter des expériences à l'aide de GCG se trouve dans le experiments
dossier include. Pour exécuter une expérience distincte avec le comportement nuisible et les chaînes nuisibles mentionnées dans cet article, exécutez-y le code suivantexperiments
:
cd launch_scripts
bash run_gcg_individual.sh comportements des vigognes
Remplacer vicuna
par llama2
et Remplacer behaviors
par strings
permet de basculer vers un paramètre de test différent.
Pour effectuer plusieurs expériences comportementales (c'est-à-dire 25 comportements, 1 modèle ), exécutez le code suivant à l'intérieur experiments
:
cd launch_scripts
bash run_gcg_multiple.sh vigogne # ou llama2
Pour effectuer une expérience de migration (c'est-à-dire 25 comportements, 2 modèles), exécutez le code suivant à l'intérieur experiments
:
cd launch_scripts
bash run_gcg_transfer.sh vigogne 2 # ou vicuna_guanaco 4
Pour exécuter une expérience d'évaluation, suivez les instructions de experiments/parse_results.ipynb
.
Notez que tous les hyperparamètres de nos expériences sont gérés par le package iciml_collections
. Vous pouvez modifier ces hyperparamètres directement là où ils sont définis, par ex. Cependant, la méthode recommandée pour passer différents hyperparamètres (par exemple si vous voulez essayer un autre modèle) est de le faire dans le script de démarrage. Découvrez notre exemple de script de démarrage. Voir leur référentiel pour plus d'informations .experiments/configs/individual_xxx.py
experiments/launch_scripts
ml_collections