# smart-data-platform **Repository Path**: rain_yang/smart-data-platform ## Basic Information - **Project Name**: smart-data-platform - **Description**: 基于 **Python (FastAPI) + Vue3** 的智能测试数据生成平台。通过 LLM 自动分析业务链路、智能构造接口测试数据。 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2026-09-23 - **Last Updated**: 2026-09-23 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 智能造数平台 (Smart Data Platform) 基于 **Python (FastAPI) + Vue3** 的智能测试数据生成平台。通过 LLM 自动分析业务链路、智能构造接口测试数据。 ## 界面预览 ![智能造数平台 (Smart Data Platform)](./screenshot.png) ## 功能 1. **接口管理** —— 手动录入接口,或从 Swagger / OpenAPI(2.0 & 3.x,JSON/YAML,URL 或粘贴内容)批量导入。 2. **业务链路分析** —— 输入代码仓库路径,自动扫描路由注解(Spring / Flask / FastAPI / Express 等),用 LLM 归纳出核心业务调用链路并按业务保存。 3. **智能造数** —— 选择环境地址 + 接口或业务场景,自动引入相关 Skill,调用 LLM 构造符合字段约束与业务语义的数据。 4. **Skill 管理** —— 上传 `.md` 或 `.zip` 形式的 Skill 知识包,造数时勾选后自动注入到模型上下文。 5. **造数记录** —— 查看每次构造的数据,支持「采纳」或「删除」。 ## 技术栈 - 后端:FastAPI · SQLAlchemy 2.0 · SQLite · OpenAI 兼容 API - 前端:Vue3 · Vite · Element Plus · Pinia · Vue Router ## 目录结构 ``` smart-data-platform/ ├── backend/ │ ├── main.py # FastAPI 入口 │ ├── config.py # 配置(环境变量) │ ├── database.py # DB 引擎/会话 │ ├── models.py # ORM 模型 │ ├── schemas.py # Pydantic schema │ ├── routers/ # endpoints / chains / skills / generate 路由 │ └── services/ # swagger 解析 / 仓库扫描 / LLM 封装 └── frontend/ └── src/ ├── views/ # Endpoints/Chains/Skills/Generate/Records 五大页面 ├── api.js # axios 封装 └── router.js ``` ## 快速开始 ### 后端 ```bash cd backend python3 -m venv .venv && source .venv/bin/activate pip install -r requirements.txt cp .env.example .env # 填入 OPENAI_API_KEY / OPENAI_BASE_URL / OPENAI_MODEL uvicorn main:app --reload # http://localhost:8000 (API 文档 /docs) ``` 或直接运行 `./start-backend.sh`。 ### 前端 ```bash cd frontend npm install npm run dev # http://localhost:5173 ``` 或直接运行 `./start-frontend.sh`。前端通过 Vite 代理把 `/api` 转发到后端 `:8000`。 ## 配置说明(backend/.env) | 变量 | 说明 | |------|------| | `OPENAI_API_KEY` | LLM 密钥 | | `OPENAI_BASE_URL` | OpenAI 兼容地址(可对接本地/国产模型) | | `OPENAI_MODEL` | 模型名,如 gpt-4o | | `DATABASE_URL` | 默认 SQLite,可换 Postgres/MySQL | | `SKILLS_DIR` | Skill 文件存储目录 | ## API 概览 - `GET/POST/PUT/DELETE /api/endpoints` · `POST /api/endpoints/import/swagger` - `GET/POST/DELETE /api/chains` · `POST /api/chains/analyze` - `GET /api/skills` · `POST /api/skills/upload` · `PUT/DELETE /api/skills/{id}` - `POST /api/generate` - `GET /api/records` · `POST /api/records/{id}/adopt` · `DELETE /api/records/{id}` ## 说明 - 业务链路分析的"项目地址"指**后端可访问到的代码仓库绝对路径**(本机或服务器上)。 - 智能造数与链路分析依赖 LLM,请先在 `.env` 配置好可用的模型。