Files
post-moderation/ai-moderation/app/services/text_moderation_service.py
2026-07-17 01:06:36 +03:00

26 lines
522 B
Python

from app.ml.text_classifier import TextClassifier
from app.ml.prediction_result import PredictionResult
class TextModerationService:
TOXIC_THRESHOLD = 0.80
def __init__(self):
self.classifier = TextClassifier()
def moderate(self, text: str) -> PredictionResult:
prediction = self.classifier.predict(text)
prediction.approved = (
prediction.score < self.TOXIC_THRESHOLD
)
prediction.reason = (
"OK"
if prediction.approved
else "TOXIC"
)
return prediction