NVIDIA Garak : outil open-source pour détecter les vulnérabilités LLM et sécuriser l'IA générative
Introduction générale
NVIDIA Garak est un outil open source spécialement conçu pour détecter les vulnérabilités dans les grands modèles de langage (LLM). Il vérifie le modèle pour détecter de multiples faiblesses telles que les illusions, les fuites de données, l'injection d'indices, la génération de messages d'erreur, la génération de contenu nuisible, etc. par le biais de sondages statiques, dynamiques et adaptatifs.
Outils connexes : https://github.com/msoedov/agentic_security

Liste des fonctions
- analyse de la vulnérabilitéDétecte une variété de vulnérabilités potentielles dans LLM, y compris les fantômes, les fuites de données, l'injection d'indices, etc.
- Évaluation de l'IA générative: Évaluation de la performance des modèles génératifs d'IA dans différents contextes.
- Test du système de dialogueTest de sécurité : tester la réponse du système de dialogue en fonction de différentes entrées afin d'identifier les problèmes de sécurité potentiels.
- Prise en charge de plusieurs modèlesSupport de Hugging Face, OpenAI, Replicate et d'autres modèles génératifs.
- outil en ligne de commandeIl fonctionne à partir de la ligne de commande et est disponible pour les systèmes Linux et OSX.
- EnregistrementLes résultats de la numérisation sont consignés dans des registres détaillés en vue d'une analyse et d'une amélioration ultérieures.
Utiliser l'aide
Processus d'installation
- Installation standard: :
- Installer à partir de PyPI en utilisant pip :
python -m pip install -U garak
- Installer à partir de PyPI en utilisant pip :
- Version de développement Installation: :
- Obtenez la dernière version sur GitHub :
python -m pip install -U git+https://github.com/NVIDIA/garak.git@main
- Obtenez la dernière version sur GitHub :
- Clonage à partir de la source: :
- Créer un environnement Conda et installer les dépendances :
conda create --name garak "python>=3.10,<3.12" conda activate garak gh repo clone NVIDIA/garak cd garak python -m pip install -e .
- Créer un environnement Conda et installer les dépendances :
Utilisation
- utilisation de base: :
- Garak a besoin de savoir quel modèle il doit scanner et affiche par défaut toutes les sondes connues pour ce modèle. Utilisez la commande suivante pour afficher la liste des sondes :
garak --list_probes
- Spécifie le type de générateur et le nom du modèle :
garak --model_type huggingface --model_name RWKV/rwkv-4-169m-pile
- Exécuter une sonde spécifique :
garak --model_type openai --model_name gpt-3.5-turbo --probes encoding
- Garak a besoin de savoir quel modèle il doit scanner et affiche par défaut toutes les sondes connues pour ce modèle. Utilisez la commande suivante pour afficher la liste des sondes :
- Lire les résultats: :
- À l'issue de chaque sonde, Garak génère une barre de progression et affiche les résultats de l'évaluation. Si l'une des tentatives de sondage se solde par un mauvais comportement, la réponse est marquée FAIL et un taux d'échec est indiqué.
- Journaux et rapports: :
- Les erreurs sont enregistrées dans le fichier garak.log et les détails de l'exécution sont enregistrés dans le fichier .jsonl. Ce dernier peut être analysé à l'aide du script analyse/analyse_log.py.
- exemple typique: :
- détection ChatGPT Vulnérabilité aux attaques par injection de code :
export OPENAI_API_KEY="sk-123XXXXXXXXXXXX" python3 -m garak --model_type openai --model_name gpt-3.5-turbo --probes encoding
- détection ChatGPT Vulnérabilité aux attaques par injection de code :
- Développement de plug-ins: :
- Hériter de la classe de base et surcharger les méthodes nécessaires pour tester le nouveau code :
import garak.probes.mymodule p = garak.probes.mymodule.MyProbe() python3 -m garak -m test.Blank -p mymodule -d always.Pass
- Hériter de la classe de base et surcharger les méthodes nécessaires pour tester le nouveau code :
© déclaration de droits d'auteur
L'article est protégé par le droit d'auteur et ne doit pas être reproduit sans autorisation.
Articles connexes
Pas de commentaires...