import json import logging from fastapi import APIRouter, BackgroundTasks from app.schemas.super_resolution import SuperResolutionModel from app.service.super_resolution.service import SuperResolution, infer_cancel router = APIRouter() logger = logging.getLogger() @router.post("super_resolution") def super_resolution(request_item: SuperResolutionModel, background_tasks: BackgroundTasks): try: service = SuperResolution(request_item) background_tasks.add_task(service.sr_result) code = 200 message = "access" except Exception as e: code = 000 message = e logger.warning(e) return {"code": code, "message": message} @router.get("sr_cancel/{tasks_id}>") def super_resolution(tasks_id): result = infer_cancel(tasks_id) return {"code": 200, "message": result['message'], "data": result['data']}