main.py 621 B

1234567891011121314151617181920212223
  1. from fastapi import FastAPI
  2. from contextlib import asynccontextmanager
  3. from .core.model_loader import load_models, unload_models
  4. from app.api.card_inference import router as card_inference_router
  5. import os
  6. from .core.config import settings
  7. @asynccontextmanager
  8. async def lifespan(main_app: FastAPI):
  9. print("--- 应用启动 ---")
  10. os.makedirs(settings.TEMP_WORK_DIR, exist_ok=True)
  11. load_models()
  12. yield
  13. print("--- 应用关闭 ---")
  14. unload_models()
  15. app = FastAPI(title="卡片框和缺陷检测服务", lifespan=lifespan)
  16. app.include_router(card_inference_router, prefix=settings.API_prefix)