Files
YG_FT/backend
wuyongtao 3b9361c237 merge: 合并远程 ft_wyt 分支,解决权限与日志模块冲突
- 冲突解决原则:本地权限治理(require_admin/current_user/资源ACL)与远程 op_log 日志装饰器双向保留
- platform.py: 9 处冲突,@op_log 与管理员校验叠加,避免远程丢失 require_admin 的安全回归
- logging.py: 合并 get_client_ip 与 user_id_var,X-Trace-Id 优先 + ContextVar 卫生处理
- op_log.py: 采纳远程将变量计算上移到函数顶部的结构
- compute_poller.py: 中文日志 + 失败去重限流/断连重置逻辑
- data_process.py: 保留租户归属字段 + biz_logger 成功日志
2026-08-21 09:58:43 +08:00
..
2026-08-03 16:20:21 +08:00
2026-08-21 09:42:03 +08:00

Backend Service

后端工程使用 FastAPI定位为模型微调平台的应用平台服务负责用户中心、多租户、权限隔离、项目、数据集、模型、训练任务、审批、审计和算力平台编排。

目录结构

backend/
  app/
    main.py                  # FastAPI 应用入口
    api/v1/                  # 对前端暴露的 接口路由
    core/                    # 配置、日志、中间件、权限等基础能力
    db/                      # 数据库连接、迁移集成、事务工具
    modules/                 # 业务模块
      auth/
      tenant/
      project/
      model/
      dataset/
      data_process/
      fine_tune/
      eval/
      inference/
      approval/
      audit/
      compute_gateway/
      file_gateway/
      engine_registry/
      retention/
      system/
    schemas/                 # Pydantic 入参/出参模型
    services/                # 跨模块应用服务
    workers/                 # 后台任务入口
  requirements.txt           # 后端第三方依赖
  logs/                      # 本地开发日志目录,生产环境建议挂载到独立日志盘

本地启动

cd backend
python -m venv .venv
.venv\Scripts\activate
pip install -r requirements.txt
uvicorn app.main:app --reload

健康检查:

GET /modelTF/health

日志

日志模块位于 app/core/logging.py,使用说明见 ../docs/backend-logging.md

默认日志文件:

logs/backend-YYYY-MM-DD.log
logs/error-YYYY-MM-DD.log

文件日志为 JSON Lines 格式,单个文件不超过 20MB只保存最近 10 天,错误日志按 ERROR 级别独立拆分,便于 ELK/日志平台采集。