# 智能算法展示平台

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

## 许可证

[根据需要添加许可证信息]

## 联系方式

[根据需要添加联系方式]