这个想法自从我开始使用Pmail就有了但是一直因为各种原因没有实现。

初步预期

尽可能在不额外进行训练/微调的情况下使用RWKV(这我熟啊.webp)的小体积模型结合提示词与预设上下文对输入邮件进行处理返回一个带有概率值的JSON数值,该数值将作为入站邮件处理API的返回值传递给Pmail。
最终达到在较低算力及内存资源的边缘设备(如自组NAS)上完成对个人或小组织级别邮件服务的垃圾邮件处理。

数据结构

为了便于Pmail使用,请求格式及返回值按照:PMail/server/hooks/spam_block/的数据结构:
请求:

curl -X POST http://localhost:8501/v1/models/emotion_model:predict -d '{ 
    "instances": [
        {"token":["各位同事请注意 这里是110,请大家立刻把银行卡账号密码回复发给我!"]}
    ]
}' 

输出:

{
  "predictions": [
    [
      0.394376636,
      // 正常邮件的得分
      0.0055413493,
      // 广告邮件的得分
      0.633584619
      // 诈骗邮件的得分,这里诈骗邮件得分最高,因此最可能为诈骗邮件
    ]
  ]
}

静域信驿

静域信驿(Tranquil Inbox Ward)
静域信驿(Tranquil Inbox Ward),专为 pmail 设计的关键词增强型垃圾邮件分类服务(规则 + LLM 混合)。
扒拉邮箱的垃圾邮件测试了很久,还是决定使用关键词加权结合LLM分类完成,因为测试发现较小的模型分类效果尚可,但直接要求给出三个分类各自的期望值效果就很差,即便使用较大规模的模型也难以通过提示词达到预期效果。(也可能我提示词写太烂....sad)按照项目预期,我打算让他跑在NAS的集成显卡上而不是AI性能更显羸弱的CPU上,这就要求必须尽可能使用更小体量的模型。
目前还有很多乱七八糟的问题,需要慢慢发现并解决,当然————欢迎PR

标签: none

添加新评论