import logging from fastapi import APIRouter, BackgroundTasks from app.schemas.generate_image import GenerateImageModel from app.service.generate_image.service import GenerateImage, infer_cancel router = APIRouter() logger = logging.getLogger() @router.post("/generate_image") def generate_image(request_item: GenerateImageModel, background_tasks: BackgroundTasks): try: service = GenerateImage(request_item) background_tasks.add_task(service.get_result) code = 200 message = "access" except Exception as e: code = 400 message = e logger.warning(e) return {"code": code, "message": message} @router.get("/generate_cancel/{tasks_id}>") def generate_image(tasks_id): result = infer_cancel(tasks_id) return {"code": 200, "message": result['message'], "data": result['data']}