言語サポート
テキスト モデレーションは 100 を超える言語をサポートしています。ただし、テキスト モデレーションで言語の選択を構成するために何かを行う必要はありません。Azure は各テキスト メッセージの言語を自動的に検出します。自動検出と冒涜的表現のフィルタリングをサポートする対応言語の完全なリストについては、Azure AI Content Safety の 対応言語一覧 を参照してください。テキスト モデレーションを有効にする
テキスト モデレーションはチャット コントロールごとに構成されます。PartyLocalChatControl::SetTextChatOptions() を PartyTextChatOptions::FilterOffensiveText オプションで呼び出すことによって有効化されます。モデレーションが有効になっているチャット コントロールは、不快な単語がアスタリスクでマスクされたテキスト チャットを受信します。モデレーションはチャット コントロールごとに有効化されるため、ユーザーが独自のモデレーション選択を設定できるように UI を作成できます。または、一部またはすべてのユーザーにモデレーションを強制することもできます。
チャット コントロールのモデレーションを無効にするには、同じ関数を使用し、FilterOffensiveText フラグを含まない PartyTextChatOptions オプションを渡します。
サンプル コード:
モデレートされたテキストの送受信
モデレーションが有効化されたチャット コントロールに送信されるすべてのテキストには、送信者自身のモデレーション設定に関係なくモデレーションが適用されます。モデレーションが有効化されたチャット コントロールが受信したテキスト メッセージでは、PartyChatTextReceivedStateChange の chatText フィールドがモデレートされたバージョンに置き換えられます。
PartyChatTextReceivedStateChange には、フィルタリングされていないバージョンのテキストを表示するオプションをユーザーに与えるなど、より複雑なシナリオを可能にするために、より多くのフィールドが存在します。詳細については、PartyChatTextReceivedStateChange リファレンス ページを参照してください。
サービス エラーが発生したか、テキストがサービスによって特定の用語を識別できずに不快と判断されたためにテキスト メッセージのモデレーションが失敗した場合、テキスト メッセージ全体がアスタリスクでマスクされます。PartyChatTextReceivedStateChange の options フィールドで提供される PartyChatTextReceivedOptions 列挙型には、このエラー ケースが発生したときの詳細情報が含まれます。
フィルタリング レベルの調整
英語の場合、チャット コントロールに対して行われるフィルタリングのレベルは、PartyManager::SetOption 関数を使用して調整できます。利用可能なフィルタリング レベルは、Family-Friendly、Medium、および Mature です。デフォルトのレベルは Family-Friendly です。
サンプル コード:
