Share via


クイックスタート: テキスト コンテンツを分析する

基本的なテキスト モデレーションを行うために、Content Safety Studio、REST API、またはクライアント SDK の使用を開始します。 Azure AI Content Safety サービスは、不快なコンテンツにフラグを設定する AI アルゴリズムを備えています。 これを試すには、これらの手順に従います。

注意

サンプル データとコードには不快なコンテンツが含まれている可能性があります。 ユーザーの裁量が推奨されます。

前提条件

  • Azure サブスクリプション - 無料アカウントを作成します
  • Azure サブスクリプションを入手したら、Azure portal で Content Safety リソースを作成し、キーとエンドポイントを取得します。 リソースの一意の名前を入力し、サブスクリプションを選択して、リソース グループ、サポートされているリージョン (米国東部または西ヨーロッパ)、サポートされている価格レベルを選択します。 [作成] を選択します。
    • リソースのデプロイには数分かかります。 完了したら、[リソースに移動] を選びます。 左ペインの [リソース管理] で、[サブスクリプション キーとエンドポイント] を選びます。 エンドポイントといずれかのキーが、API の呼び出しに使われます。
  • インストールされた [cURL](https://curl.haxx.se/)

テキスト コンテンツを分析する

次のセクションでは、cURL を使ったサンプル要求について説明します。 以下のコマンドをテキスト エディターに貼り付け、次の変更を加えます。

  1. <endpoint> を、リソースに関連付けられたエンドポイント URL に置き換えます。
  2. <your_subscription_key> を、リソースに付属するキーのいずれかに置き換えます。
  3. 必要に応じて、本文の "text" フィールドを、分析する独自のテキストに置き換えます。

    ヒント

    テキストのサイズと細分性

    テキスト送信の既定の最大長は 1,000 文字です。

curl --location --request POST '<endpoint>/contentsafety/text:analyze?api-version=2023-10-01' \
--header 'Ocp-Apim-Subscription-Key: <your_subscription_key>' \
--header 'Content-Type: application/json' \
--data-raw '{
  "text": "I hate you",
  "categories": [
   "Hate","Sexual","SelfHarm","Violence"
  ]
   "blocklistNames": [
      "string"
    ],
   "haltOnBlocklistHit": true,
   "outputType": "FourSeverityLevels"
}'

URL には以下のフィールドを含める必要があります。

名前 必須 説明 種類
API バージョン 必須 これは確認する API のバージョンです。 現在のバージョン: api-version=2023-10-01。 例: <endpoint>/contentsafety/text:analyze?api-version=2023-10-01 String

要求本文のパラメーターは、次の表のように定義されています。

名前 必須 説明 種類
text 必須 これは、確認する生のテキストです。 他の非 ASCII 文字も含めることができます。 String
categories 省略可能 これはカテゴリ名の配列であると想定されます。 使用できるカテゴリ名の一覧については、危害カテゴリ ガイドのページを参照してください。 カテゴリを指定しない場合、4 つのカテゴリがすべて使われます。 複数のカテゴリを使って、1 つの要求でスコアを取得します。 String
blocklistNames 省略可能 テキスト ブロックリスト名。 次の文字のみがサポートされます: 0-9 A-Z a-z - . _ ~。 ここで複数の一覧名を添付できます。 Array
haltOnBlocklistHit オプション true に設定した場合、ブロックリストにヒットすると、それ以降は有害なコンテンツの分析が実行されなくなります。 false に設定すると、ブロックリストにヒットするかどうかに関係なく、有害なコンテンツのすべての分析が実行されます。 ブール型
outputType オプション "FourSeverityLevels" または "EightSeverityLevels"。 出力重大度は 4 または 8 レベルで、値は 0,2,4,6 または 0,1,2,3,4,5,6,7 になります。 String

次のサンプル要求本文を参照してください。

{
  "text": "I hate you",
  "categories": [
   "Hate","Sexual","SelfHarm","Violence"
  ],
  "blocklistNames": [
    "array"
  ],
  "haltOnBlocklistHit": false,
  "outputType": "FourSeverityLevels"
}

コマンド プロンプト ウィンドウを開き、cURL コマンドを実行します。

API 応答を解釈する

コンソール出力に、テキスト モデレーションの結果が JSON データとして表示されます。 次に例を示します。

{
  "blocklistsMatch": [
    {
      "blocklistName": "string",
      "blocklistItemId": "string",
      "blocklistItemText": "string"
    }
  ],
  "categoriesAnalysis": [
        {
            "category": "Hate",
            "severity": 2
        },
        {
            "category": "SelfHarm",
            "severity": 0
        },
        {
            "category": "Sexual",
            "severity": 0
        },
        {
            "category": "Violence",
            "severity": 0
  ]
}

出力の JSON フィールドは次のように定義されています。

名前 Description Type
categoriesAnalysis API によって予測される各出力クラス。 分類には複数のラベルを付けることができます。 たとえば、テキスト サンプルがテキスト モデレーション モデルを通過すると、性的コンテンツと暴力の両方として分類される可能性があります。 危害カテゴリ String
Severity 入力コンテンツの重大度が高いほど、この値は大きくなります。 整数型

リファレンスのドキュメント | ライブラリのソース コード | パッケージ (NuGet) | サンプル

前提条件

  • Azure サブスクリプション - 無料アカウントを作成します
  • .NET によるデスクトップ開発ワークロードを有効にした Visual Studio IDE。 または、Visual Studio IDE の使用を計画していない場合は、現在のバージョンの .NET Core が必要です。
  • Azure サブスクリプションを入手したら、Azure portal で Content Safety リソースを作成し、キーとエンドポイントを取得します。 リソースの一意の名前を入力し、サブスクリプションを選択して、リソース グループ、サポートされているリージョン (米国東部または西ヨーロッパ)、サポートされている価格レベルを選択します。 [作成] を選択します。
    • リソースのデプロイには数分かかります。 完了したら、[リソースに移動] を選びます。 左ペインの [リソース管理] で、[サブスクリプション キーとエンドポイント] を選びます。 エンドポイントといずれかのキーが、API の呼び出しに使われます。

アプリケーションの設定

新しい C# アプリケーションを作成します。

Visual Studio を開き、[開始する] の下で [新しいプロジェクトの作成] を選択します。 テンプレート フィルターを C#/すべてのプラットフォーム/コンソール に設定します。 [コンソール アプリ] (Windows、Linux、macOS 上の .NET で実行できるコマンド ライン アプリケーション) を選択し、[次へ] を選択します。 プロジェクト名を「ContentSafetyQuickstart」に更新し、[次へ] を選択します。 [.NET 6.0] 以降を選択し、[作成] を選んでプロジェクトを作成します。

クライアント SDK のインストール

新しいプロジェクトを作成したら、ソリューション エクスプローラーでプロジェクト ソリューションを右クリックし、[NuGet パッケージの管理] を選んで、クライアント SDK をインストールします。 パッケージ マネージャーが開いたら、[参照] を選択して Azure.AI.ContentSafety を検索します。 [インストール] を選択します。

環境変数を作成する

この例では、アプリケーションを実行しているローカル コンピューター上の環境変数に資格情報を書き込みます。

ヒント

キーは、コードに直接含めないようにし、公開しないでください。 Azure Key Vault などのその他の認証オプションについては、Azure AI サービスのセキュリティに関する記事を参照してください。

キーとエンドポイントの環境変数を設定するには、コンソール ウィンドウを開き、オペレーティング システムと開発環境の指示に従います。

  1. CONTENT_SAFETY_KEY 環境変数を設定するには、YOUR_CONTENT_SAFETY_KEY をリソースのキーの 1 つに置き換えます。
  2. CONTENT_SAFETY_ENDPOINT 環境変数を設定するには、YOUR_CONTENT_SAFETY_ENDPOINT をリソースのエンドポイントに置き換えます。
setx CONTENT_SAFETY_KEY 'YOUR_CONTENT_SAFETY_KEY'
setx CONTENT_SAFETY_ENDPOINT 'YOUR_CONTENT_SAFETY_ENDPOINT'

環境変数を追加した後、実行中のプログラムのうち、環境変数を読み取るプログラム (コンソール ウィンドウを含む) の再起動が必要となる場合があります。

テキスト コンテンツを分析する

プロジェクト ディレクトリから、以前に作成した Program.cs ファイルを開きます。 次のコードを貼り付けます。

using System;
using Azure.AI.ContentSafety;

namespace Azure.AI.ContentSafety.Dotnet.Sample
{
  class ContentSafetySampleAnalyzeText
  {
    public static void AnalyzeText()
    {
      // retrieve the endpoint and key from the environment variables created earlier
      string endpoint = Environment.GetEnvironmentVariable("CONTENT_SAFETY_ENDPOINT");
      string key = Environment.GetEnvironmentVariable("CONTENT_SAFETY_KEY");

      ContentSafetyClient client = new ContentSafetyClient(new Uri(endpoint), new AzureKeyCredential(key));

      string text = "Your input text";

      var request = new AnalyzeTextOptions(text);

      Response<AnalyzeTextResult> response;
      try
      {
          response = client.AnalyzeText(request);
      }
      catch (RequestFailedException ex)
      {
          Console.WriteLine("Analyze text failed.\nStatus code: {0}, Error code: {1}, Error message: {2}", ex.Status, ex.ErrorCode, ex.Message);
          throw;
      }

      Console.WriteLine("\nAnalyze text succeeded:");
      Console.WriteLine("Hate severity: {0}", response.Value.CategoriesAnalysis.FirstOrDefault(a => a.Category == TextCategory.Hate)?.Severity ?? 0);
      Console.WriteLine("SelfHarm severity: {0}", response.Value.CategoriesAnalysis.FirstOrDefault(a => a.Category == TextCategory.SelfHarm)?.Severity ?? 0);
      Console.WriteLine("Sexual severity: {0}", response.Value.CategoriesAnalysis.FirstOrDefault(a => a.Category == TextCategory.Sexual)?.Severity ?? 0);
      Console.WriteLine("Violence severity: {0}", response.Value.CategoriesAnalysis.FirstOrDefault(a => a.Category == TextCategory.Violence)?.Severity ?? 0);

    }
    static void Main()
    {
        AnalyzeText();
    }
  }
}

"Your input text" を、使うテキスト コンテンツに置き換えます。

ヒント

テキストのサイズと細分性

テキスト送信の既定の最大長は 1,000 文字です。

IDE ウィンドウの上部にある [デバッグ] メニューから [デバッグの開始] を選んで (または F5 キーを押して)、アプリケーションをビルドして実行します。

リファレンス ドキュメント | ライブラリのソース コード | パッケージ (PyPI) | サンプル |

前提条件

  • Azure サブスクリプション - 無料アカウントを作成します
  • Azure サブスクリプションを入手したら、Azure portal で Content Safety リソースを作成し、キーとエンドポイントを取得します。 リソースの一意の名前を入力し、サブスクリプションを選択して、リソース グループ、サポートされているリージョン (米国東部または西ヨーロッパ)、サポートされている価格レベルを選択します。 [作成] を選択します。
    • リソースのデプロイには数分かかります。 完了したら、[リソースに移動] を選びます。 左ペインの [リソース管理] で、[サブスクリプション キーとエンドポイント] を選びます。 エンドポイントといずれかのキーが、API の呼び出しに使われます。
  • Python 3.x
    • Python のインストールには、pip が含まれている必要があります。 pip がインストールされているかどうかを確認するには、コマンド ラインで pip --version を実行します。 最新バージョンの Python をインストールして pip を入手してください。

環境変数を作成する

この例では、アプリケーションを実行しているローカル コンピューター上の環境変数に資格情報を書き込みます。

ヒント

キーは、コードに直接含めないようにし、公開しないでください。 Azure Key Vault などのその他の認証オプションについては、Azure AI サービスのセキュリティに関する記事を参照してください。

キーとエンドポイントの環境変数を設定するには、コンソール ウィンドウを開き、オペレーティング システムと開発環境の指示に従います。

  1. CONTENT_SAFETY_KEY 環境変数を設定するには、YOUR_CONTENT_SAFETY_KEY をリソースのキーの 1 つに置き換えます。
  2. CONTENT_SAFETY_ENDPOINT 環境変数を設定するには、YOUR_CONTENT_SAFETY_ENDPOINT をリソースのエンドポイントに置き換えます。
setx CONTENT_SAFETY_KEY 'YOUR_CONTENT_SAFETY_KEY'
setx CONTENT_SAFETY_ENDPOINT 'YOUR_CONTENT_SAFETY_ENDPOINT'

環境変数を追加した後、実行中のプログラムのうち、環境変数を読み取るプログラム (コンソール ウィンドウを含む) の再起動が必要となる場合があります。

テキスト コンテンツを分析する

次のセクションでは、Python SDK を使ったサンプル要求について説明します。

  1. コマンド プロンプトを開き、プロジェクト フォルダーに移動し、quickstart.py という名前の新しいファイルを作成します。

  2. このコマンドを実行して、Azure AI Content Safety ライブラリをインストールします。

    pip install azure-ai-contentsafety
    
  3. 次のコードを quickstart.py にコピーします。

    import os
    from azure.ai.contentsafety import ContentSafetyClient
    from azure.core.credentials import AzureKeyCredential
    from azure.core.exceptions import HttpResponseError
    from azure.ai.contentsafety.models import AnalyzeTextOptions, TextCategory
    
    def analyze_text():
        # analyze text
        key = os.environ["CONTENT_SAFETY_KEY"]
        endpoint = os.environ["CONTENT_SAFETY_ENDPOINT"]
    
        # Create an Azure AI Content Safety client
        client = ContentSafetyClient(endpoint, AzureKeyCredential(key))
    
        # Contruct request
        request = AnalyzeTextOptions(text="Your input text")
    
        # Analyze text
        try:
            response = client.analyze_text(request)
        except HttpResponseError as e:
            print("Analyze text failed.")
            if e.error:
                print(f"Error code: {e.error.code}")
                print(f"Error message: {e.error.message}")
                raise
            print(e)
            raise
    
        hate_result = next(item for item in response.categories_analysis if item.category == TextCategory.HATE)
        self_harm_result = next(item for item in response.categories_analysis if item.category == TextCategory.SELF_HARM)
        sexual_result = next(item for item in response.categories_analysis if item.category == TextCategory.SEXUAL)
        violence_result = next(item for item in response.categories_analysis if item.category == TextCategory.VIOLENCE)
    
        if hate_result:
            print(f"Hate severity: {hate_result.severity}")
        if self_harm_result:
            print(f"SelfHarm severity: {self_harm_result.severity}")
        if sexual_result:
            print(f"Sexual severity: {sexual_result.severity}")
        if violence_result:
            print(f"Violence severity: {violence_result.severity}")
    
    if __name__ == "__main__":
        analyze_text()
    
  4. "Your input text" を、使うテキスト コンテンツに置き換えます。

    ヒント

    テキストのサイズと細分性

    テキスト送信の既定の最大長は 1,000 文字です。

  5. そして、クイック スタート ファイルで python コマンドを使用して、アプリケーションを実行します。

    python quickstart.py
    

リファレンス ドキュメント | ライブラリ ソース コード | 成果物 (Maven) | サンプル

前提条件

  • Azure サブスクリプション - 無料アカウントを作成します
  • 最新バージョンの Java Development Kit (JDK)
  • Gradle ビルド ツール、または別の依存関係マネージャー。
  • Azure サブスクリプションを入手したら、Azure portal で Content Safety リソースを作成し、キーとエンドポイントを取得します。 リソースの一意の名前を入力し、サブスクリプションを選択して、リソース グループ、サポートされているリージョン (米国東部または西ヨーロッパ)、サポートされている価格レベルを選択します。 [作成] を選択します。
    • リソースのデプロイには数分かかります。 完了したら、[リソースに移動] を選びます。 左ペインの [リソース管理] で、[サブスクリプション キーとエンドポイント] を選びます。 エンドポイントといずれかのキーが、API の呼び出しに使われます。

アプリケーションの設定

新しい Gradle プロジェクトを作成します。

コンソール ウィンドウ (cmd、PowerShell、Bash など) で、ご利用のアプリ用に新しいディレクトリを作成し、そこに移動します。

mkdir myapp && cd myapp

作業ディレクトリから gradle init コマンドを実行します。 次のコマンドを実行すると、build.gradle.kts を含む、Gradle 用の重要なビルド ファイルが作成されます。これは、アプリケーションを作成して構成するために、実行時に使用されます。

gradle init --type basic

DSL を選択するよう求められたら、Kotlin を選択します。

作業ディレクトリから次のコマンドを実行し、プロジェクト ソース フォルダーを作成します。

mkdir -p src/main/java

新しいフォルダーに移動し、ContentSafetyQuickstart.java という名前のファイルを作成します。

クライアント SDK のインストール

このクイックスタートでは、Gradle 依存関係マネージャーを使用します。 クライアント ライブラリとその他の依存関係マネージャーの情報については、Maven Central Repository を参照してください。

build.gradle.kts を検索し、任意の IDE またはテキスト エディターで開きます。 その後、次のビルド構成をコピーします。 この構成では、エントリ ポイントが ContentSafetyQuickstart クラスである Java アプリケーションとしてプロジェクトを定義します。 これによって、Azure AI Vision ライブラリがインポートされます。

plugins {
    java
    application
}
application { 
    mainClass.set("ContentSafetyQuickstart")
}
repositories {
    mavenCentral()
}
dependencies {
    implementation(group = "com.azure", name = "azure-ai-contentsafety", version = "1.0.0")
}

環境変数を作成する

この例では、アプリケーションを実行しているローカル コンピューター上の環境変数に資格情報を書き込みます。

ヒント

キーは、コードに直接含めないようにし、公開しないでください。 Azure Key Vault などのその他の認証オプションについては、Azure AI サービスのセキュリティに関する記事を参照してください。

キーとエンドポイントの環境変数を設定するには、コンソール ウィンドウを開き、オペレーティング システムと開発環境の指示に従います。

  1. CONTENT_SAFETY_KEY 環境変数を設定するには、YOUR_CONTENT_SAFETY_KEY をリソースのキーの 1 つに置き換えます。
  2. CONTENT_SAFETY_ENDPOINT 環境変数を設定するには、YOUR_CONTENT_SAFETY_ENDPOINT をリソースのエンドポイントに置き換えます。
setx CONTENT_SAFETY_KEY 'YOUR_CONTENT_SAFETY_KEY'
setx CONTENT_SAFETY_ENDPOINT 'YOUR_CONTENT_SAFETY_ENDPOINT'

環境変数を追加した後、実行中のプログラムのうち、環境変数を読み取るプログラム (コンソール ウィンドウを含む) の再起動が必要となる場合があります。

テキスト コンテンツを分析する

適当なエディターまたは IDE で ContentSafetyQuickstart.java を開き、次のコードを貼り付けます。 <your text sample> を、使うテキスト コンテンツに置き換えます。

ヒント

テキストのサイズと細分性

テキスト送信の既定の最大長は 1,000 文字です。

import com.azure.ai.contentsafety.ContentSafetyClient;
import com.azure.ai.contentsafety.ContentSafetyClientBuilder;
import com.azure.ai.contentsafety.models.AnalyzeTextOptions;
import com.azure.ai.contentsafety.models.AnalyzeTextResult;
import com.azure.ai.contentsafety.models.TextCategoriesAnalysis;
import com.azure.core.credential.KeyCredential;
import com.azure.core.util.Configuration;


public class ContentSafetyQuickstart {
    public static void main(String[] args) {

        // get endpoint and key from environment variables
        String endpoint = System.getenv("CONTENT_SAFETY_ENDPOINT");
        String key = System.getenv("CONTENT_SAFETY_KEY");
        
        ContentSafetyClient contentSafetyClient = new ContentSafetyClientBuilder()
            .credential(new KeyCredential(key))
            .endpoint(endpoint).buildClient();

        AnalyzeTextResult response = contentSafetyClient.analyzeText(new AnalyzeTextOptions("<your text sample>"));

        for (TextCategoriesAnalysis result : response.getCategoriesAnalysis()) {
            System.out.println(result.getCategory() + " severity: " + result.getSeverity());
        }
    }
}

プロジェクトのルート フォルダーに戻り、次のようにしてアプリをビルドします。

gradle build

次に、gradle run コマンドでそれを実行します。

gradle run

出力

Hate severity: 0
SelfHarm severity: 0
Sexual severity: 0
Violence severity: 0

リファレンスのドキュメント | ライブラリのソース コード | パッケージ (npm) | サンプル |

前提条件

  • Azure サブスクリプション - 無料アカウントを作成します
  • 最新バージョンの Node.js
  • Azure サブスクリプションを入手したら、Azure portal で Content Safety リソースを作成し、キーとエンドポイントを取得します。 リソースの一意の名前を入力し、サブスクリプションを選択して、リソース グループ、サポートされているリージョン (米国東部または西ヨーロッパ)、サポートされている価格レベルを選択します。 [作成] を選択します。
    • リソースのデプロイには数分かかります。 完了したら、[リソースに移動] を選びます。 左ペインの [リソース管理] で、[サブスクリプション キーとエンドポイント] を選びます。 エンドポイントといずれかのキーが、API の呼び出しに使われます。

アプリケーションの設定

新しい Node.js アプリケーションを作成します。 コンソール ウィンドウ (cmd、PowerShell、Bash など) で、ご利用のアプリ用に新しいディレクトリを作成し、そこに移動します。

mkdir myapp && cd myapp

npm init コマンドを実行し、package.json ファイルを使用して node アプリケーションを作成します。

npm init

クライアント SDK のインストール

@azure-rest/ai-content-safety npm パッケージをインストールします。

npm install @azure-rest/ai-content-safety

また、環境変数を使用するには、 dotenv モジュールもインストールします。

npm install dotenv

アプリの package.json ファイルが依存関係によって更新されます。

環境変数を作成する

この例では、アプリケーションを実行しているローカル コンピューター上の環境変数に資格情報を書き込みます。

ヒント

キーは、コードに直接含めないようにし、公開しないでください。 Azure Key Vault などのその他の認証オプションについては、Azure AI サービスのセキュリティに関する記事を参照してください。

キーとエンドポイントの環境変数を設定するには、コンソール ウィンドウを開き、オペレーティング システムと開発環境の指示に従います。

  1. CONTENT_SAFETY_KEY 環境変数を設定するには、YOUR_CONTENT_SAFETY_KEY をリソースのキーの 1 つに置き換えます。
  2. CONTENT_SAFETY_ENDPOINT 環境変数を設定するには、YOUR_CONTENT_SAFETY_ENDPOINT をリソースのエンドポイントに置き換えます。
setx CONTENT_SAFETY_KEY 'YOUR_CONTENT_SAFETY_KEY'
setx CONTENT_SAFETY_ENDPOINT 'YOUR_CONTENT_SAFETY_ENDPOINT'

環境変数を追加した後、実行中のプログラムのうち、環境変数を読み取るプログラム (コンソール ウィンドウを含む) の再起動が必要となる場合があります。

テキスト コンテンツを分析する

ディレクトリに新しいファイル index.js を作成します。 そのファイルを任意のエディターまたは IDE で開き、次のコードを貼り付けます。 <your text sample> を、使うテキスト コンテンツに置き換えます。

ヒント

テキストのサイズと細分性

テキスト送信の既定の最大長は 1,000 文字です。

const ContentSafetyClient = require("@azure-rest/ai-content-safety").default,
  { isUnexpected } = require("@azure-rest/ai-content-safety");
const { AzureKeyCredential } = require("@azure/core-auth");

// Load the .env file if it exists
require("dotenv").config();

async function main() {
    // get endpoint and key from environment variables
    const endpoint = process.env["CONTENT_SAFETY_ENDPOINT"];
    const key = process.env["CONTENT_SAFETY_KEY"];
    
    const credential = new AzureKeyCredential(key);
    const client = ContentSafetyClient(endpoint, credential);
    
    // replace with your own sample text string 
    const text = "<your sample text>";
    const analyzeTextOption = { text: text };
    const analyzeTextParameters = { body: analyzeTextOption };
    
    const result = await client.path("/text:analyze").post(analyzeTextParameters);
    
    if (isUnexpected(result)) {
        throw result;
    }
    
    for (let i = 0; i < result.body.categoriesAnalysis.length; i++) {
    const textCategoriesAnalysisOutput = result.body.categoriesAnalysis[i];
    console.log(
      textCategoriesAnalysisOutput.category,
      " severity: ",
      textCategoriesAnalysisOutput.severity
    );
  }
}

main().catch((err) => {
    console.error("The sample encountered an error:", err);
});

クイック スタート ファイルで node コマンドを使用して、アプリケーションを実行します。

node index.js

出力

Hate severity:  0
SelfHarm severity:  0
Sexual severity:  0
Violence severity:  0

リソースをクリーンアップする

Azure AI サービス サブスクリプションをクリーンアップして削除したい場合は、リソースまたはリソース グループを削除することができます。 リソース グループを削除すると、それに関連付けられている他のリソースも削除されます。

次のステップ

Content Safety Studio を使って各カテゴリのフィルターを構成し、データセットでテストし、コードをエクスポートしてデプロイします。