diff --git a/app/api/api_design.py b/app/api/api_design.py index 407ce34..853b6d8 100644 --- a/app/api/api_design.py +++ b/app/api/api_design.py @@ -1,9 +1,10 @@ import json import logging +import requests from fastapi import APIRouter, HTTPException, BackgroundTasks -from app.schemas.design import DesignModel, ModelProgressModel, DesignStreamModel +from app.schemas.design import DesignModel, ModelProgressModel, DesignStreamModel, SAMRequestModel from app.schemas.response_template import ResponseModel from app.service.design_fast.design_generate import design_generate, design_generate_v2 from app.service.design_fast.model_process_service import model_transpose @@ -373,6 +374,17 @@ async def design_v2(request_data: DesignStreamModel, background_tasks: Backgroun return ResponseModel() +@router.post("/seg_anything") +async def seg_anything(request_data: SAMRequestModel): + try: + logger.info(f"seg_anything request item is : @@@@@@:{json.dumps(request_data.dict(), indent=4)}") + data = requests.post("http://10.1.1.240:10075/predict", json=request_data.dict()) + logger.info(f"seg_anything response @@@@@@:{json.dumps(json.loads(data.content), indent=4)}") + return ResponseModel(data=json.loads(data.content)) + except Exception as e: + logger.warning(f"seg_anything Run Exception @@@@@@:{e}") + + # @router.post('/get_progress') # def get_progress(request_data: DesignProgressModel): # """ diff --git a/app/schemas/design.py b/app/schemas/design.py index 3fb6de7..103d8dd 100644 --- a/app/schemas/design.py +++ b/app/schemas/design.py @@ -1,6 +1,12 @@ from pydantic import BaseModel +class SAMRequestModel(BaseModel): + image_path: str + points: list[list[float]] + labels: list[int] + + class DesignModel(BaseModel): objects: list[dict] process_id: str