テキストリクエストデータの処理
コンテンツモデレーションシステムのもう一つの要件は、ユーザーコメントの感情(センチメント)を考慮することです。このシステムでは、不適切なコンテンツの可能性があるものをモデレーターが確認しやすいよう、問題のあるフレーズを特定する必要があります。
ここでは、ユーザーから送られてくるテキストを分析し、標準化されたモデレーションフラグを抽出するエンドポイントを作成しましょう。
この演習はコースの一部です
FastAPI を使った AI のプロダクション環境へのデプロイ
演習の手順
analyze_comment()関数内で、大文字・小文字を区別しないよう、受け取ったテキストを小文字に変換しましょう。problem_keywordsリストを使って、処理済みテキストから問題のあるキーワードをfound_issuesに抽出しましょう。issues(キーワードのリスト)、issue_count(整数)、original_text(文字列)のキーを持つ JSON レスポンスを返しましょう。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
@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
}