Un développeur construit un filtre antispam local avec le modèle ruBert-base-antispam, sans VPN

Un article publié sur Habr explique comment le modèle local ruBert-base-antispam permet d'éliminer le spam qui passe à travers les filtres de Yandex, de Mail et de SpamAssassin. Ce modèle de 177 millions de paramètres occupe environ 550 Mo de mémoire et répond en 100-200 millisecondes. Il écarte le pseudo-spam : invitations à des conférences, campagnes de crédit et autres envois de ce type.

Traité par IA depuis Habr AI ; édité par Hamidun News
Un développeur construit un filtre antispam local avec le modèle ruBert-base-antispam, sans VPN
Source : Habr AI. Collage: Hamidun News.
Écouter l'article
Fiche synthèse et chiffres clés
ParamètreDonnées
Source primaireHabr AI ↗
Rédacteur en chef
ModèleruBert-base-antispam sur HuggingFace, fine-tuning de DeepPavlov/rubert-base-cased-conversational
Chiffre clé #2177 millions de paramètres, 12 couches de transformer, hidden size 768
Limite d'entrée512 tokens

Sur Habr, un développeur raconte comment il a construit un système de filtrage antispam multicouche pour sa messagerie, sans VPN. Il y a intégré le modèle local ruBert-base-antispam, disponible sur HuggingFace : un fine-tuning de DeepPavlov/rubert-base-cased-conversational de 177 millions de paramètres, qui se contente d'environ 550 Mo de RAM.

Comment fonctionne le filtrage multicouche

L'auteur bloque déjà la publicité grâce à son propre serveur DNS et à des filtres CSS locaux. Le spam par e-mail, en revanche, a exigé un traitement à part. Son dispositif repose sur plusieurs étapes successives. Les filtres intégrés de Yandex et de Mail examinent d'abord les messages et écartent une partie du spam avant même le transfert vers une autre boîte. Ce qui passe arrive ensuite sur le serveur personnel de l'auteur, où SpamAssassin intercepte une autre partie des indésirables.

Malgré ces deux niveaux, certains messages passent encore entre les mailles du filet et atterrissent dans Gmail. Une partie finit automatiquement dans le dossier « Spam », une autre arrive dans la boîte de réception, avec une notification agaçante à la clé. L'auteur voulait éviter que les dossiers se remplissent au fil du temps de messages à trier à la main. D'autant que, selon lui, les spammeurs ne restent pas les bras croisés et renouvellent sans cesse leurs techniques de contournement.

Pourquoi les filtres classiques ne suffisaient pas

Le principal problème venait de messages qui, sur le papier, n'enfreignent aucune règle : invitations à des conférences, propositions de partenariat, campagnes de crédit. Un filtre bayésien les détecte mal, car ils ne présentent aucun signe évident de spam classique. Seuls leur insistance et leur faible intérêt pour le destinataire les caractérisent. Les trois niveaux de filtrage précédents n'ont pas réussi à couvrir cette zone grise entre « spam à coup sûr » et « certainement pas du spam ». Il fallait donc un outil dédié, capable d'évaluer le sens d'un message, et pas seulement les marqueurs formels d'un envoi de masse.

  • Modèle : ruBert-base-antispam sur HuggingFace, fine-tuning de DeepPavlov/rubert-base-cased-conversational
  • 177 millions de paramètres, 12 couches de transformer, hidden size 768
  • Limite d'entrée : 512 tokens
  • Consommation mémoire : environ 550 Mo, temps de réponse de 100-200 millisecondes
  • Classifieur binaire : en sortie, uniquement 0 ou 1, sans prompts ni raisonnement

Quel modèle l'auteur a choisi

Le modèle BERT local a réglé deux problèmes d'un coup : l'accumulation de semi-spam et la volonté de ne pas dépendre d'API cloud payantes. ruBert-base-antispam est un classifieur binaire. Il reçoit le texte du message et renvoie 0 ou 1, sans prompts ni raisonnement, contrairement aux grands modèles de langage. Cette architecture simple explique un temps de réponse de 100-200 millisecondes pour environ 550 Mo de mémoire. Le modèle peut ainsi tourner en permanence sur un serveur domestique ordinaire, sans surcharger le système.

La limite de 512 tokens en entrée ne pose pas de problème pour filtrer du spam : inutile d'analyser un message en entier, les premiers paragraphes suffisent pour en cerner la nature. Par ailleurs, le modèle de base DeepPavlov/rubert-base-cased-conversational, sur lequel repose le fine-tuning, a été entraîné à l'origine sur du russe conversationnel. Cela devrait l'aider à mieux distinguer une vraie correspondance des envois publicitaires et semi-publicitaires.

Ce que cela signifie

Ce cas montre que les grands LLM dans le cloud ne sont pas indispensables pour des tâches appliquées étroites comme le filtrage du spam. Un petit modèle BERT local de 177 millions de paramètres s'en charge plus vite et à moindre coût, entièrement hors ligne et sans VPN.

Questions fréquentes

Quel modèle l'auteur utilise-t-il pour filtrer le spam ?

Il s'agit de ruBert-base-antispam, disponible sur HuggingFace : un fine-tuning du modèle DeepPavlov/rubert-base-cased-conversational, avec 177 millions de paramètres, 12 couches de transformer et un hidden size de 768.

De quelles ressources un tel modèle local a-t-il besoin ?

Le modèle se contente d'environ 550 Mo de RAM, et le traitement d'un texte prend 100-200 millisecondes ; la longueur maximale en entrée est limitée à 512 tokens.

Dossier

Questions clés sur cet article

Quel modèle l'auteur utilise-t-il pour filtrer le spam ?

Il s'agit de ruBert-base-antispam, disponible sur HuggingFace : un fine-tuning du modèle DeepPavlov/rubert-base-cased-conversational, avec 177 millions de paramètres, 12 couches de transformer et un hidden size de 768.

De quelles ressources un tel modèle local a-t-il besoin ?

Le modèle se contente d'environ 550 Mo de RAM, et le traitement d'un texte prend 100-200 millisecondes ; la longueur maximale en entrée est limitée à 512 tokens.

Comment fonctionne le filtrage multicouche?

L'auteur bloque déjà la publicité grâce à son propre serveur DNS et à des filtres CSS locaux. Le spam par e-mail, en revanche, a exigé un traitement à part. Son dispositif repose sur plusieurs étapes successives. Les filtres intégrés de Yandex et de Mail examinent d'abord les messages et écartent une partie du spam avant même le transfert vers une autre boîte. Ce qui passe arrive ensuite sur le serveur personnel de l'auteur, où SpamAssassin intercepte une autre partie des indésirables. Malgré ces deux niveaux, certains messages passent encore entre les mailles du filet et a

ZK
Zhemal Khamidun — CPO d'Alpina Digital, product manager d'AlpinaGPT. Conçoit des produits IA depuis 2019. Hamidun News est un projet personnel devenu un agrégateur en production avec plus de 6 000 lecteurs.
✦ Unified AI Workspace · Nomad

Test Frontier LLMs & Autonomous Agents in One Workspace

Run Claude Opus 5.5, GPT-6, Gemini 3.1, and DeepSeek side-by-side in Nomad AI (nomadnet.ai) — unified model routing, deep research, and multimodal workflows under one subscription.

Try Nomad AI →Launch Nomad Agent
Qu'en pensez-vous ?
Chargement des commentaires…