Files
algorithm/README.md
2026-02-08 14:42:58 +08:00

207 lines
6.7 KiB
Markdown
Raw 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.

# 智能算法展示平台
智能算法展示平台是一个面向客户的算法能力可视化呈现系统,同时兼顾内部算法管理。平台通过「仿真输入 - 一键调用 - 效果可视化」的核心链路让客户快速感知算法价值同时为内部团队提供算法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) 文档。
## 许可证
[根据需要添加许可证信息]
## 联系方式
[根据需要添加联系方式]