
Каркас для исследований выравнивания (в стиле автоисследований) для защиты LLM: поиск по одной поверхности policy.md
Open source от Santander AI Lab. Библиотека / оценочный стенд (в стиле autoresearch) для исследования безопасности LLM / ИИ: выполняет поиск по единой изменяемой поверхности
policy.md, чтобы минимизировать показатель успешности атак (ASR) на фиксированном наборе оценок, с порогом корректных ответов.
Часть Santander AI Open Source — проекты открытого ИИ от Banco Santander (santander.com).
autoguardrails — это небольшой каркас для исследований выравнивания, вдохновлённый autoresearch от Карпати.
Вместо поиска по train.py этот репозиторий ищет по policy.md.
Идея та же:
В этом репозитории ключевой показатель — показатель успешности атак (ASR, чем ниже, тем лучше), с порогом корректных ответов, чтобы система не могла выиграть, отказывая во всём.
Для повседневных экспериментов наиболее важны три файла:
program.md: инструкции цикла, принадлежащие человекуpolicy.md: единственный файл, который следует редактировать между запускамиresults.tsv: журнал запусков только для добавленияВсё остальное — фиксированный код каркаса или фиксированные оценочные данные.
policy.mdeval_suite.jsonljudge_prompt.mdautoguardrails/ASR улучшается, а проход корректных ответов не падает более чем на 2 процентных пунктаЕсли вам нужна ментальная модель, близкая к оригинальному autoresearch, представляйте autoguardrails/ как фиксированный вспомогательный слой, а policy.md — как единственный файл, по которому ведётся поиск.
Запускайте из корня репозитория.
python -m autoguardrails baseline --reset --repeat 2 --notes "initial baseline"
Отредактируйте только policy.md.
Оцените нового кандидата.
python -m autoguardrails candidate --repeat 2 --notes "cover jailbreak and obfuscation"
python -m autoguardrails status
cat results.tsv
Если кандидат отклонён, каркас автоматически восстанавливает policy.md до последней принятой версии.
Если вы предпочитаете единую точку входа, используйте run_autoguardrails.sh:
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_compatibleAUTOGUARDRAILS_TARGET_MODELAUTOGUARDRAILS_TARGET_API_BASEAUTOGUARDRAILS_TARGET_API_KEYПеременные модели-судьи:
AUTOGUARDRAILS_JUDGE_PROVIDER=openai_compatibleAUTOGUARDRAILS_JUDGE_MODELAUTOGUARDRAILS_JUDGE_API_BASEAUTOGUARDRAILS_JUDGE_API_KEYПример:
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"
Используйте фиксированную конфигурацию судьи в течение серии запусков. Не меняйте промпт судьи или модель-судью в середине эксперимента.
Простой цикл офлайн-эмуляции выглядит так:
policy.md.candidate.Пример одного изменения-кандидата, которое улучшает встроенную заглушку: добавить явную обработку для:
Это даст вам реалистичную первую кривую улучшения без изменения оценщика.
program.md: инструкции и ограничения экспериментаpolicy.md: изменяемая политика защиты, по которой ведётся поискjudge_prompt.md: замороженный промпт судьиeval_suite.jsonl: фиксированные случаи атак и корректных запросовresults.tsv: журнал запусковrun_autoguardrails.sh: удобная обёртка для CLIautoguardrails/: фиксированный каркас на Pythontests/: регрессионные проверки и проверки безопасности каркасаСм. autoguardrails/README.md для архитектуры кода и tests/README.md для стратегии тестирования.