# YG_FT 模型微调平台

YG_FT 是面向多用户、多租户和多算力节点的模型训练与推理平台，提供数据集、模型、训练、权重合并、推理、评测、算力节点、项目隔离、权限和审计能力。

## 架构

```text
浏览器 -> Frontend Nginx:16801 -> Backend API:17861
                                      |-> PostgreSQL（元数据、权限、审计、任务状态）
                                      |-> Redis（缓存及任务辅助状态）
                                      |-> MinIO:19000（模型和数据唯一对象源）
                                      |-> Compute API:19100
                                                |-> Compute Agent/GPU/LLaMA-Factory
                                      `-> File Gateway:19101
```

Backend、MinIO 和 Compute 节点可以部署在不同服务器，不依赖跨服务器 Docker 网络，通过 IP、DNS 或负载均衡地址通信。Compute 节点只保存按需准备的本地缓存，MinIO 是模型、数据集、权重、评测报告和训练产物的唯一数据源。

## 目录

| 目录 | 作用 |
| --- | --- |
| `frontend/` | Vue 3、TypeScript、Element Plus 控制台 |
| `backend/app/api/v1/` | 平台 REST API |
| `backend/app/core/` | 配置、认证、权限和日志 |
| `backend/app/db/` | PostgreSQL 访问和初始化 SQL |
| `backend/app/modules/` | 系统、资源、审批、数据处理和存储模块 |
| `backend/app/workers/` | 节点轮询、任务对账和资源同步 |
| `compute/` | Compute API、Agent、GPU 和训练引擎 |
| `docker/` | 应用、MinIO、算力服务部署文件 |
| `docs/` | 架构、权限、部署和测试文档 |

## 端口

| 服务 | 主机端口 | 容器端口 |
| --- | ---: | ---: |
| Frontend | 16801 | 80 |
| Backend API | 17861 | 8000 |
| Redis | 16379 | 6379 |
| MinIO API/Console | 19000/19001 | 9000/9001 |
| Compute API/File Gateway | 19100/19101 | 9100 |

## 启动

```bash
cd frontend && npm ci && npm run build && cd ..
docker build -f docker/app/Dockerfile.backend -t yg-ft-backend-api:latest .
docker build -f docker/app/Dockerfile.frontend -t yg-ft-frontend-runtime:latest .
docker build -f docker/compute/Dockerfile.compute -t yg-ft-compute-api:latest .
cd docker/minio && docker compose up -d
cd ../app && docker compose up -d
cd ../compute && docker compose up -d
```

## 权限与性能

系统使用角色权限、资源 ACL、用户/项目/租户归属联合校验；删除为软删除，关键操作写入审计。模型合并前准备 base model 和 adapter，结果归档 MinIO；推理前按选择节点准备缓存。远程 PostgreSQL 延迟会影响全量列表和看板，页面慢时应检查浏览器 Network、Nginx、Backend 日志、连接池和节点可达性。

详细部署见 `docker/README.md`，测试见 `测试用例.md`，本次快照见 `docs/20260812/`。
