静域信驿(Tranquil Inbox Ward),专为 pmail 设计的AI垃圾邮件分类服务。
过滤效果图:

https://github.com/AXFOX/Tranquil-Inbox-Ward
- 本项目使用本地 Ollama 模型服务进行 LLM 推理,默认模型:mollysama/rwkv-7-g1d:1.5b-nothink
- 对于部署在Nas/HomeServer等具备核显且支持Vulkan的环境,推荐开启Ollama的Vulkan推理以获得预期的最佳体验。
- 如有足够的内存尽可能通过如下方案保持模型驻留内存,减少不必要的读取操作缓解非MLC SSD磨损。
sudo systemctl edit ollama.service
Environment="OLLAMA_VULKAN=1" #开启Vulkan推理
Environment="OLLAMA_KEEP_ALIVE=-1" # 驻留内存- 请先参考 Ollama 官方文档安装 Ollama 并运行服务。
- 下载/拉取模型(示例):
ollama pull mollysama/rwkv-7-g1d:1.5b-nothink- 启动 Ollama 服务(示例):
ollama serve- 默认应用连接地址(可通过~~.env或~~环境变量覆盖):
http://127.0.0.1:11434/api/generate - 项目的正式版将永久弃用项目路径下的.env文件改用config.py以降低复杂度提升可靠性。
export OLLAMA_MODEL="mollysama/rwkv-7-g1d:1.5b-nothink"
export OLLAMA_API_URL="http://127.0.0.1:11434/api/generate"
export SERVER_HOST="0.0.0.0"
export SERVER_PORT="8501"# 开发或调试
python app.py
确保已安装:
- Python 3.8+
- Ollama(用于RWKV模型推理)
- 已拉取模型:
mollysama/rwkv-7-g1d:1.5b-nothink
git clone https://github.com/AXFOX/Tranquil-Inbox-Ward.git
cd Tranquil-Inbox-Ward# 给脚本执行权限
chmod +x deploy-systemd.sh
# 运行部署脚本(需要sudo权限)
sudo ./deploy-systemd.sh# 查看服务状态
sudo systemctl status tranquil-inbox-ward
# 启动服务
sudo systemctl start tranquil-inbox-ward
# 停止服务
sudo systemctl stop tranquil-inbox-ward
# 重启服务
sudo systemctl restart tranquil-inbox-ward
# 查看日志
sudo journalctl -u tranquil-inbox-ward -f- 服务文件:
/etc/systemd/system/tranquil-inbox-ward.service - 安装目录: 当前克隆的目录
- 虚拟环境:
.Tranquil-Inbox-Ward/(项目根目录下相同文件名的隐藏文件) - 日志目录:
/var/log/tranquil-inbox-ward/
- 部署脚本会在当前目录创建Python虚拟环境
- 服务使用当前用户运行,无需创建专用系统用户
- 确保Ollama服务已启动:
systemctl status ollama - 如需修改服务配置,编辑服务文件后运行:
sudo systemctl daemon-reload && sudo systemctl restart tranquil-inbox-ward
项目提供了 api_test.sh 脚本,用于上线前测试API可用性。
用法:
./api_test.sh "测试内容"
./api_test.sh -f filename.txt
./api_test.sh -i (交互模式)
$ ./api_test.sh "今天天气真好"
测试内容: 今天天气真好
API URL: http://localhost:8501/v1/models/emotion_model:predict
----------------------------------------
{
"predictions": [
[
0.9860662453108814,
0.00696687734455927,
0.00696687734455927
]
]
}
- 源代码主文件:
app.py - 已提供systemd部署脚本和模板文件
- 如需额外的容器化部署示例,可在仓库中补充
Dockerfile - =-= So,欢迎PR
感谢 MollySophia 姐姐提供的RWKV小参数模型和Ollama下的RWKV推理实现,该系列模型实测在不经过针对性预训练的情况下通过简单的prompt也能达到良好的分类效果(甚至不用开思考)。 感谢DeepSeek作为必要的信息检索帮助我选择合适的实现方案。 感谢Pmail和伟大的开源与自由软件社区开发者们!