3c03777b979f85fd3f5f03261a31fdc2b77f1120
智能算法展示平台
智能算法展示平台是一个面向客户的算法能力可视化呈现系统,同时兼顾内部算法管理。平台通过「仿真输入 - 一键调用 - 效果可视化」的核心链路,让客户快速感知算法价值,同时为内部团队提供算法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。
快速启动
# 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
部署
项目支持多种部署方式:
- Docker Compose 部署:适用于生产环境
- 本地开发部署:适用于开发和测试
- 云平台部署:可部署到各种云平台
详细部署说明请参阅 RUNNING.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。
SDK和工具
Python SDK
pip install algorithm-showcase-sdk
JavaScript SDK
npm install @algorithm-showcase/sdk
命令行工具
pip install algorithm-showcase-cli
测试
项目包含完整的测试套件:
# 运行所有测试
python tests/run_tests.py --all
# 运行单元测试
python tests/run_tests.py --unit
# 运行集成测试
python tests/run_tests.py --integration
故障排除
如果遇到问题,请参考 TROUBLESHOOTING.md 文档。
许可证
[根据需要添加许可证信息]
联系方式
[根据需要添加联系方式]
Description
Languages
Python
98.6%
Vue
0.8%
Cython
0.2%
C
0.1%