import json import logging import os from fastapi import APIRouter, HTTPException from app.schemas.attribute_retrieve import * from app.schemas.response_template import ResponseModel from app.service.attribute.config import const from app.service.attribute.service_att_recognition import AttributeRecognition from app.service.attribute.service_category_recognition import CategoryRecognition router = APIRouter() logger = logging.getLogger() # 属性识别 @router.post("/attribute_recognition", response_model=ResponseModel) def attribute_recognition(request_item: list[AttributeRecognitionModel]): try: logger.info(f"attribute_recognition request item is : @@@@@@:{request_item}") logger.info(const.top_description_list) logger.info(os.getcwd()) service = AttributeRecognition(const=const, request_data=request_item) data = service.get_result() logger.info(f"attribute_recognition response @@@@@@:{json.dumps(data, indent=4)}") except Exception as e: logger.warning(f"attribute_recognition Run Exception @@@@@@:{e}") raise HTTPException(status_code=404, detail=str(e)) return ResponseModel(data=data) # 类别识别 @router.post("/category_recognition") def category_recognition(request_item: list[CategoryRecognitionModel]): try: logger.info(f"category_recognition request item is : @@@@@@:{request_item}") service = CategoryRecognition(request_data=request_item) data = service.get_result() logger.info(f"category_recognition response @@@@@@:{json.dumps(data, indent=4)}") except Exception as e: logger.warning(f"category_recognition Run Exception @@@@@@:{e}") raise HTTPException(status_code=404, detail=str(e)) return ResponseModel(data=data)