AIコンテンツモデレーション — 有害投稿の自動検出と対処
約5分で読めます
AIコンテンツモデレーション — 有害投稿の自動検出と対処
UGC(ユーザー生成コンテンツ)を扱うサービスでは、有害コンテンツの検出と対処が不可欠だ。人手によるモデレーションはスケールしない。AIを活用した自動モデレーションシステムの構築方法を解説する。
モデレーション対象カテゴリ
| カテゴリ | 例 | リスクレベル |
|---|---|---|
| 暴力的表現 | 脅迫、暴力の助長 | HIGH |
| ハラスメント | 誹謗中傷、差別発言 | HIGH |
| スパム | 宣伝、フィッシングURL | MEDIUM |
| 不適切な個人情報 | 電話番号、住所の無断公開 | HIGH |
| 著作権侵害 | 無断転載、盗用 | MEDIUM |
| 軽度の不適切表現 | 不快な言葉遣い | LOW |
プロンプト設計
MODERATION_PROMPT = """
あなたはコンテンツモデレーターです。以下のユーザー投稿を分析してください。
## 投稿内容
{content}
## 判定基準
各カテゴリについて0.0-1.0のスコアで評価してください:
- violence: 暴力的表現
- harassment: ハラスメント・差別
- spam: スパム・宣伝
- pii: 個人情報の露出
- copyright: 著作権侵害の疑い
- profanity: 不適切な言葉遣い
## 出力形式(JSONのみ)
{{
"scores": {{"violence": 0.0, "harassment": 0.0, "spam": 0.0, "pii": 0.0, "copyright": 0.0, "profanity": 0.0}},
"max_category": "最もスコアの高いカテゴリ名",
"max_score": 0.0,
"action": "approve / flag / remove",
"reason": "判定理由を1文で"
}}
"""
閾値設定とアクション判定
THRESHOLDS = {
"violence": {"flag": 0.3, "remove": 0.7},
"harassment": {"flag": 0.3, "remove": 0.7},
"spam": {"flag": 0.5, "remove": 0.8},
"pii": {"flag": 0.4, "remove": 0.6},
"copyright": {"flag": 0.4, "remove": 0.8},
"profanity": {"flag": 0.6, "remove": 0.9},
}
def determine_action(scores: dict) -> str:
"""スコアと閾値からアクションを決定"""
for category, score in scores.items():
threshold = THRESHOLDS.get(category, {"flag": 0.5, "remove": 0.8})
if score >= threshold["remove"]:
return "remove"
for category, score in scores.items():
threshold = THRESHOLDS.get(category, {"flag": 0.5, "remove": 0.8})
if score >= threshold["flag"]:
return "flag"
return "approve"
閾値は運用しながら調整する。初期は厳しめに設定し、偽陽性の状況を見て緩和していくのが安全だ。
エスカレーションフロー
投稿受信
+-- AI判定: approve -> そのまま公開
+-- AI判定: flag -> モデレーターキューに追加
| +-- モデレーター承認 -> 公開
| +-- モデレーター却下 -> 非公開 + ユーザー通知
+-- AI判定: remove -> 即時非公開
+-- ユーザーに理由通知
+-- 異議申立 -> モデレーターが再審査
重要なのは「remove」でも完全削除はしないことだ。誤判定の可能性があるため、非公開状態で保持し、異議申立のルートを必ず用意する。
バッチ処理とリアルタイム処理
- リアルタイム: 投稿時に即座に判定。Haikuモデルを使い低レイテンシで処理
- バッチ: 既存コンテンツの定期スキャン。Sonnetモデルでより精密に判定
- 再判定: モデル更新時に過去のflag判定を再評価
運用上の注意点
- 文脈依存性: 同じ単語でもコンテキストで意味が変わる。前後の会話を含めて判定する
- 多言語対応: 日本語特有の婉曲表現や隠語への対応が必要
- 偽陽性の管理: 過度な検閲はユーザー体験を損なう。月次で偽陽性率をレビューする
- 監査ログ: 全判定結果を保存し、トレーサビリティを確保する
まとめ
AIコンテンツモデレーションは「プロンプト設計 + 閾値チューニング + エスカレーションフロー」の3要素で構成される。完全な自動化ではなく、AIと人間のハイブリッドモデルが現実的かつ効果的だ。
関連記事
A
Agentive 編集部
AIエージェントを実際に使い倒す個人開発者。サイト制作の自動化を実践しながら、その知見を発信しています。