feat : 新增seg anything 接口
All checks were successful
git commit AiDA python develop 分支构建部署 / scheduled_deploy (push) Has been skipped

This commit is contained in:
zcr
2026-01-08 17:33:54 +08:00
parent f6963070fb
commit 9ba3a0ca49
2 changed files with 19 additions and 1 deletions

View File

@@ -1,9 +1,10 @@
import json import json
import logging import logging
import requests
from fastapi import APIRouter, HTTPException, BackgroundTasks 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.schemas.response_template import ResponseModel
from app.service.design_fast.design_generate import design_generate, design_generate_v2 from app.service.design_fast.design_generate import design_generate, design_generate_v2
from app.service.design_fast.model_process_service import model_transpose 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() 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') # @router.post('/get_progress')
# def get_progress(request_data: DesignProgressModel): # def get_progress(request_data: DesignProgressModel):
# """ # """

View File

@@ -1,6 +1,12 @@
from pydantic import BaseModel from pydantic import BaseModel
class SAMRequestModel(BaseModel):
image_path: str
points: list[list[float]]
labels: list[int]
class DesignModel(BaseModel): class DesignModel(BaseModel):
objects: list[dict] objects: list[dict]
process_id: str process_id: str