Загрузка 0
ПОДЕЛИТЬСЯ

Мой блог

Листай вниз

GuardRate: архитектура, метрики и инсайты из аудита моделей защиты ИИ

GuardRate: архитектура, метрики и инсайты из аудита моделей защиты ИИ

Архитектура GuardRate: как устроен процесс тестирования

Первый этап аудита позволил нам сопоставить результаты 37 guardrail-моделей ИИ и увидеть общую картину. Однако для полного понимания эффективности защиты нейросетей необходимо разобрать внутреннее устройство тестирующего комплекса GuardRate Tool и системы ранжирования GuardRate Leaderboard. Я подробно опишу принципы построения конвейера оценки, логику отбора бенчмарков, математический аппарат метрик и результаты проведенных тестов.

Проект реализован по концепции Evaluation-as-Code — это единая воспроизводимая система тестирования, основанная на трех фундаментальных принципах:

  • Полная изоляция среды. Каждая модель проверяется в строгих изолированных условиях. Для этого запускается отдельный Docker-контейнер со специализированным окружением и сервером vLLM. Использование сторонних облачных API полностью исключено, так как их поведение и веса могут меняться прямо во время аудита.
  • CLI-автоматизация. Запуск всего цикла испытаний выполняется одной консольной командой. Базовая конфигурация описывается в YAML-файле, а параметры командной строки позволяют при необходимости переопределять конкретные значения:
python -m cli run \
  --config qwen_config.yaml \
  --model "Qwen/Qwen3Guard-Gen-0.6B" \
  --benchmarks "AEGIS,StrongReject_PlusPlus,HarmBench" \
  --device "cuda:0" \
  --artifacts-dir ./runs

Система автоматически скачивает тестовые наборы, разворачивает модели, выполняет инференс и фиксирует сырые логи. Это практически полностью убирает человеческий фактор и обеспечивает стопроцентную воспроизводимость результатов.

Реклама
GuardRate: архитектура, метрики и инсайты из аудита моделей защиты ИИ
GuardRate: архитектура, метрики и инсайты из аудита моделей защиты ИИ
GuardRate: архитектура, метрики и инсайты из аудита моделей защиты ИИ
GuardRate: архитектура, метрики и инсайты из аудита моделей защиты ИИ
GuardRate: архитектура, метрики и инсайты из аудита моделей защиты ИИ
GuardRate: архитектура, метрики и инсайты из аудита моделей защиты ИИ
GuardRate: архитектура, метрики и инсайты из аудита моделей защиты ИИ
GuardRate: архитектура, метрики и инсайты из аудита моделей защиты ИИ
GuardRate: архитектура, метрики и инсайты из аудита моделей защиты ИИ
GuardRate: архитектура, метрики и инсайты из аудита моделей защиты ИИ
GuardRate: архитектура, метрики и инсайты из аудита моделей защиты ИИ
GuardRate: архитектура, метрики и инсайты из аудита моделей защиты ИИ
GuardRate: архитектура, метрики и инсайты из аудита моделей защиты ИИ
GuardRate: архитектура, метрики и инсайты из аудита моделей защиты ИИ
GuardRate: архитектура, метрики и инсайты из аудита моделей защиты ИИ
GuardRate: архитектура, метрики и инсайты из аудита моделей защиты ИИ
GuardRate: архитектура, метрики и инсайты из аудита моделей защиты ИИ
  • Широкий спектр угроз. В финальный тестовый контур вошли 19 бенчмарков, охватывающих прямые атаки (HarmBench, MultiJail), сценарии избыточной блокировки (XSTest, OverRefusalBenchmark), а также мультиязычные и русскоязычные датасеты.

Конвейер обработки данных (Pipeline)

Процесс тестирования состоит из нескольких последовательных шагов:

  1. Запуск модели. Оркестратор разворачивает backend (vLLM или Docker-контейнер). Образ собирается под требования конкретной модели и проходит проверку готовности (readiness check).
  2. Подготовка датасетов. Все метки исходных данных привозятся к унифицированному виду (safe/harm). Добавление нового бенчмарка требует лишь описания конфигурации.
  3. Инференс. Модуль CLI отправляет запросы через API-эндпоинт /chat/completions (совместимый со стандартом OpenAI) и собирает предсказания.
  4. Парсинг ответов. Сырой текстовый вывод модели приводится к стандартным бинарным меткам (harm/safe). В случае если парсер получает нерелевантный или нераспознаваемый ответ, кейс помечается как ошибочный, и ему принудительно назначается инвертированная эталонная метка.
  5. Расчет метрик. Результаты сравниваются с разметкой, после чего вычисляются F1, FNR, FPR, precision, recall и accuracy.
  6. Агрегация и сナップшоты. Данные со всех прогонов упаковываются в единый снимок (snapshot) и сохраняются в директорию артефактов.
  7. Публикация и отображение. Команда cli publish отправляет результаты в хранилище на Hugging Face, откуда их считывает публичный веб-интерфейс.

Все исходные логи, ответы нейросетей и пошаговые метрики сохраняются. Я могу в любой момент открыть артефакты конкретного запуска и посмотреть, на каких именно примерах модель допустила сбой.

Отправка результатов в табличный лидерборд выполняется следующей командой:

Двудольный граф зависимостей бенчмарков и источников данных GuardRate
Двудольный граф зависимостей между проверочными бенчмарками и первичными источниками данных.
python -m cli publish \
  --config publisher_service/config.yaml \
  --runs-dir ./runs \
  --run-filter "run_20260219_120000_abc12def"

Конфигурационный файл модели для запуска выглядит следующим образом:

Таблица бенчмарков GuardRate по кластерам проверок
Итоговый перечень из 19 бенчмарков, распределенных по категориальным кластерам.
name: "qwen_guard_run"
inference:
  mode: vllm
  vllm:
    base_url: "http://localhost:8000"
    openai_model: "Qwen3Guard-Gen"
    temperature: 0.0
    max_tokens: 256
parser_config:
  parser_class: "regex_parser.RegexParser"
  fields:
    safety_label: "Safety: (Safe|Unsafe|Controversial)"
model:
  name: "Qwen/Qwen3Guard-Gen-0.6B"
  device: "cuda:0"
  base_image: "pytorch/pytorch:2.10.0-cuda13.0-cudnn9-runtime"
artifacts_dir: "./runs"

Методология формирования набора бенчмарков

Для корректного вычисления финального рейтинга требовалось подобрать датасеты с минимальной взаимной корреляцией.

Реклама

Этап 1: Индивидуальный отбор бенчмарков

Каждый кандидат оценивался по комплексу критериев: цитируемость и авторитет в научном сообществе, уникальность специфики, языковое разнообразие, охват категорий вредоносности, близость к реальным эксплуатационным задачам и качество исходных данных.

Формула расчета Dataset Score в GuardRate
Математическая формула вычисления Dataset Score на основе FPR и FNR.

Этап 2: Кластерный анализ и исключение дублей

Все датасеты были разделены по ключевым направлениям: ложные срабатывания (over-refusal), устойчивость к джейлбрейкам и промпт-атакам, базовая безопасность, базовые проверки (sanity check), а также региональные (русскоязычные) и мультиязычные тесты. В рамках каждого кластера мы оставляли только те наборы, которые не дублировали друг друга по смысловому наполнению. В частности, бенчмарк WildGuard был заменен на PolyGuard, так как последний лучше покрывает мультиязычные сценарии.

Контекст расчета Group Score GuardRate
Процесс агрегирования оценок сплитов внутри одного бенчмарка.

Чтобы минимизировать пересечение источников данных, был построен двудольный граф зависимостей между бенчмарками и первичными датасетами. Вершины, формировавшие сильно связанные компоненты, были удалены. В итоге сформировался окончательный перечень из 19 проверочных наборов.

Формула вычисления Group Score гармоническим средним
Математическая формула вычисления Group Score через гармоническое среднее.

Параметры экспериментального стенда

Все тесты проводились на ускорителях NVIDIA A100 с 80 ГБ видеопамяти. Мы сравнили две инфраструктурные конфигурации для проведения аудита:

Контекст вычисления интегральной оценки Integral Score
Агрегация показателей групп в итоговую интегральную оценку GuardRate.
Среда GPU vCPU RAM Диск Стоимость/час Стоимость 1 аудита (19 бенчмарков)
Docker backend (VPS) Tesla A100 (80GB) 16 64 GB 160 GB $2.3/час (~210 ₽/час) ~840–1 050 ₽ (~$9–11.5)
vLLM RunPod (Cloud) NVIDIA A100 (80GB) 16 117 GB 160 GB $1.49/час (~117 ₽/час) ~468–585 ₽ (~$5.2–10.4)

Во всех экспериментах жестко фиксировался random seed, генерация выполнялась при batch_size=1, а максимальная длина контекста max_length бралась из конфигурации модели (по умолчанию 512 токенов). Задержка (latency) замерялась как среднее время ответа на запрос в рамках полного прогона по всем 19 бенчмаркам.

Формула расчета Integral Score геометрическим средним
Формула вычисления Integral Score как геометрического среднего 19 групп.

Система метрик и математические «слепые зоны»

Классические метрики вроде F1-score или Accuracy слабо подходят для задач guardrail-фильтрации. Мы сфокусировались на показателях ложных срабатываний (FPR) и пропусков опасного контента (FNR). Общий интегральный скор выстраивается по трехуровневой схеме:

Анализ результатов вычисления метрик GuardRate
Пояснение механизма выявления провалов в моделях защиты ИИ.
  1. Dataset Score ($S_{dataset}$): рассчитывается для каждого сплита внутри бенчмарка на основе взвешенной суммы FPR и FNR. Это гарантирует баланс: модель не должна быть ни гиперопекающей, ни беспечной.
  2. Group Score ($S_{group}$): агрегирует оценки сплитов до уровня бенчмарка с помощью гармонического среднего.
  3. Integral Score ($S_{integral}$): итоговая метрика ранжирования, вычисляемая как геометрическое среднее по всем 19 группам.

Использование геометрического среднего обусловлено тем, что оно строго наказует за дисбаланс. Если модель идеально отражает джейлбрейки, но проваливает распознавание токсичности, ее общий интегральный рейтинг резко падает.

График слепой зоны метрик Group Score и Integral Score
Иллюстрация слепой зоны метрик при наличии некритичных выбросов.

Анализ слепой зоны метрик

Математический анализ показал наличие слепой зоны у гармонического и геометрического средних. Если четыре группы имеют высокие оценки, а одна — умеренно низкую (на уровне $0.5$), штраф оказывается незначительным. К примеру, при значении выброса $0.50$ Group Score составляет $0.7820$, а Integral Score — $0.8022$. Просадка на $-0.0202$ скрывает тот факт, что на одном из датасетов модель угадывает безопасный контент лишь в половине случаев. Чтобы скомпенсировать этот эффект, в лидерборде дополнительно публикуется минимальная оценка по датасетам (min_group).

Сравнение показателей Sing-Guard 2B и 4B
Сравнительный разрыв баллов между Sing-Guard 2B и Sing-Guard 4B по ключевым группам.

Инсайты и разбор аномалий лидерборда

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

Реклама
Показатели стабильности моделей HaloGuard
Профиль стабильности моделей HaloGuard 0.8B и 4B в рейтинге.

Sing-Guard: 2B на втором месте, 4B — на девятнадцатом

Я подробно разобрал семейство Sing-Guard. Казалось бы, 4B-версия должна превосходить 2B. Однако Sing-Guard 2B заняла 2-е место, а 4B упала на 19-ю позицию. Когда я сравнил оценки всех 19 групп, то выяснил: модель 4B обошла младшую версию только в датасете OR-Bench (+0.25) и незначительно в BeaverTails. Во всех остальных группах она продемонстрировала ощутимый провал:

Оценки модели YuFeng на русскоязычном бенчмарке RTP-LX
Провал лидера рейтинга YuFeng на русскоязычных токсичных ответах RTP-LX.
  • SimpleSafetyTests: с 0.99 упал до 0.53
  • MultiJail: с 0.88 упал до 0.56
  • CSRT: с 0.70 упал до 0.41
  • XSafety: с 0.52 упал до 0.26

Поскольку геометрическое среднее чувствительно к каждому провалу, один высокий результат на OR-Bench не смог компенсировать пять средних падений. Кроме того, у Sing-Guard 4B показатель FNR оказался выше (0.31 против 0.17 у 2B), то есть она чаще пропускала вредоносные запросы.

Влияние гармонического веса на Group Score YuFeng
Влияние низкого балла на русском датасете на итоговую оценку группы YuFeng.

Аномалия HaloGuard и поведение Qwen-8B

У моделей HaloGuard наблюдается противоположная динамика: версия 4B (#6 место, скор 0.727) оказалась лучше 0.8B (#12 место, скор 0.708). При этом HaloGuard-4B показала наивысшую стабильность: значение min_group составило 0.509, то есть у нее нет ни одного серьезного провала.

Анализ сплитов OR-Bench для Sing-Guard 2B
Разброс оценок Sing-Guard 2B между сплитами toxic и hard 1k в OR-Bench.

Показательный момент: по метрике F1 модель Halo-4B набирает всего 0.74 (что соответствует 14-му месту при обычной сортировке). Но в лидерборде GuardRate она находится на 6-й строчке благодаря отсутствию слабых мест. Модель Qwen-8B, наоборот, имеет рекордный F1 во всем лидерборде (0.834), но из-за просадки в одной из групп (худшая оценка — 0.108) занимает лишь 7-е место.

Сравнение Llama-Guard 3-8B и Llama-Guard 4-12B
Падение рейтинга Llama-Guard 4-12B по сравнению с Llama-Guard 3-8B.

Слепота лидера YuFeng на русскоязычном контенте

Победитель общего рейтинга — YuFeng-XGuard-Reason-8B — показал катастрофически низкий результат на русскоязычных токсичных ответах: датасет RTP-LX (RU, response) дал оценку всего 0.051. У Qwen-8B этот показатель еще ниже — 0.031. Только у моделей HaloGuard этот результат составил приемлемые 0.53.

Сравнение скорости инференса и интегральной оценки моделей
Соотношение задержки (latency p95) и итогового интегрального балла лидеров.

Внутри группы гармоническое среднее превращает такую локальную ошибку в провал: при оценке русскоязычных запросов на уровне ~0.87 низкий показатель ответов (0.05) обрушивает Group Score до 0.16, что критически бьет по интегральному баллу.

Анализ систем с нулевыми баллами в группах
Влияние нулевого показателя в одной группе на вылет модели в конец таблицы.

Работа гармонического среднего на датасетах OR-Bench

На примере Sing-Guard-2B отлично видно влияние гармоники. В сплите OR-Bench (toxic) модель набрала ~0.99, а в OR-Bench (hard 1k) — всего 0.25. Простая средняя арифметическая дала бы 0.62, однако гармонический Group Score равен всего 0.39. Математика жестко наказывает модель за наименьший результат.

Версия и размер не гарантируют качество: пример Llama-Guard

Модель Llama-Guard-4-12B (#20, скор 0.631) уступила предшественнице Llama-Guard-3-8B (#17, скор 0.663). Аналогичная ситуация зафиксирована у ShieldGemma: версия 9B оказалась ниже версии 2B из-за просадок в Aya Red Teaming, RTP-LX и HarmBench. Увеличение числа параметров не гарантирует ровного прохождения тестов безопасности.

Сравнительная таблица профилей топовых моделей ИИ
Сравнительный профиль специализации YuFeng, Sing-2B, HiveTrace, Halo-4B и Qwen-8B.

Скорость против точности: HiveTrace 0.6B

Для боевого применения задержка ответа критична. Модель HiveTraceGuard-Pro 0.6B заняла 3-е место с интегральным скором 0.743 при задержке p95 всего ~29 мс. Компактная YuFeng-0.6B расположилась на 9-м месте при задержке 25 мс. В то же время Halo-4B (6-е место) отрабатывает за ~393 мс, а Nemotron-Guard-8B — за ~398 мс. Для большинства продакшен-систем легкая модель с задержкой 29 мс будет предпочтительнее тяжелого аналога, работающего в 13 раз медленнее.

Итоговая таблица лидеров GuardRate Leaderboard
Общий вид лидерборда GuardRate для топ-15 guardrail-моделей ИИ.

Ловушка узкой специализации

Наличие нулевой оценки в любой из 19 групп обнуляет шансы на высокое место. У классификатора gliner-guard-uniencoder метрика F1 достигает 0.73, но Integral Score составляет лишь 0.26 из-за нулевого значения в XSafety. Модель Octavio prompt-injection-detection продемонстрировала Integral Score = 0, так как полностью провалила распознавание safe-примеров (FNR=0, FPR=1). Геометрическое среднее моментально выявляет узкоспециализированные или деградировавшие классификаторы.

GuardRate: архитектура, метрики и инсайты из аудита моделей защиты ИИ

Сравнительный профиль топа моделей

Сравнение ключевых участников рейтинга указывает на явную специализацию архитектур:

GuardRate: архитектура, метрики и инсайты из аудита моделей защиты ИИ
  • HaloGuard-4B: сильна в RTP-LX, но уязвима к prompt injection.
  • Qwen-8B: отличные результаты в CSRT и SimpleSafety, но недееспособна на RTP-LX.
  • YuFeng-8B: лидирует в OR-Bench, но проседает на русскоязычных текстах.
  • Sing-Guard 2B: сбалансирована по большинству проверок, за исключением OR-Bench.

Итоги и дальнейшие шаги проекта

Проведенный аудит позволяет сделать главные практические выводы: не следует слепо доверять числу параметров ИИ-модели; высокий F1 не гарантирует стабильности; при выборе решения важно проверять узкопрофильные и локализованные датасеты; скорость инференса должна оцениваться наравне с метриками защиты.

Публичный веб-интерфейс GuardRate доступен на платформе Hugging Face Space, где можно самостоятельно изучить профиль каждой из 37 моделей. Разработчики open-source решений могут прислать ссылку на репозиторий и Dockerfile для включения своей модели в тестовый прогон.

В четвертом квартале 2026 года планируется открытие исходного кода CLI-инструментария и запуск API для регрессионного тестирования моделей защиты ИИ. Подать заявку на аудит модели можно по адресу: guardratetools@gmail.com.

Источник: habr.com

01.