NVIDIA Garak: инструмент с открытым исходным кодом для обнаружения уязвимостей LLM и обеспечения безопасности генеративного ИИ

Общее введение

NVIDIA Garak - это инструмент с открытым исходным кодом, специально разработанный для обнаружения уязвимостей в больших языковых моделях (LLM). Он проверяет модель на наличие множества слабых мест, таких как иллюзии, утечка данных, внедрение подсказок, генерация сообщений об ошибках, генерация вредоносного содержимого и т.д. с помощью статического, динамического и адаптивного зондирования. Garak похож на nmap в области кибербезопасности, но фокусируется на оценке безопасности LLM.

Сопутствующие инструменты: https://github.com/msoedov/agentic_security

NVIDIA Garak:检测LLM漏洞的开源工具,确保生成式AI的安全性

 

Список функций

  • проверка на уязвимость: Обнаруживает различные потенциальные уязвимости в LLM, включая фантомы, утечки данных, инъекции подсказок и т.д.
  • Оценка генеративного ИИ: Оценка производительности генеративных моделей ИИ в различных контекстах.
  • Тестирование диалоговой системы: Протестируйте реакцию диалоговой системы при различных входных сигналах, чтобы выявить потенциальные проблемы безопасности.
  • Поддержка нескольких моделей: Поддерживает Hugging Face, OpenAI, Replicate и другие генеративные модели.
  • инструмент командной строки: Работает из командной строки и доступен для систем Linux и OSX.
  • Ведение журнала: Подробные записи процесса и результатов сканирования для последующего анализа и улучшения.

 

Использование помощи

Процесс установки

  1. Стандартная установка::
    • Установите из PyPI с помощью pip:
      python -m pip install -U garak
      
  2. Установка версии для разработчиков::
    • Получите последнюю версию с GitHub:
      python -m pip install -U git+https://github.com/NVIDIA/garak.git@main
      
  3. Клонирование из источника::
    • Создайте окружение Conda и установите зависимости:
      conda create --name garak "python>=3.10,<3.12"
      conda activate garak
      gh repo clone NVIDIA/garak
      cd garak
      python -m pip install -e .
      

Использование

  1. основное использование::
    • Гараку необходимо знать, какую модель сканировать, и по умолчанию он выбирает все известные зонды для этой модели. Чтобы просмотреть список зондов, выполните следующую команду:
      garak --list_probes
      
    • Указывает тип генератора и название модели:
      garak --model_type huggingface --model_name RWKV/rwkv-4-169m-pile
      
    • Запустите определенный зонд:
      garak --model_type openai --model_name gpt-3.5-turbo --probes encoding
      
  2. Прочитать результаты::
    • По завершении каждой попытки Garak выдает индикатор выполнения и выводит результаты оценки по завершении. Если в результате попыток пробника было обнаружено плохое поведение, ответ помечается как FAIL и указывается процент неудач.
  3. Журналы и отчеты::
    • Ошибки записываются в файл garak.log, а подробности выполнения - в файл .jsonl. Его можно проанализировать с помощью скрипта analyse/analyse_log.py.
  4. типичный пример::
    • зондирование ChatGPT Уязвимость к атакам с внедрением кода:
      export OPENAI_API_KEY="sk-123XXXXXXXXXXXX"
      python3 -m garak --model_type openai --model_name gpt-3.5-turbo --probes encoding
      
  5. Разработка плагинов::
    • Наследуйте базовый класс и переопределите необходимые методы, чтобы протестировать новый код:
      import garak.probes.mymodule
      p = garak.probes.mymodule.MyProbe()
      python3 -m garak -m test.Blank -p mymodule -d always.Pass
      
© заявление об авторских правах

Похожие статьи

AI Hedge Fund:开源自动化交易系统,利用多智能体进行复杂对冲基金交易决策

Нет комментариев

Вы должны войти в систему, чтобы участвовать в комментариях!
Войти сейчас
нет
Нет комментариев...