Разработчик построил локальный спам-фильтр на модели ruBert-base-antispam без VPN

На Habr описали, как локальная модель ruBert-base-antispam помогает добить спам, который проходит через фильтры Яндекса, Mail и SpamAssassin. Модель на 177 миллионов параметров занимает около 550 МБ памяти и отвечает за 100-200 миллисекунд, отсекая псевдо-спам вроде приглашений на конференции и кредитных рассылок.

AI-обработка оригинала Habr AI; редакция Hamidun News
Разработчик построил локальный спам-фильтр на модели ruBert-base-antispam без VPN
Источник: Habr AI. Коллаж: Hamidun News.
Слушать статью
Паспорт материала и цифры
ПараметрДанные
ПервоисточникHabr AI ↗
Главный редактор
Ключевой факт #1Модель — ruBert-base-antispam с HuggingFace, файн-тюн DeepPavlov/rubert-base-cased-conversational
Ключевой факт #2177 миллионов параметров, 12 слоёв трансформера, hidden size 768
Ключевой факт #3Лимит на вход — 512 токенов

Разработчик описал на Habr, как построил многоуровневую систему фильтрации спама на почте без VPN, добавив в неё локальную модель ruBert-base-antispam с HuggingFace — файн-тюн DeepPavlov/rubert-base-cased-conversational на 177 миллионов параметров, которому хватает около 550 МБ оперативной памяти.

Как устроена многоуровневая фильтрация

Реклама у автора блокируется через собственный DNS-сервер и локальные CSS-фильтры, а вот с почтовым спамом пришлось повозиться отдельно. Схема выстроена в несколько последовательных ступеней: первыми письма проверяют встроенные фильтры Яндекса и Mail — часть спама они отсеивают ещё до пересылки на другой ящик. То, что проходит через них, попадает на собственный сервер автора, где стоит SpamAssassin и ловит ещё часть мусора.

После двух уровней часть писем всё равно просачивается и доезжает до Gmail: что-то автоматически оседает в папке «Спам», а что-то попадает во входящие с раздражающим уведомлением. Автор хотел, чтобы со временем в папках не копился мусор, который приходится разгребать вручную — а спамеры, по его словам, тоже не сидят без дела и постоянно обновляют приёмы обхода фильтров.

Почему стандартных фильтров не хватало

Особую проблему создавали письма, которые формально не являются нарушением: приглашения на конференции, партнёрские предложения, кредитные рассылки. Байесовский фильтр такие сообщения ловит плохо, потому что в них нет явных признаков классического спама — только назойливость и низкая ценность для получателя. Именно эту серую зону между «точно спам» и «точно не спам» три предыдущих уровня фильтрации закрыть не смогли, и понадобился отдельный инструмент, способный оценивать смысл письма, а не только формальные признаки рассылки.

  • Модель — ruBert-base-antispam с HuggingFace, файн-тюн DeepPavlov/rubert-base-cased-conversational
  • 177 миллионов параметров, 12 слоёв трансформера, hidden size 768
  • Лимит на вход — 512 токенов
  • Потребление памяти — около 550 МБ, ответ занимает 100-200 миллисекунд
  • Бинарный классификатор: на выходе только 0 или 1, без промптов и reasoning

Какую модель выбрал автор

Локальная BERT-модель закрыла сразу обе проблемы — и накопление полу-спама, и нежелание зависеть от платных облачных API. ruBert-base-antispam — это бинарный классификатор: на входе текст письма, на выходе 0 или 1, никаких промптов и рассуждений, как у больших языковых моделей. Такая простота архитектуры и даёт скорость ответа в 100-200 миллисекунд при памяти около 550 МБ — модель можно держать постоянно запущенной на обычном домашнем сервере, не заботясь о лишней нагрузке на систему.

Ограничение в 512 токенов на входе для задачи фильтрации спама не критично: письму не нужно анализировать целиком, достаточно первых абзацев, чтобы понять его характер. При этом базовая модель DeepPavlov/rubert-base-cased-conversational, на которой построен файн-тюн, изначально обучалась на разговорном русском языке — это должно помогать точнее отличать живую переписку от рекламных и полурекламных рассылок.

Что это значит

Кейс показывает, что для узких прикладных задач вроде фильтрации спама не обязательны большие облачные LLM: небольшая локальная BERT-модель на 177 миллионов параметров справляется быстрее и дешевле, работая полностью offline и без VPN.

Частые вопросы

Какую модель использует автор для фильтрации спама?

Это ruBert-base-antispam с HuggingFace — файн-тюн модели DeepPavlov/rubert-base-cased-conversational, 177 миллионов параметров, 12 слоёв трансформера и hidden size 768.

Сколько ресурсов требует такая локальная модель?

Модели хватает около 550 МБ оперативной памяти, а ответ на один текст занимает 100-200 миллисекунд; максимальная длина входа ограничена 512 токенами.

Сюжет

Вопросы и ответы по материалу

Какую модель использует автор для фильтрации спама?

Это ruBert-base-antispam с HuggingFace — файн-тюн модели DeepPavlov/rubert-base-cased-conversational, 177 миллионов параметров, 12 слоёв трансформера и hidden size 768.

Сколько ресурсов требует такая локальная модель?

Модели хватает около 550 МБ оперативной памяти, а ответ на один текст занимает 100-200 миллисекунд; максимальная длина входа ограничена 512 токенами.

Что известно по теме: как устроена многоуровневая фильтрация?

Реклама у автора блокируется через собственный DNS-сервер и локальные CSS-фильтры, а вот с почтовым спамом пришлось повозиться отдельно. Схема выстроена в несколько последовательных ступеней: первыми письма проверяют встроенные фильтры Яндекса и Mail — часть спама они отсеивают ещё до пересылки на другой ящик. То, что проходит через них, попадает на собственный сервер автора, где стоит SpamAssassin и ловит ещё часть мусора. После двух уровней часть писем всё равно просачивается и доезжает до Gmail: что-то автоматически оседает в папке «Спам», а что-то попадает во входящие с

ЖХ
Жемал Хамидун — CPO Alpina Digital, продакт-менеджер AlpinaGPT. Делает AI-продукты с 2019 года. Hamidun News — pet project, который вырос в production-агрегатор с 6000+ читателей.
✦ Практика AI-разработки

Соберите и запустите AI-продукт без классического кодинга

Практический интенсив Жемала Хамидуна по вайб-кодингу в Claude Code и Cursor на hamidun.com/vibecoding: от идеи и архитектуры до рабочего продакшн-сервиса, ботов и пайплайнов.

Программа интенсива →Платформа Vibe Academy
Что вы думаете?
Загружаем комментарии…