added image ai-moderation
This commit is contained in:
37
ai-moderation/app/routers/text_moderation_router.py
Normal file
37
ai-moderation/app/routers/text_moderation_router.py
Normal file
@@ -0,0 +1,37 @@
|
||||
from fastapi import APIRouter
|
||||
from typing import Annotated
|
||||
from fastapi import Depends
|
||||
|
||||
from app.models.dto.text_request import TextRequest
|
||||
from app.models.response.moderation_response import ModerationResponse
|
||||
from app.services.text_moderation_service import TextModerationService
|
||||
|
||||
|
||||
from app.core.dependencies import (
|
||||
get_text_moderation_service
|
||||
)
|
||||
|
||||
router = APIRouter(
|
||||
prefix="/api/v1/moderation",
|
||||
tags=["Moderation"]
|
||||
)
|
||||
|
||||
|
||||
@router.post(
|
||||
"/text",
|
||||
response_model=ModerationResponse
|
||||
)
|
||||
def moderate_text(
|
||||
request: TextRequest,
|
||||
service: Annotated[
|
||||
TextModerationService,
|
||||
Depends(get_text_moderation_service)
|
||||
]
|
||||
):
|
||||
prediction = service.moderate(request.text)
|
||||
|
||||
return ModerationResponse(
|
||||
approved=prediction.approved,
|
||||
score=prediction.score,
|
||||
reason=prediction.reason
|
||||
)
|
||||
Reference in New Issue
Block a user