231 lines
7.8 KiB
Markdown
231 lines
7.8 KiB
Markdown
# AI算法模型训练及部署管理平台 — 系统功能说明
|
||
|
||
## 一、系统概述
|
||
|
||
本系统是一套面向 AI 算法模型的**全生命周期管理平台**,覆盖从算法定义、数据集管理、数据标注、模型训练、模型维护到模型发布与效果预测的完整流程,同时集成了组织用户管理、权限控制、定时任务等企业级管理功能。
|
||
|
||
### 技术栈
|
||
|
||
| 层级 | 技术 |
|
||
|------|------|
|
||
| 前端框架 | Vue 3 + TypeScript + Vite |
|
||
| UI 组件库 | Element Plus |
|
||
| 状态管理 | Pinia |
|
||
| 路由 | Vue Router 4 (Hash 模式) |
|
||
| HTTP 通信 | Axios |
|
||
| 图表 | ECharts 5 |
|
||
| 国际化 | vue-i18n 9 |
|
||
| 后端框架 | Django 6 + Django REST Framework |
|
||
| 实时通信 | WebSocket (Channels) |
|
||
| 任务队列 | Celery + Redis |
|
||
|
||
---
|
||
|
||
## 二、功能模块
|
||
|
||
### 1. 首页仪表盘
|
||
|
||
**路由:** `/dashboard`
|
||
|
||
系统首页,展示欢迎信息。预留了算法统计、数据集统计、标注任务统计、模型统计等数据卡片和图表区域。
|
||
|
||
---
|
||
|
||
### 2. 数据集管理
|
||
|
||
**路由:** `/dataset`
|
||
|
||
数据集是训练和标注的基础数据单元,本模块提供数据集的完整管理能力。
|
||
|
||
| 功能 | 说明 |
|
||
|------|------|
|
||
| 数据集查询 | 按数据集编码、名称、类型、算法等条件检索 |
|
||
| 数据集CRUD | 创建、编辑、删除数据集 |
|
||
| 图片预览 | 支持数据集内图片的在线预览 |
|
||
| 图像标注 | 内嵌标注工具(基于 ailabel),支持矩形框、多边形等标注 |
|
||
| 样本管理 | 查看、删除无效样本、删除重复样本、读取样本内容 |
|
||
| 生成数据集图片 | 批量生成数据集图片文件 |
|
||
|
||
---
|
||
|
||
### 3. 数据标注管理
|
||
|
||
#### 3.1 标注任务管理
|
||
|
||
**路由:** `/annotationtask`
|
||
|
||
管理数据集标注任务的分发、执行与审核流程。
|
||
|
||
| 功能 | 说明 |
|
||
|------|------|
|
||
| 任务查询 | 按任务名称、负责人、状态等条件筛选 |
|
||
| 任务CRUD | 创建、编辑、删除标注任务 |
|
||
| 样本查看与合并 | 查看任务关联样本,合并样本内容 |
|
||
| 人员分配 | 将任务分配给标注人员 |
|
||
| 任务提交 | 标注人员提交完成的任务 |
|
||
| 任务审核 | 审核人员审核已提交的标注结果 |
|
||
| 自动标注 | 启动自动标注流程 |
|
||
| 我的任务 | 按"个人任务"和"审核任务"分 Tab 展示 |
|
||
|
||
#### 3.2 标注团队管理
|
||
|
||
**路由:** `/annotationteam`
|
||
|
||
管理标注团队及团队成员。
|
||
|
||
| 功能 | 说明 |
|
||
|------|------|
|
||
| 团队CRUD | 创建、编辑、删除标注团队 |
|
||
| 成员管理 | 添加、编辑、删除团队成员 |
|
||
| 组织关联 | 团队关联组织架构 |
|
||
|
||
---
|
||
|
||
### 4. 模型训练管理
|
||
|
||
**路由:** `/modeltraining`
|
||
|
||
管理算法训练记录的完整流程。
|
||
|
||
| 功能 | 说明 |
|
||
|------|------|
|
||
| 训练记录查询 | 按训练标题、数据集名称、算法名称筛选 |
|
||
| 训练记录CRUD | 创建、编辑、删除训练记录 |
|
||
| 算法选择 | 按算法分类 Tab 选择训练算法 |
|
||
| 参数配置 | 配置算法的输入参数 |
|
||
| 准备训练数据集 | 启动数据预处理 |
|
||
| 启动训练 | 向后台发起训练任务 |
|
||
| 实时监控 | 通过 WebSocket 实时展示训练日志和进度 |
|
||
| 模型归档 | 训练完成后将模型归档 |
|
||
| 训练评估 | 查看训练效果评估和预测效果 |
|
||
| 复制训练记录 | 快速复制已有训练配置 |
|
||
| 关闭训练 | 终止正在进行的训练任务 |
|
||
|
||
---
|
||
|
||
### 5. 算法及模型管理
|
||
|
||
#### 5.1 算法定义
|
||
|
||
**路由:** `/define`
|
||
|
||
定义平台支持的算法及其参数体系。
|
||
|
||
| 功能 | 说明 |
|
||
|------|------|
|
||
| 算法分类管理 | 创建、编辑、删除算法分类 |
|
||
| 算法管理 | 创建、编辑、删除算法 |
|
||
| 输入参数管理 | 管理算法的输入参数定义 |
|
||
| 输出定义管理 | 管理算法的输出格式定义 |
|
||
| 算法引擎查询 | 查看算法关联的执行引擎 |
|
||
| 发布算法模型 | 将算法模型发布到模型库 |
|
||
|
||
#### 5.2 模型维护
|
||
|
||
**路由:** `/maintenance`
|
||
|
||
维护和管理已训练的算法模型。
|
||
|
||
| 功能 | 说明 |
|
||
|------|------|
|
||
| 算法分类树 | 左侧树形展示算法分类层级 |
|
||
| 模型查询 | 按分类查询模型列表 |
|
||
| 模型CRUD | 添加、编辑、删除模型 |
|
||
| 模型文件上传/下载 | 上传和下载模型文件 |
|
||
| 设置默认模型 | 将某个模型设为默认 |
|
||
| 模型预测测试 | 在线测试模型预测效果 |
|
||
|
||
#### 5.3 算法模型库
|
||
|
||
**路由:** `/modelbase`
|
||
|
||
平台级算法模型展示与操作。
|
||
|
||
| 功能 | 说明 |
|
||
|------|------|
|
||
| 分类浏览 | 按算法分类 Tab 浏览模型 |
|
||
| 模型查询 | 搜索和筛选模型 |
|
||
| ONNX 转换 | 将模型转换为 ONNX 格式 |
|
||
| 调用日志 | 查看算法的调用历史记录 |
|
||
| 模型发布 | 发布模型到算法模型库 |
|
||
| 模型评估 | 查看模型评估指标和预测效果 |
|
||
|
||
---
|
||
|
||
### 6. 组织及用户管理
|
||
|
||
**路由:** `/system`
|
||
|
||
管理平台的组织架构和用户。
|
||
|
||
| 功能 | 说明 |
|
||
|------|------|
|
||
| 组织架构树 | 左侧树形展示组织层级 |
|
||
| 组织CRUD | 添加、编辑、删除组织 |
|
||
| 人员管理 | 添加、编辑、删除组织下的人员 |
|
||
| 个人中心 | 当前登录用户修改密码(SM4加密) |
|
||
|
||
---
|
||
|
||
### 7. 系统管理(后台API支持)
|
||
|
||
虽前端菜单中未全部展示,但 API 层已完整对接以下管理功能:
|
||
|
||
| 模块 | 说明 |
|
||
|------|------|
|
||
| 菜单管理 | 系统菜单的增删改查、排序、图标管理 |
|
||
| 角色管理 | 角色创建、权限分配、菜单授权 |
|
||
| 字典管理 | 系统数据字典维护 |
|
||
| 定时任务 | 基于 Quartz 的定时任务配置与管理 |
|
||
| 操作日志 | 系统操作日志查询与导出 |
|
||
| 消息管理 | 系统通知消息的查看与已读标记 |
|
||
| 文件管理 | 文件上传与删除 |
|
||
|
||
---
|
||
|
||
## 三、业务流程
|
||
|
||
```
|
||
算法定义 → 数据集准备 → 数据标注 → 模型训练 → 模型归档 → 模型发布 → 效果预测
|
||
↑ │
|
||
└──────────────── 反馈优化 ←──────────────────────────────┘
|
||
```
|
||
|
||
1. **算法定义**:定义算法分类、算法、输入参数和输出格式
|
||
2. **数据集准备**:上传/创建数据集,标注数据
|
||
3. **数据标注**:分配标注任务,审核标注结果,支持自动标注
|
||
4. **模型训练**:选择算法和数据集,配置参数,启动训练,实时监控
|
||
5. **模型归档**:训练完成后归档模型文件
|
||
6. **模型发布**:将模型发布到模型库,支持 ONNX 转换
|
||
7. **效果预测**:上传测试数据,查看模型预测效果
|
||
|
||
---
|
||
|
||
## 四、安全机制
|
||
|
||
| 机制 | 说明 |
|
||
|------|------|
|
||
| JWT 认证 | 基于 djangorestframework-simplejwt 的 Token 认证 |
|
||
| Token 刷新 | 前端自动使用 refresh_token 刷新过期的 access_token |
|
||
| 密码加密 | 登录密码使用 SM4 国密算法加密传输 |
|
||
| 路由守卫 | Vue Router 导航守卫拦截未登录用户 |
|
||
| 权限控制 | 基于角色的菜单和按钮级权限控制 |
|
||
|
||
---
|
||
|
||
## 五、路由映射表
|
||
|
||
| 菜单名称 | 路由路径 | 视图组件 |
|
||
|---------|---------|---------|
|
||
| 首页 | `/dashboard` | `views/dashboard/index.vue` |
|
||
| 数据集管理 | `/dataset` | `views/dataset/index.vue` |
|
||
| 标注任务管理 | `/annotationtask` | `views/dataannotations/annotationtask/index.vue` |
|
||
| 标注团队管理 | `/annotationteam` | `views/dataannotations/annotationteam/index.vue` |
|
||
| 模型训练管理 | `/modeltraining` | `views/modeltraining/index.vue` |
|
||
| 算法定义 | `/define` | `views/AlgorithmsAndModels/define/index.vue` |
|
||
| 模型维护 | `/maintenance` | `views/AlgorithmsAndModels/maintenance/index.vue` |
|
||
| 算法模型库 | `/modelbase` | `views/AlgorithmsAndModels/modelbase/index.vue` |
|
||
| 组织及用户 | `/system` | `views/system/user/index.vue` |
|
||
| 个人中心 | `/personalCenter` | `views/system/user/personalCenter.vue` |
|
||
| 登录 | `/login` | `views/login/index.vue` |
|