Rspamd построен с использованием событийно-ориентированной архитектуры (Event-driven) и изначально рассчитан на применение в высоконагруженных системах, позволяя обрабатывать сотни сообщений в секунду. Правила для выявления признаков спама отличаются высокой гибкостью и в простейшем виде могут содержать регулярные выражения, а в более сложных ситуациях могут оформляться на языке Lua. Расширение функциональности и добавление новых типов проверок реализуется через модули, которые могут создаваться на языках Си и Lua. Например, доступны модули для проверки отправителя с использованием SPF, подтверждения домена отправителя через DKIM, формирования запросов в списки DNSBL. Для упрощения настройки, создания правил и отслеживания статистики предоставляется административный web-интерфейс.
В новой версии:
- Улучшены настройки байесовского классификатора. Размер окна по умолчанию уменьшен с 5 до 2 слов, что позволило добиться повышения производительности и в 4 раза сократить потребление места в хранилище без деградации уровня классификации спама. Для тестирования работы классификатора с разными настройками предложена утилита
«rspamadm classifier_test». - Добавлен модуль GPT, использующий API OpenAI GPT для классификации текста через запрос к большим языковым моделям, таким как GPT-3.5 Turbo и GPT-4o. Точность классификации спама при помощи нового модуля ниже, чем у байесовского классификатора, но его достоинство в том, что он не требует предварительной тренировки и может учитывать контекст в сообщениях, в то время как для эффективной работы байесовского классификатора необходима качественная и сбалансированная тренировка движка. Кроме непосредственного выявления спама в сообщениях модуль GPT может применяться для тренировки байесовского классификатора.
- Реализована возможность совместного использования модулей known_senders и replies для пометки верифицированных отправителей, используя в качестве признака то, что им ранее направлялись ответы.
- По умолчанию отключено динамическое изменение ограничений интенсивности отправки сообщений (dynamic ratelimit), связанных с одним отправителем, получателем или IP-адресом.
Источник: http://www.opennet.ru/opennews/art.shtml?num=61544