123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- # Please don't modify this file as your changes might be overwritten with
- # the next update.
- #
- # You can modify '$LOCAL_CONFDIR/rspamd.conf.local.override' to redefine
- # parameters defined on the top level
- #
- # You can modify '$LOCAL_CONFDIR/rspamd.conf.local' to add
- # parameters defined on the top level
- #
- # For specific modules or configuration you can also modify
- # '$LOCAL_CONFDIR/local.d/file.conf' - to add your options or rewrite defaults
- # '$LOCAL_CONFDIR/override.d/file.conf' - to override the defaults
- #
- # See https://rspamd.com/doc/tutorials/writing_rules.html for details
-
- # Rspamd statistic setup
- # Pre-built files could be loaded from:
- # http://rspamd.com/rspamd_statistics/bayes.spam.sqlite
- # - and -
- # http://rspamd.com/rspamd_statistics/bayes.ham.sqlite
-
- classifier "bayes" {
- tokenizer {
- name = "osb";
- }
- cache {
- path = "${DBDIR}/learn_cache.sqlite";
- }
- min_tokens = 11;
- backend = "sqlite3";
- languages_enabled = true;
- min_learns = 200;
-
- statfile {
- symbol = "BAYES_HAM";
- path = "${DBDIR}/bayes.ham.sqlite";
- spam = false;
- }
- statfile {
- symbol = "BAYES_SPAM";
- path = "${DBDIR}/bayes.spam.sqlite";
- spam = true;
- }
- learn_condition =<<EOD
- return function(task, is_spam, is_unlearn)
- local learn_type = task:get_request_header('Learn-Type')
-
- if not (learn_type and tostring(learn_type) == 'bulk') then
- local prob = task:get_mempool():get_variable('bayes_prob', 'double')
-
- if prob then
- local in_class = false
- local cl
- if is_spam then
- cl = 'spam'
- in_class = prob >= 0.95
- else
- cl = 'ham'
- in_class = prob <= 0.05
- end
-
- if in_class then
- return false,string.format('already in class %s; probability %.2f%%',
- cl, math.abs((prob - 0.5) * 200.0))
- end
- end
- end
-
- return true
- end
- EOD
-
- .include(try=true; priority=1) "$LOCAL_CONFDIR/local.d/classifier-bayes.conf"
- .include(try=true; priority=10) "$LOCAL_CONFDIR/override.d/classifier-bayes.conf"
- }
-
- .include(try=true; priority=1) "$LOCAL_CONFDIR/local.d/statistic.conf"
- .include(try=true; priority=10) "$LOCAL_CONFDIR/override.d/statistic.conf"
|