wall_docker/app/main.py
Boen_Shi 6a2e046884 feat(api): 添加图像分析功能和相关路由接口
- 新增 analyze、analyze_result、analyze_status 和 health 路由
- 实现图像上传和任务提交功能
- 添加任务状态查询和结果获取接口
- 集成 segformer 和 yolo 模型进行图像检测
- 实现 SAM3 预处理功能用于图像预处理判断
- 添加模型选择配置支持 segformer 和 yolo
- 实现任务队列管理和异步处理机制
- 添加 Dockerfile 用于容器化部署
- 配置环境变量和 gitignore 规则
- 创建数据模型定义 API 响应结构
2026-01-27 11:59:45 +08:00

36 lines
864 B
Python

import os
from dotenv import load_dotenv
from fastapi import FastAPI
from fastapi.staticfiles import StaticFiles
from app.services.worker import Worker
from app.routes.health import router as health
from app.routes.analyze import router as submit_analyze
from app.routes.analyze_status import router as get_task_status
from app.routes.analyze_result import router as get_task_result
load_dotenv()
UPLOAD_DIR = os.getenv("UPLOAD_DIR", "uploads")
MOCK = os.getenv("MOCK", "false")
MODEL = os.getenv("MODEL", "segformer")
PREPROCESS = os.getenv("PREPROCESS", "sam3")
WORKER = Worker()
os.makedirs(UPLOAD_DIR, exist_ok=True)
app = FastAPI()
app.mount("/" + UPLOAD_DIR, StaticFiles(directory=UPLOAD_DIR), name=UPLOAD_DIR)
app.include_router(health)
app.include_router(submit_analyze)
app.include_router(get_task_status)
app.include_router(get_task_result)