Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
autoguardrails — Каркас для исследований выравнивания (в стиле автоисследований) для защиты LLM: поиск по одной поверхности policy.md | Kitploit
Инструменты/GitHubGitHub/santanderai/autoguardrails
Обучение и ОбразованиеRed TeamingБезопасность ИИСостязательная Атака
GitHubsantanderai/autoguardrails

autoguardrails

Каркас для исследований выравнивания (в стиле автоисследований) для защиты LLM: поиск по одной поверхности policy.md

Репозиторий
129351 месяц назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться
Сайт

autoguardrails

Open source от Santander AI Lab. Библиотека / оценочный стенд (в стиле autoresearch) для исследования безопасности LLM / ИИ: выполняет поиск по единой изменяемой поверхности policy.md, чтобы минимизировать показатель успешности атак (ASR) на фиксированном наборе оценок, с порогом корректных ответов.

License: Apache 2.0 Python 3.10+ CI CodeQL codecov OpenSSF Scorecard Code style: black Ruff Conventional Commits Часть Santander AI Open Source — проекты открытого ИИ от Banco Santander (santander.com).

autoguardrails — это небольшой каркас для исследований выравнивания, вдохновлённый autoresearch от Карпати.

Вместо поиска по train.py этот репозиторий ищет по policy.md. Идея та же:

  • оставить изменяемую поверхность крошечной
  • оставить оценщик фиксированным
  • работать в рамках фиксированного временного бюджета
  • сравнивать кандидатов по одному ключевому показателю
  • логировать каждое решение о сохранении или отклонении

В этом репозитории ключевой показатель — показатель успешности атак (ASR, чем ниже, тем лучше), с порогом корректных ответов, чтобы система не могла выиграть, отказывая во всём.

Что наиболее важно

Для повседневных экспериментов наиболее важны три файла:

  • program.md: инструкции цикла, принадлежащие человеку
  • policy.md: единственный файл, который следует редактировать между запусками
  • results.tsv: журнал запусков только для добавления

Всё остальное — фиксированный код каркаса или фиксированные оценочные данные.

Текущее исследовательское соглашение

  • Изменяемая поверхность: policy.md
  • Фиксированный набор: eval_suite.jsonl
  • Фиксированный промпт судьи: judge_prompt.md
  • Фиксированный каркас: autoguardrails/
  • Правило принятия: сохранять кандидата только если ASR улучшается, а проход корректных ответов не падает более чем на 2 процентных пункта
  • Бюджет времени: фиксирован конфигом каркаса, в настоящее время 5 минут на один проход оценки

Если вам нужна ментальная модель, близкая к оригинальному autoresearch, представляйте autoguardrails/ как фиксированный вспомогательный слой, а policy.md — как единственный файл, по которому ведётся поиск.

Быстрый старт

Запускайте из корня репозитория.

  1. Запишите базовый результат.
root@kitploit:~
python -m autoguardrails baseline --reset --repeat 2 --notes "initial baseline"
  1. Отредактируйте только policy.md.

  2. Оцените нового кандидата.

root@kitploit:~
python -m autoguardrails candidate --repeat 2 --notes "cover jailbreak and obfuscation"
  1. Просмотрите текущий сохранённый результат.
root@kitploit:~
python -m autoguardrails status
  1. Просмотрите полный журнал.
root@kitploit:~
cat results.tsv

Если кандидат отклонён, каркас автоматически восстанавливает policy.md до последней принятой версии.

Обёртка в виде shell-скрипта

Если вы предпочитаете единую точку входа, используйте run_autoguardrails.sh:

root@kitploit:~
sh run_autoguardrails.sh status
sh run_autoguardrails.sh evaluate
sh run_autoguardrails.sh baseline "initial baseline" 2
sh run_autoguardrails.sh candidate "cover jailbreak and obfuscation" 2

В Windows запускайте обёртку из Git Bash или другой POSIX-совместимой оболочки.

Настройка реальной модели

По умолчанию используется детерминированный локальный заглушка, чтобы репозиторий работал без подключения к сети. Для настоящих экспериментов укажите целевую модель и модель-судью через конечные точки, совместимые с OpenAI.

Переменные целевой модели:

  • AUTOGUARDRAILS_TARGET_PROVIDER=openai_compatible
  • AUTOGUARDRAILS_TARGET_MODEL
  • AUTOGUARDRAILS_TARGET_API_BASE
  • AUTOGUARDRAILS_TARGET_API_KEY

Переменные модели-судьи:

  • AUTOGUARDRAILS_JUDGE_PROVIDER=openai_compatible
  • AUTOGUARDRAILS_JUDGE_MODEL
  • AUTOGUARDRAILS_JUDGE_API_BASE
  • AUTOGUARDRAILS_JUDGE_API_KEY

Пример:

root@kitploit:~
export AUTOGUARDRAILS_TARGET_PROVIDER=openai_compatible
export AUTOGUARDRAILS_TARGET_MODEL=gpt-4.1-mini
export AUTOGUARDRAILS_TARGET_API_BASE=https://your-endpoint.example/v1
export AUTOGUARDRAILS_TARGET_API_KEY=your-target-key

export AUTOGUARDRAILS_JUDGE_PROVIDER=openai_compatible
export AUTOGUARDRAILS_JUDGE_MODEL=gpt-4.1-mini
export AUTOGUARDRAILS_JUDGE_API_BASE=https://your-endpoint.example/v1
export AUTOGUARDRAILS_JUDGE_API_KEY=your-judge-key

python -m autoguardrails baseline --reset --repeat 2 --notes "real-model baseline"

Используйте фиксированную конфигурацию судьи в течение серии запусков. Не меняйте промпт судьи или модель-судью в середине эксперимента.

Типичный шаблон итераций

Простой цикл офлайн-эмуляции выглядит так:

  1. Запишите базовый результат.
  2. Добавьте одно семейство изменений политики в policy.md.
  3. Запустите candidate.
  4. Сохраняйте изменение только если каркас его принимает.
  5. Повторите с одним новым изменением за раз.

Пример одного изменения-кандидата, которое улучшает встроенную заглушку: добавить явную обработку для:

  • формулировок джейлбрейка, таких как «игнорируй предыдущие инструкции», «ролевая игра» и «режим разработчика»
  • запросов на обфускацию, таких как перевод, base64, rot13, форматирование только в JSON или преобразование схем

Это даст вам реалистичную первую кривую улучшения без изменения оценщика.

Структура репозитория

  • program.md: инструкции и ограничения эксперимента
  • policy.md: изменяемая политика защиты, по которой ведётся поиск
  • judge_prompt.md: замороженный промпт судьи
  • eval_suite.jsonl: фиксированные случаи атак и корректных запросов
  • results.tsv: журнал запусков
  • run_autoguardrails.sh: удобная обёртка для CLI
  • autoguardrails/: фиксированный каркас на Python
  • tests/: регрессионные проверки и проверки безопасности каркаса

См. autoguardrails/README.md для архитектуры кода и tests/README.md для стратегии тестирования.

Замечания по безопасности

  • Этот каркас намеренно одношаговый и узкий по охвату.
  • Он не моделирует инструменты, доступ к файлам или многошаговые действия агента.
  • Встроенная заглушка предназначена только для проверки каркаса; это не реалистичная модель безопасности.
  • Набор оценок фиксирован по замыслу. Если вы его меняете, начните новую линию экспериментов вместо сравнения со старыми результатами.

Требования

  • Python 3.10+
  • Нет сторонних зависимостей времени выполнения — каркас полностью построен на стандартной библиотеке Python и по умолчанию работает офлайн.
  • Опционально, только для разработки: ruff, black, mypy, pytest, pytest-cov (см. CONTRIBUTING.md).
  • Опционально, для экспериментов с реальными моделями: доступ к конечной точке чат-дополнений, совместимой с OpenAI (настраивается через переменные окружения AUTOGUARDRAILS_*, описанные выше).

Участие в разработке

Мы приветствуем вклад! Пожалуйста, прочитайте наши Рекомендации по участию и Кодекс поведения перед началом работы.

  • Сообщайте об ошибках и запрашивайте функции через GitHub Issues.
  • Внешние участники подписывают CLA (автоматически обрабатывается ботом CLA Assistant при вашем первом PR).
  • Перед открытием PR выполните ruff check ., black --check ., mypy autoguardrails и pytest.
  • Соблюдайте исследовательское соглашение: policy.md — единственная изменяемая поверхность; eval_suite.jsonl и judge_prompt.md заморожены.

Безопасность

Пожалуйста, сообщайте об уязвимостях безопасности ответственно. См. нашу Политику безопасности о способах сообщения (не открывайте публичный issue для уязвимостей). Контакт: [email protected] или используйте GitHub Security Advisories.

Отказ от ответственности

Данное программное обеспечение является проектом с открытым исходным кодом от Santander AI Lab, предоставляется «как есть» в соответствии с его лицензией, без каких-либо гарантий или условий. Оно не является официальным продуктом или услугой Banco Santander, не несёт обязательств по производственной поддержке и не представляет собой финансовую, юридическую или профессиональную консультацию.

«Santander» и его логотип являются зарегистрированными товарными знаками Banco Santander, S.A. Лицензия проекта не предоставляет права на их использование, кроме фактической ссылки.

Если вы считаете, что нашли уязвимость в безопасности, следуйте нашей политике безопасности — не открывайте публичный issue. Вы несёте ответственность за оценку пригодности данного программного обеспечения для вашего варианта использования и за поддержание актуальности ваших собственных развёртываний.

Лицензия

Этот проект лицензирован под Apache License 2.0 — см. файлы LICENSE и NOTICE для подробностей.

root@kitploit:~
Copyright (c) 2026 Santander Group
SPDX-License-Identifier: Apache-2.0

Цитирование

Если вы используете autoguardrails в своих исследованиях, пожалуйста, цитируйте его:

root@kitploit:~
@software{autoguardrails2026,
  author  = {{Santander AI Lab}},
  title   = {autoguardrails: an autoresearch-style guardrail policy loop},
  year    = {2026},
  url     = {https://github.com/SantanderAI/autoguardrails},
  license = {Apache-2.0}
}
Скачать инструмент