← Все статьи
2026-05-20 04:02 · 🌐 СНГ (tech/AI)

GLiGuard: один энкодер вместо стека LLM-гардрейлов — 54 запроса в секунду

В агентном LLM-приложении на каждый запрос пользователя висит до 20 forward-ов: safety, PII, toxicity, prompt injection — у каждого своя модель и свой деплой. GLiNER Guard закрывает весь этот стек одним энкодером за один pass.

GLiGuard: один энкодер вместо стека LLM-гардрейлов — 54 запроса в секунду

В LLM-продакшене safety-стек давно перестал быть одной моделью. Safety moderation, PII detection, prompt injection detector, toxicity classifier — каждый живёт в отдельном сервисе, тянет отдельный GPU, требует отдельного деплоя. В агентном приложении это легко превращается в 15–20 forward-ов на один пользовательский запрос. GLiNER Guard (GLiGuard) — энкодер, который закрывает всё это за один pass: safety, PII, adversarial detection, intent и tone classification одновременно.

Контекст

GLiGuard построен на базе GLiNER 2 — семейства энкодерных моделей со schema-driven подходом: передаёшь текст и список лейблов с опциональными описаниями, модель скорит через zero-shot без переобучения. Ключевое отличие от авторегрессионных гардрейлов (Llama-Guard, ShieldGemma, WildGuard, GPT-OSS-SafeGuard) — энкодеры не декодируют токен за токеном. Это принципиально меняет скорость.

У GLiGuard три варианта. Лёгкие модели на базе mmBERT-small — мультиязычный ModernBERT с поддержкой более 1800 языков: маленькие и быстрые из коробки. Omni-вариант с бэкбоном mDeBERTa даёт лучшую zero-shot генерализацию и лучше переносится на нестандартные задачи — классификацию интентов, бизнес-политик. Bi-encoder вариант энкодит лейблы независимо от текста и кэширует их эмбеддинги — платишь за энкодинг лейблов один раз, переиспользуешь на каждый запрос.

Проблема, которую решает GLiGuard, хорошо знакома всем, кто выкатывал LLM в продакшен: каждое новое требование безопасности — новая модель. Moderation промахивается на edge-кейсах — добавляешь harm classifier. На prompt injection не обучена — добавляешь PromptGuard. PII — отдельный NER-стек. В итоге зоопарк: у каждой модели свои лейблы, свои пороги, своя частота обновления.

Аналитика

Главный аргумент GLiGuard — не академический бенчмарк, а инженерная арифметика. WildGuard выдаёт 1.3 запроса в секунду на GPU — потолок авторегрессионного декодинга. GLiGuard в bi-encoder варианте — 54 запроса в секунду на том же железе. Разрыв в 40 раз при близком качестве на ряде задач. Для высоконагруженных систем это не оптимизация — другой порядок экономики.

По качеству картина неоднородная. На агрегированных safety-бенчмарках Aegis 2.0, StrongReject и PolyGuard GLiGuard Omni набирает 76.9 F1avg — лучший результат среди энкодерных моделей, обходит Llama-Guard 3 на 8B. На StrongReject отдельно — 99.7 F1 у Omni, близко к SOTA. Топовые reasoning-модели (YuFeng-XGuard 8B, GPT-OSS-SafeGuard 20B) впереди, но они в другой весовой категории по скорости и стоимости.

По PII история раздваивается. На англоязычном PII-бенчмарке специализированные модели выигрывают — разрыв до SOTA около 8% F2. Но на мультиязычном OpenPII (23 языка) GLiGuard Omni выходит на первое место с результатом 0.930, опережая NVIDIA gliner-PII (0.918) и OpenMed-PII (0.907). Для продуктов с аудиторией СНГ — прямое попадание. Вывод: «специализированные PII-модели всегда лучше» — утверждение, которое зависит от того, на каком языке у вас продакшн-трафик.

Кейсы применения в бизнесе

B2B-SaaS стартап с агентным пайплайном. У вас 5–7 нод в агентном графе, каждая проверяет пользовательский ввод и вывод LLM. Деплоить авторегрессионный гардрейл на каждую ноду — бюджетная катастрофа. GLiGuard ставится как единый сервис: одна модель, один формат лейблов, schema меняется без переобучения. С 20 forward-ов падаешь до 4–6, расходы на инференс сокращаются кратно.

Корпорация с legacy-стеком и compliance-требованиями. Уже есть Presidio для PII, Llama-Guard для safety — и команда DevOps, уставшая поддерживать зоопарк. Сценарий: GLiGuard встаёт первой ступенью каскада. Уверенные случаи закрывает сам, пограничные эскалирует на тяжёлую модель. Нагрузка на дорогой inference падает без потери качества на edge-кейсах.

SMB или локальный продукт для рынка КР/СНГ. Русский, казахский, кыргызский — мультиязычная база mmBERT-small поддерживает их из коробки. При этом модель достаточно лёгкая, чтобы работать без дорогого GPU. Для стартапа с одним backend-разработчиком это реальный вариант поставить safety-слой без найма отдельного ML-инженера.

Кейсы в личной жизни

Разработчик, строящий собственный LLM-инструмент. Добавить safety-фильтр в личный чат-бот обычно означало либо API стороннего сервиса, либо тяжёлую модель. GLiGuard ставится локально через pip install "gliner2[local]", работает на CPU. Пять строк кода — и у тебя классификация safety плюс PII extraction за один вызов.

Контент-мейкер или фрилансер, принимающий пользовательский контент. Комментарии, заявки, описания — можно быстро прогнать через GLiGuard для автоматической модерации. Schema настраивается под любую тематику без переобучения: добавляешь лейблы с описаниями под свой кейс и меняешь политику в любой момент.

Студент или исследователь в NLP. GLiGuard — удобная точка входа для экспериментов с zero-shot классификацией. Schema-driven интерфейс позволяет тестировать разные политики модерации и строить кастомные классификаторы без разметки данных. Модели доступны на HuggingFace бесплатно.

Как применить сегодня

  • Установить: pip install "gliner2[local]" — работает на CPU, без GPU-инфраструктуры
  • Загрузить hivetrace/gliner-guard-omni для баланса качества и скорости; small-вариант на mmBERT — для лёгкого деплоя на слабом железе
  • Определить схему под свой домен через .create_schema(): добавить лейблы для intent, safety, PII с описаниями на русском — работает zero-shot, переобучение не нужно
  • Протестировать каскадную архитектуру: GLiGuard первой ступенью, низкий score — эскалация на более сильную модель (Llama-Guard, XGuard)
  • Для фиксированной схемы переключиться на bi-encoder вариант: лейблы энкодируются один раз и кэшируются, throughput растёт без потери качества
← Все статьи