Открытый код 🇷🇺 21.07.2026 14:05

Разработан легковесный Guardrails для русского языка с нуля

LiteLLMLiteLLM
Автор создал lite-guardrails — быстрый и легковесный инструмент для фильтрации персональных данных (PII), небезопасного контента (NSFW) и нерелевантных запросов под русский язык. В основе лежат классические методы (регулярные выражения, алгоритм Ахо-Корасик, словари), что обеспечивает скорость менее 0.1 мс на текст на CPU, но уступает по качеству нейросетевым аналогам.
Разработчик Максим (автор Telegram-канала «Максим Максимов // IT, AI») представил lite-guardrails — легковесную систему для защиты других систем от нежелательных данных. Guardrails ориентирован на русский язык и состоит из трёх модулей: PII (обнаружение персональных данных — номера телефонов, email, URL, ИНН, паспорта, СНИЛС, банковские карты, IP; с функцией анонимизации и деанонимизации, используя Redis для хранения), NSFW (поиск русского мата по словарю с алгоритмом Ахо-Корасик) и Relevant (фильтр смолтока и мусора по покрытию букв шаблонами). Для достижения скорости отказались от моделей вроде BERT и LLM — используются регулярные выражения, контрольные суммы и словари. Модуль PII на бенчмарке показал высокую точность (Precision), но низкую полноту (Recall) на искажённых данных; NSFW-детектор уступает семантическим моделям. На CPU lite-guardrails обрабатывает текст менее чем за 0.1 мс, тогда как BERT-модель (piiranha) занимает 186 мс, GLiNER — 226 мс. API реализован на FastAPI со слоистой архитектурой, поддерживает пакетную обработку и воркеры uvicorn для параллелизации. Для конфигурации и логирования используется PostgreSQL. Предусмотрена интеграция с LiteLLM через кастомный класс. Автор отмечает, что решение подходит при отсутствии GPU и требованиях к минимальной задержке.
Сокращения
PII = Personally Identifiable Information — Персональные данные
NSFW = Not Safe For Work — Небезопасный контент
CPU = Central Processing Unit — Центральный процессор
API = Application Programming Interface — Интерфейс программирования приложений
BERT = Bidirectional Encoder Representations from Transformers — Двунаправленные кодировщики от Transformer
LLM = Large Language Model — Большая языковая модель
NER = Named Entity Recognition — Распознавание именованных сущностей
Источник: Habr — хаб NLP — оригинал

Наши прошлые публикации по теме

Есть свежие новости