2024-03-21 11:12:01 +08:00
|
|
|
import json
|
|
|
|
|
import logging
|
|
|
|
|
|
|
|
|
|
from fastapi import APIRouter, BackgroundTasks
|
2024-03-20 11:44:15 +08:00
|
|
|
|
|
|
|
|
from app.schemas.super_resolution import SuperResolutionModel
|
2024-03-21 11:12:01 +08:00
|
|
|
from app.service.super_resolution.service import SuperResolution, infer_cancel
|
2024-03-20 11:44:15 +08:00
|
|
|
|
|
|
|
|
router = APIRouter()
|
2024-03-21 11:12:01 +08:00
|
|
|
logger = logging.getLogger()
|
2024-03-20 11:44:15 +08:00
|
|
|
|
|
|
|
|
|
2024-03-21 11:27:37 +08:00
|
|
|
@router.post("/super_resolution")
|
2024-03-21 11:12:01 +08:00
|
|
|
def super_resolution(request_item: SuperResolutionModel, background_tasks: BackgroundTasks):
|
|
|
|
|
try:
|
|
|
|
|
service = SuperResolution(request_item)
|
|
|
|
|
background_tasks.add_task(service.sr_result)
|
|
|
|
|
code = 200
|
2024-06-13 13:35:49 +08:00
|
|
|
message = "OK!"
|
2024-03-21 11:12:01 +08:00
|
|
|
except Exception as e:
|
2024-04-10 14:54:22 +08:00
|
|
|
code = 400
|
2024-03-21 11:12:01 +08:00
|
|
|
message = e
|
|
|
|
|
logger.warning(e)
|
2024-06-13 13:43:34 +08:00
|
|
|
return {"code": code, "msg": message}
|
2024-03-21 11:12:01 +08:00
|
|
|
|
|
|
|
|
|
2024-03-21 11:27:37 +08:00
|
|
|
@router.get("/sr_cancel/{tasks_id}>")
|
2024-03-21 11:12:01 +08:00
|
|
|
def super_resolution(tasks_id):
|
|
|
|
|
result = infer_cancel(tasks_id)
|
2024-06-13 13:43:34 +08:00
|
|
|
return {"code": 200, "msg": result['message'], "data": result['data']}
|