AI生成の美少女アートSNSを運営する上で、絶対に外せないのが「未成年に見える描写を確実に弾く」こと。法的にも倫理的にも、ここで失敗すると一発でサービス終了です。Claudeとバイブコーディングで実装したモデレーション設計を公開します。
目次
採用したモデレーションAIの責務
- 画像が成人向けか/暴力的か/自傷的か/未成年描写か、をsafety scoreで返す
- スコアは low / medium / high の3段階
- 通常は high を却下、それ未満は通すのが標準
Moeriumの厳格設定:「未成年は low でも却下」
一般的な運用は「high のみ却下、low/mediumは通す」ですが、Moeriumは違います。未成年に見える可能性のあるカテゴリは、low でも一律却下です。
- sexual_content:high のみ却下
- violence:high のみ却下
- sexual_minors:low でも却下
- self_harm:high のみ却下
この1行(sexual_minorsだけ閾値を下げる)が、サービスの命綱です。
却下ログ「RejectionLog」を持つ理由
却下した投稿の情報を、ユーザーIDごとに永続記録します。理由は「違法投稿→退会→再登録のイタチごっこ」を止めるため。
- partitionKey = userId
- rowKey = 反転timestamp + uuid
- カテゴリ・severity・元画像のハッシュを保存
- アカウント削除時もこのログだけは残す(GDPR適用外、安全保護目的)
厳格モデレーションが効いているSNSの実物がこちらです。健全な作品だけが流れてくる安心感をぜひ体験してください。
Claudeに任せた実装パート
モデレーション連携のコードは全部Claudeに書いてもらいました。具体的には:
- 画像をBase64エンコード→APIに渡す
- レスポンスをパース→sexual_minors の severity 抽出
- low以上なら却下、却下理由をRejectionLogへ書き込み
- ユーザーへ友好的なエラーメッセージで通知(「人物が検出できませんでした」等)
プロンプトは「sexual_minorsだけ厳しめに、low以上なら全却下。RejectionLogに残す。ユーザーには曖昧な理由で通知」と1行で済みました。
ユーザー向けエラーメッセージの工夫
却下理由をそのまま伝えると不快感を与えるため、APIの生メッセージを日本語に翻訳して柔らかく出します。
- “sexual_minors detected” → 「人物が検出できませんでした」(曖昧化)
- “violence detected” → 「コンテンツが審査基準を満たしませんでした」
- 具体カテゴリは伝えない(学習されて回避されるのを防ぐ)
運用後の数字
累計約6,000件の投稿のうち、却下件数は数件。Refusal率の低さは、モデレーションAIの精度向上の恩恵です。2026年現在のAIモデレーションは、想像以上に使えます。
安全装置が効いているSNSの実物を見てください
健全な作品だけが流れる縦スクロール体験。Claudeとバイブコーディングで実装した安全設計の集大成。
コメント
この記事へのコメントはありません。
この記事へのトラックバックはありません。