コンテンツモデレーションは、デジタルアプリケーションにおいて安全で、敬意を持ち、生産的な環境を維持するための重要な側面です。このガイドでは、デジタルアプリケーション内のコンテンツをモデレートするためにClaudeをどのように使用できるかについて説明します。
コンテンツモデレーションクックブックにアクセスして、Claudeを使用したコンテンツモデレーション実装の例をご覧ください。
コスト効率が良く迅速な実装を望んでいる
意味的理解と迅速な判断の両方を求めている
一貫したポリシー決定が必要
モデレーションポリシーが時間とともに変化または進化する可能性がある
モデレーション判断に解釈可能な理由付けが必要
別々のモデルを維持せずに多言語サポートが必要
マルチモーダルサポートが必要
This movie was great, I really enjoyed it. The main actor really killed it!
では、コンテンツモデレーションシステムは「killed it」が実際の暴力の表示ではなく、比喩であることを認識する必要があります。逆に、暴力の明示的な言及がないにもかかわらず、コメント Delete this post now or you better hide. I am coming after you and your family.
はコンテンツモデレーションシステムによってフラグが立てられるべきです。
unsafe_categories
リストは、特定のニーズに合わせてカスタマイズできます。例えば、未成年者がウェブサイト上でコンテンツを作成することを防ぎたい場合は、リストに「Underage Posting」を追加することができます。
explanation
フィールドを削除することで、出力トークンをさらに削減できます。moderate_message
関数には、安全でないコンテンツカテゴリとモデレートしたいメッセージを含む評価プロンプトが含まれています。プロンプトは、定義した安全でないカテゴリに基づいて、メッセージをモデレートすべきかどうかを評価するようClaudeに依頼します。
モデルの評価は、違反があるかどうかを判断するために解析されます。違反がある場合、Claudeは違反したカテゴリのリストと、なぜそのメッセージが安全でないかの説明も返します。
assess_risk_level
関数を実装しています。この関数は、メッセージと安全でないカテゴリのリストを入力として受け取ります。
関数内では、評価されるメッセージ、安全でないカテゴリ、およびリスクレベルを評価するための具体的な指示を含むプロンプトがClaudeのために生成されます。プロンプトは、リスクレベル、違反したカテゴリ、およびオプションの説明を含むJSONオブジェクトで応答するようClaudeに指示します。
このアプローチにより、リスクレベルを割り当てることで柔軟なコンテンツモデレーションが可能になります。評価されたリスクレベルに基づいてコンテンツフィルタリングを自動化したり、コメントに人間によるレビューのためのフラグを立てたりするより大きなシステムにシームレスに統合できます。例えば、このコードを実行すると、コメントDelete this post now or you better hide. I am coming after you and your family.
は危険な脅威のため高リスクとして識別されます。一方、コメントStay away from the 5G cellphones!! They are using 5G to control you.
は中リスクとして分類されます。
explanation
タグを通じて行われます。
moderate_message_with_definitions
関数は、各安全でないカテゴリを詳細な定義とペアにすることで、以前のmoderate_message
関数を拡張しています。これは、元の関数のunsafe_categories
リストをunsafe_category_definitions
辞書に置き換えることでコード内で発生します。この辞書は各安全でないカテゴリをその対応する定義にマッピングします。カテゴリ名とその定義の両方がプロンプトに含まれています。
特に、Specialized Advice
カテゴリの定義では、禁止すべき金融アドバイスの種類が指定されています。その結果、以前はmoderate_message
評価に合格していたコメントIt's a great time to invest in gold!
が、今では違反をトリガーします。
batch_moderate_messages
関数は単一のClaude API呼び出しでメッセージのバッチ全体のモデレーションを処理します。
関数内では、評価するメッセージのリスト、定義された安全でないコンテンツカテゴリ、およびそれらの説明を含むプロンプトが作成されます。プロンプトはClaudeに違反を含むすべてのメッセージをリストするJSONオブジェクトを返すよう指示します。レスポンス内の各メッセージは、入力リスト内のメッセージの位置に対応するidによって識別されます。
特定のニーズに最適なバッチサイズを見つけるには、いくつかの実験が必要な場合があることに留意してください。バッチサイズが大きいほどコストを下げることができますが、品質がわずかに低下する可能性もあります。また、より長いレスポンスに対応するために、Claude API呼び出しのmax_tokens
パラメータを増やす必要があるかもしれません。選択したモデルが出力できるトークンの最大数の詳細については、モデル比較ページを参照してください。