Desarrollador Construyó un Filtro de Spam Local con Modelo ruBert-base-antispam Sin VPN
En Habr, desarrolladores describieron cómo un modelo ruBert-base-antispam local atrapa spam que escapa de los filtros Yandex, Mail y SpamAssassin. El modelo de 177 millones de parámetros usa alrededor de 550 MB de memoria y responde en 100-200 milisegundos, filtrando pseudo-spam como invitaciones a conferencias y ofertas de crédito.
Procesado por IA desde Habr AI; editado por Hamidun News
Un desarrollador describió en Habr cómo construyó un sistema de filtrado de spam de correo electrónico de múltiples niveles sin VPN, añadiéndole un modelo local ruBert-base-antispam de HuggingFace — un ajuste fino de DeepPavlov/rubert-base-cased-conversational con 177 millones de parámetros, que requiere alrededor de 550 MB de RAM.
Cómo está organizado el filtrado de múltiples niveles
Los anuncios en el sistema del autor se bloquean a través de un servidor DNS personalizado y filtros CSS locales, pero el spam de correo electrónico requirió un manejo separado. El esquema se construye en varias etapas secuenciales: primero los correos electrónicos se verifican mediante filtros integrados de Yandex y Mail — filtran parte del spam antes de que se reenvíe a otro buzón. Lo que pasa a través de ellos llega al propio servidor del autor, donde se encuentra SpamAssassin y captura más basura.
Después de dos niveles, algunos correos electrónicos aún se filtran y llegan a Gmail: algunos se eliminan automáticamente en la carpeta "Spam", mientras que otros llegan a la bandeja de entrada con una notificación molesta. El autor quería evitar que el spam se acumulara en las carpetas con el tiempo, lo que tiene que limpiarse manualmente — y los spammers, según él, no se quedan sin hacer nada y constantemente actualizan sus técnicas de evasión.
Por qué los filtros estándar no eran suficientes
Un problema particular fue causado por correos electrónicos que no son formalmente una violación: invitaciones a conferencias, ofertas de asociación, envíos de tarjetas de crédito. Los filtros bayesianos atrapan tales mensajes mal porque carecen de signos obvios de spam clásico — solo molestia y bajo valor para el destinatario. Fue esta zona gris entre "definitivamente spam" y "definitivamente no spam" que los tres niveles anteriores de filtrado no pudieron cubrir, y se necesitaba una herramienta separada, capaz de evaluar el significado de un correo electrónico, no solo signos formales de un envío.
- Modelo — ruBert-base-antispam de HuggingFace, un ajuste fino de DeepPavlov/rubert-base-cased-conversational
- 177 millones de parámetros, 12 capas de transformador, tamaño oculto 768
- Límite de entrada — 512 tokens
- Consumo de memoria — aproximadamente 550 MB, la respuesta toma 100-200 milisegundos
- Clasificador binario: la salida es solo 0 o 1, sin indicaciones ni razonamiento
Qué modelo eligió el autor
Un modelo BERT local resolvió ambos problemas a la vez — tanto la acumulación de spam como la renuencia a depender de APIs en la nube pagadas. ruBert-base-antispam es un clasificador binario: el texto de un correo electrónico entra, 0 o 1 sale, sin indicaciones ni razonamiento como en modelos de lenguaje grandes. Esta simplicidad de arquitectura da velocidad de respuesta de 100-200 milisegundos con alrededor de 550 MB de memoria — el modelo puede mantenerse constantemente en ejecución en un servidor doméstico ordinario sin preocuparse por carga extra.
El límite de 512 tokens de entrada no es crítico para el filtrado de spam: no necesita analizar todo el correo electrónico, los primeros párrafos son suficientes para entender su carácter. Al mismo tiempo, el modelo base DeepPavlov/rubert-base-cased-conversational, en el que se construye el ajuste fino, fue entrenado originalmente en ruso conversacional — esto debería ayudar a distinguir más con precisión la correspondencia viva de los envíos publicitarios y semi-publicitarios.
Qué significa esto
El caso muestra que para tareas aplicadas estrechas como el filtrado de spam, no son necesarios los grandes LLM en la nube: un pequeño modelo BERT local con 177 millones de parámetros maneja más rápido y más barato, funcionando completamente sin conexión y sin VPN.
Preguntas frecuentes
¿Qué modelo usa el autor para el filtrado de spam?
Es ruBert-base-antispam de HuggingFace — un ajuste fino de DeepPavlov/rubert-base-cased-conversational, 177 millones de parámetros, 12 capas de transformador y tamaño oculto 768.
¿Cuántos recursos requiere tal modelo local?
El modelo necesita alrededor de 550 MB de RAM, y la respuesta a un texto toma 100-200 milisegundos; la longitud máxima de entrada está limitada a 512 tokens.
¿Necesitas IA funcionando dentro de tu empresa — no solo en tu feed de noticias?
Construyo IA en producción para empresas — CRM a medida, herramientas internas, agentes autónomos, automatización de procesos. Tuya, adaptada a tu proceso, sin coste por usuario. Creado por Zhemal Khamidun, CPO de AlpinaGPT (plataforma de IA, 6.000+ usuarios).
Lo esencial de la IA — una vez por semana
Siete historias que de verdad importaron, elegidas a mano. Sin ruido ni notas de prensa.
¡Listo! Revisa tu correo para la confirmación.