text/.trae/documents/垃圾短信分类系统实施计划.md
fa7656ae0d feat: 重构项目结构并添加垃圾短信分类系统核心功能
- 重构项目目录结构,添加src目录包含data/models/agent/llm模块
- 实现数据预处理、验证和分割功能
- 添加机器学习模型训练和预测功能
- 实现LLM服务集成DeepSeek API
- 构建Agent框架实现工具调用和结果整合
- 添加Streamlit可视化应用
- 更新项目配置和依赖管理
- 删除无用文件和旧实现代码
2026-01-15 12:16:42 +08:00

88 lines
2.9 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 垃圾短信分类系统实施计划
## 项目结构设计
```
├── src/
│ ├── data/
│ │ ├── __init__.py
│ │ ├── preprocess.py # 数据预处理
│ │ └── validation.py # 数据验证
│ ├── models/
│ │ ├── __init__.py
│ │ ├── train.py # 模型训练
│ │ ├── evaluate.py # 模型评估
│ │ └── predict.py # 模型预测
│ ├── agent/
│ │ ├── __init__.py
│ │ ├── tools.py # Agent工具定义
│ │ └── agent.py # Agent实现
│ ├── llm/
│ │ ├── __init__.py
│ │ └── llm_service.py # LLM服务
│ ├── main.py # 主程序入口
│ └── streamlit_app.py # Streamlit可视化应用
├── models/ # 模型保存目录
├── data/ # 数据目录
│ └── spam.csv # 原始数据集
├── .env.example # 环境变量示例
├── .gitignore # Git忽略文件
├── pyproject.toml # 项目配置
└── README.md # 项目说明文档
```
## 实施步骤
### 1. 项目配置更新
- 更新pyproject.toml添加所需依赖
- 更新.gitignore添加必要的忽略规则
- 创建.env.example文件包含API密钥配置
### 2. 数据处理
- 使用Polars完成数据清洗流水线
- 使用Pandera定义数据Schema
- 将英文数据集翻译成中文可选用于LLM解释
### 3. 机器学习模型
- 实现至少2个模型对比
- 基线模型Logistic Regression
- 强模型LightGBM
- 实现模型训练、评估和保存功能
- 确保模型性能达到要求Accuracy ≥ 0.85 或 Macro-F1 ≥ 0.80
### 4. LLM服务
- 集成DeepSeek API
- 实现文本解释和建议生成功能
### 5. Agent实现
- 使用pydantic-ai框架
- 定义至少2个工具
- ML预测工具用于分类短信
- 解释工具:用于生成分类结果的解释和建议
- 实现Agent逻辑串联ML模型和LLM
### 6. 可视化应用
- 使用Streamlit创建交互式界面
- 支持上传短信进行分类
- 显示分类结果和解释
### 7. 文档编写
- 编写README.md包含项目说明、安装步骤、使用方法等
- 按照课程设计要求的模版样式组织文档
## 关键技术点
- 数据清洗:处理缺失值、特殊字符、编码问题
- 特征工程文本向量化TF-IDF
- 模型优化:超参数调优、交叉验证
- LLM集成结构化输出、提示工程
- Agent设计工具调用、结果整合
## 预期成果
- 可复现的机器学习训练流程
- 高性能的垃圾短信分类模型
- 基于LLM的智能解释和建议生成
- 完整的Agent系统串联ML模型和LLM
- 交互式可视化应用
- 符合课程设计要求的项目结构和文档