207 lines
6.7 KiB
Markdown
207 lines
6.7 KiB
Markdown
# 智能算法展示平台
|
||
|
||
智能算法展示平台是一个面向客户的算法能力可视化呈现系统,同时兼顾内部算法管理。平台通过「仿真输入 - 一键调用 - 效果可视化」的核心链路,让客户快速感知算法价值,同时为内部团队提供算法API管理能力。
|
||
|
||
## 项目概述
|
||
|
||
**核心定位:**
|
||
- **对外:** 算法能力展示窗口,适配ML/强化学习/计算机视觉等全类型算法
|
||
- **对内:** 算法API管理台,支持算法API的注册、版本管理、调用监控、权限配置
|
||
|
||
## 架构设计
|
||
|
||
### 技术栈
|
||
|
||
#### 前端技术栈
|
||
- Vue 3 + TypeScript
|
||
- Vite 构建工具
|
||
- Pinia 状态管理
|
||
- Element Plus UI组件库
|
||
- ECharts 数据可视化
|
||
- Three.js 3D可视化
|
||
|
||
#### 后端技术栈
|
||
- FastAPI Web框架
|
||
- PostgreSQL 数据库
|
||
- Redis 缓存
|
||
- RabbitMQ 消息队列
|
||
- JWT 认证
|
||
- MinIO 对象存储
|
||
|
||
#### 部署技术栈
|
||
- Docker 容器化
|
||
- Docker Compose 编排
|
||
- Nginx 反向代理
|
||
|
||
### 系统架构
|
||
|
||
```
|
||
+------------------------+ +------------------------+ +------------------------+
|
||
| | | | | |
|
||
| 前端客户展示层 | | 后端核心服务层 | | 算法API层 |
|
||
| (Vue3 + TypeScript) | | (Python Web Framework) | | (算法封装与执行) |
|
||
| | | | | |
|
||
+------------------------+ +------------------------+ +------------------------+
|
||
| | | | | |
|
||
| 1. 仿真输入获取模块 | | 1. API网关 | | 1. 算法注册 |
|
||
| 2. 算法调用模块 | | 2. 服务管理 | | 2. 版本管理 |
|
||
| 3. 效果展示模块 | | 3. 数据管理 | | 3. 权限配置 |
|
||
| 4. 历史记录模块 | | 4. 监控与日志 | | 4. 算法执行 |
|
||
| | | | | |
|
||
+------------------------+ +------------------------+ +------------------------+
|
||
```
|
||
|
||
## 核心功能
|
||
|
||
### 前端客户展示层
|
||
- **仿真输入获取模块**:接入OpenAI API,支持通过文本描述生成仿真输入数据
|
||
- **算法调用模块**:提供算法目录、一键调用和参数配置功能
|
||
- **效果展示模块**:支持图表、图像对比、数值分析等多种展示方式
|
||
- **历史记录模块**:保存客户的测试历史,方便查看和比较
|
||
|
||
### 后端核心服务层
|
||
- **API网关**:请求路由、认证授权、流量控制
|
||
- **服务管理**:管理算法服务的基本配置和状态
|
||
- **数据管理**:输入数据存储、输出结果存储、元数据管理
|
||
- **监控与日志**:调用监控、日志管理和告警系统
|
||
|
||
### 算法API层
|
||
- **算法注册**:管理算法的基本信息、API规范定义、部署配置
|
||
- **版本管理**:支持算法的多版本管理、版本切换、版本比较
|
||
- **权限配置**:访问控制、密钥管理、审计日志
|
||
|
||
### 开发SDK和工具模块
|
||
- **SDK开发**:提供Python、JavaScript等多种语言的SDK
|
||
- **命令行工具**:支持算法管理、调用测试等功能
|
||
- **API文档**:提供详细的API文档和使用示例
|
||
- **示例代码**:提供丰富的示例代码,便于开发者快速上手
|
||
|
||
## 运行项目
|
||
|
||
详细运行指南请参阅 [RUNNING.md](RUNNING.md)。
|
||
|
||
### 快速启动
|
||
|
||
```bash
|
||
# Docker Compose 方式(推荐)
|
||
cd deploy
|
||
./deploy.sh
|
||
|
||
# 或本地开发模式
|
||
# 后端
|
||
cd backend
|
||
pip install -r requirements.txt
|
||
uvicorn app.main:app --reload
|
||
|
||
# 前端
|
||
cd frontend
|
||
npm install
|
||
npm run dev
|
||
```
|
||
|
||
## 部署
|
||
|
||
项目支持多种部署方式:
|
||
|
||
1. **Docker Compose 部署**:适用于生产环境
|
||
2. **本地开发部署**:适用于开发和测试
|
||
3. **云平台部署**:可部署到各种云平台
|
||
|
||
详细部署说明请参阅 [RUNNING.md](RUNNING.md) 和 [TROUBLESHOOTING.md](TROUBLESHOOTING.md)。
|
||
|
||
## 项目结构
|
||
|
||
```
|
||
algorithm-showcase/
|
||
├── backend/ # 后端服务
|
||
│ ├── app/ # 应用代码
|
||
│ │ ├── main.py # 应用入口
|
||
│ │ ├── gateway.py # API网关
|
||
│ │ ├── services/ # 服务层
|
||
│ │ └── routes/ # 路由定义
|
||
│ ├── requirements.txt # 依赖文件
|
||
│ └── Dockerfile # Docker镜像定义
|
||
├── frontend/ # 前端应用
|
||
│ ├── src/ # 源代码
|
||
│ │ ├── components/ # 组件
|
||
│ │ ├── views/ # 视图
|
||
│ │ ├── stores/ # 状态管理
|
||
│ │ └── utils/ # 工具函数
|
||
│ ├── package.json # 依赖配置
|
||
│ └── Dockerfile # Docker镜像定义
|
||
├── sdk/ # SDK和工具
|
||
│ ├── python/ # Python SDK
|
||
│ ├── javascript/ # JavaScript SDK
|
||
│ └── cli/ # 命令行工具
|
||
├── deploy/ # 部署配置
|
||
│ ├── docker-compose-full.yml # 完整部署配置
|
||
│ ├── nginx.conf # Nginx配置
|
||
│ └── deploy.sh # 部署脚本
|
||
├── tests/ # 测试套件
|
||
│ ├── integration_tests.py # 集成测试
|
||
│ ├── integration_test_config.py # 测试配置
|
||
│ └── run_tests.py # 测试运行脚本
|
||
├── docs/ # 文档
|
||
│ ├── api-reference.md # API参考文档
|
||
│ ├── api-examples.md # API使用示例
|
||
│ └── cli-examples.md # CLI使用示例
|
||
├── requirements-analysis.md # 需求分析
|
||
├── system-design.md # 系统设计
|
||
├── architecture-design.md # 架构设计
|
||
├── RUNNING.md # 运行指南
|
||
├── TROUBLESHOOTING.md # 故障排除指南
|
||
└── FINAL_SUMMARY.md # 项目完成总结
|
||
```
|
||
|
||
## API文档
|
||
|
||
API文档可在运行服务后访问:http://localhost:8000/docs
|
||
|
||
详细API参考文档请参阅 [docs/api-reference.md](docs/api-reference.md)。
|
||
|
||
## SDK和工具
|
||
|
||
### Python SDK
|
||
|
||
```bash
|
||
pip install algorithm-showcase-sdk
|
||
```
|
||
|
||
### JavaScript SDK
|
||
|
||
```bash
|
||
npm install @algorithm-showcase/sdk
|
||
```
|
||
|
||
### 命令行工具
|
||
|
||
```bash
|
||
pip install algorithm-showcase-cli
|
||
```
|
||
|
||
## 测试
|
||
|
||
项目包含完整的测试套件:
|
||
|
||
```bash
|
||
# 运行所有测试
|
||
python tests/run_tests.py --all
|
||
|
||
# 运行单元测试
|
||
python tests/run_tests.py --unit
|
||
|
||
# 运行集成测试
|
||
python tests/run_tests.py --integration
|
||
```
|
||
|
||
## 故障排除
|
||
|
||
如果遇到问题,请参考 [TROUBLESHOOTING.md](TROUBLESHOOTING.md) 文档。
|
||
|
||
## 许可证
|
||
|
||
[根据需要添加许可证信息]
|
||
|
||
## 联系方式
|
||
|
||
[根据需要添加联系方式] |