routes.py 1.8 KB

1234567891011121314151617181920212223242526272829303132333435
  1. from fastapi import APIRouter, Depends
  2. from .deps import get_speech_service, get_understand_image_service, get_copywriting_evaluation_service, get_audit_service
  3. from ..schemas.base import DataResponse, TextToSpeechRequest, UnderstandImageRequest, CopywritingEvaluationRequest, BusinessLicenseExtractRequest, AuditRequest
  4. from ..services.speech_service import SpeechService
  5. from ..services.vl_service import VLService
  6. from ..services.evaluation_service import EvaluationService
  7. from ..services.audit_service import AuditService
  8. router = APIRouter()
  9. @router.get("/ping", tags=["default"])
  10. def ping():
  11. return {"message": "pong"}
  12. @router.post('/llm/text-to-speech', response_model=DataResponse, tags=["llm"])
  13. def text_to_speech(req: TextToSpeechRequest, service: SpeechService = Depends(get_speech_service)):
  14. return service.text_to_speech(req)
  15. @router.post('/llm/understand-image', response_model=DataResponse, tags=["llm"])
  16. def understand_image(req: UnderstandImageRequest, service: VLService = Depends(get_understand_image_service)):
  17. return service.understand_image(req)
  18. @router.post('/llm/extract-business-license', response_model=DataResponse, tags=["llm"])
  19. def extract_business_license(req: BusinessLicenseExtractRequest, service: VLService = Depends(get_understand_image_service)):
  20. return service.extract_business_license(req)
  21. @router.post('/llm/copywriting-evaluation', response_model=DataResponse, tags=["llm"])
  22. def copywriting_evaluation(req: CopywritingEvaluationRequest, service: EvaluationService = Depends(get_copywriting_evaluation_service)):
  23. return service.copywriting_evaluation(req)
  24. @router.post('/llm/audit/creative', response_model=DataResponse, tags=["llm"])
  25. def creative_audit(req: AuditRequest, service: AuditService = Depends(get_audit_service)):
  26. return service.creative_audit(req)