Attaque LLM, grande attaque de modèle de langage

Attaque LLM

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

Licence : MIT

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-attacksLe 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.pyPour 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 experimentsdossier 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 vicunapar llama2et Remplacer behaviorspar stringspermet 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.pyexperiments/launch_scriptsml_collections

Je suppose que tu aimes

Origine blog.csdn.net/sinat_37574187/article/details/131986439
conseillé
Classement