2.5 KiB
2.5 KiB
基于朴素贝叶斯的垃圾信息识别小程序(社区交互版)
本项目实现了“发布-检测-拦截-申诉-人工复核-模型迭代”闭环,适配社区文本发布场景。
功能总览
用户端
- 用户注册、登录、个人信息维护
- 文本发布(公共 / 私有 / 用户私信)
- 实时识别反馈(发布成功或垃圾信息拦截警告)
- 个人发布历史记录查看
- 被拦截信息在线申诉
- 私信收件箱查看(仅展示已通过检测的私信)
- 批量文本检测
管理员端
- 用户信息编辑、删除、导入
- 拦截信息人工复核(确认垃圾 / 误判放行)
- 申诉处理(通过 / 驳回)
- 垃圾信息历史查看与风险词分析
- 检测阈值动态调节
- 训练样本编辑、导入、启停与模型重训
技术架构
- 前端:微信小程序原生框架(WXML/WXSS/JS)
- 后端:Flask + SQLAlchemy + JWT + RESTful API
- 模型:TF-IDF(字符 1-2gram)+ MultinomialNB(朴素贝叶斯)
- 数据库:MySQL
关键目录
backend/
app/
ml/naive_bayes_classifier.py
routes/
auth_routes.py
user_routes.py
spam_routes.py
content_routes.py
admin_routes.py
models.py
seed/spam_samples_seed.json
init_db.py
train_model.py
run.py
miniprogram/
pages/
detect/ # 文本发布+实时识别反馈
history/ # 个人发布历史+申诉
inbox/ # 私信收件箱
admin-review/ # 复核+申诉处理+阈值调节
admin-dashboard/ # 运营看板
admin-users/
admin-samples/
启动步骤
cd backend
python -m venv .venv
.venv\Scripts\activate
pip install -r requirements.txt
python init_db.py
python run.py
后端地址:http://127.0.0.1:5000/api
小程序端:
- 微信开发者工具导入项目根目录
- 配置
miniprogram/app.js的baseURL - 真机调试改为局域网 IP
核心接口
- 用户:
/api/auth/*、/api/user/* - 发布:
POST /api/content/publish - 历史:
GET /api/content/posts/history - 私信收件箱:
GET /api/content/posts/inbox - 申诉:
POST /api/content/posts/<id>/appeal - 复核:
PUT /api/admin/intercepts/<id>/review - 申诉处理:
PUT /api/admin/appeals/<id>/process - 阈值调节:
GET/PUT /api/admin/detection/threshold - 训练:
POST /api/spam/train
默认管理员
- 用户名:
admin - 密码:
Admin@123456
上线前务必修改默认密码与密钥配置。