Tratar dados textuais da requisição
Outro requisito no sistema de moderação de conteúdo é levar em conta o sentimento dos comentários dos usuários. O sistema precisa identificar frases específicas problemáticas para ajudar moderadores a revisar conteúdo potencialmente inapropriado.
Você vai criar um endpoint que analisa o texto enviado pelos usuários e extrai sinalizações padronizadas de moderação.
Este exercício faz parte do curso
Colocando IA em Produção com FastAPI
Instruções do exercício
- Converta o texto recebido para minúsculas na função
analyze_comment()para torná-lo case-insensitive. - Extraia as palavras-chave problemáticas em
found_issuesa partir do texto processado usando a listaproblem_keywords. - Retorne uma resposta JSON com as seguintes chaves -
issues(lista de palavras-chave),issue_count(inteiro) eoriginal_text(string).
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
@app.post("/analyze_comment")
def analyze_comment(text: str):
problem_keywords = ["spam", "hate", "offensive", "abuse"]
# Convert the input text to lowercase
text_lower = ____
# Extract matching flags using list comprehension
found_issues = [____ for ____ in problem_keywords if keyword in text_lower]
# Return the dictionary with required keys
return {
"____": found_issues,
"____": len(found_issues),
"____": text
}