これは、Recommendations AI、Retail Search、新しい Retail コンソールに関するドキュメントです。

コントロールを作成して管理する

このページでは、コントロールを追加、表示、編集、削除する方法について説明します。

  • サービス提供コントロールは、個々の Retail Search サービス提供構成を定義して適用するルールです。サービス提供構成の詳細については、サービス提供構成をご覧ください。
  • サイト全体のコントロールはすべての Retail Search 結果に適用されます。

サービス提供コントロール

サービス提供コントロールを使用すると、検索結果でのサービス提供構成をカスタマイズするルールを作成できます。

Cloud Console で、コントロールをトリガーする条件と、条件によってトリガーされるアクションで構成されるサービス コントロールを作成できます。その後、作成したすべての Retail Search サービス提供構成に新しいサービス提供コントロールを接続できます。

Retail Search のサービス提供構成には、コントロールとの多対多関係があります。1 つのサービス提供構成に複数のコントロールを追加でき、1 つのコントロールを複数のサービス提供構成に関連付けることができます。

サービス提供構成は、適用可能なコントロールを管理します。リクエストの有効なサービス提供構成のコントロールだけが、配信時に考慮されます。

コントロールを作成し、ライブ Retail Search サービス提供構成に追加したり、入れ替えたりできます。

サービス提供コントロールは、[コントロール] ページまたは Controls.create メソッドを使用してインラインでいつでも作成または変更できます。コンソールでは、オプションでサービス提供構成の作成プロセス中にコントロールを作成できます。

最大 1,000 個のサービス提供コントロールを作成できます。サービス提供構成には、リダイレクト コントロール以外の最大 100 個のサービス提供コントロールを含めることができます。サービス提供構成ごとの上限は 1,000 個です。

サービス提供コントロールでは次の設定を使用できます。

  • ブースト / 埋め込み: 返される結果リスト内の検索結果のランキングと順序に影響します。
  • フィルタ: 返された結果リストからフィルタを通過しない結果を削除します。
  • リダイレクト: 検索クエリに応じて、ユーザーを特定のページにリダイレクトします。
  • 言語: 検索クエリの言語をカスタマイズします。言語コントロールには、いくつかのタイプがあります。
    • 類義語: 検索クエリの類義語と考えられるものを拡張します。
    • 一方向の類義語: 特定のキーワードの類義語と考えられるものを一方向に拡張します。
    • 関連付けない: 特定のキーワードが表示されたときに、あるキーワード グループが検索で使用されないようにします。
    • 無視: 検索に特定のキーワードが使用されないようにします。
    • 置換: 検索クエリのキーワードを置き換えます。

これらのコントロールの例については、サービス提供コントロールをご覧ください。

リダイレクト制御のチュートリアル

このチュートリアルでは、リダイレクト コントロールの使用方法について説明します。


このタスクを Cloud Shell エディタで直接行う際の順を追ったガイダンスについては、[ガイドを表示] をクリックしてください。

ガイドを表示


以降のセクションでは、[ガイドを表示] をクリックした場合と同じ手順について説明します。

新しいサービス提供コントロールを作成する

Google Cloud Console の [コントロール] ページで、または Controls.create メソッドを使用してインラインで新しいサービス提供コントロールを作成します。

コントロールには、タイプに応じて異なる要件があります。作成するコントロール タイプの作成手順に進みます。

ブースト / 埋め込みコントロールを作成する

このコントロール タイプの詳細については、ブースト / 埋め込みコントロールをご覧ください。

Console

  1. Google Cloud Console の [Retail Controls] ページに移動します。

    [Controls] ページに移動

  2. [Serving controls] タブで、 [Create control] をクリックします。

    [コントロールの作成] ペインが開きます。

[Preferences] セクションで、次の操作を行います。

  1. [コントロール名] フィールドに、新しいコントロールの名前を入力します。

  2. (省略可)自動的に作成されたコントロール ID を変更するには、[コントロール名] フィールドにある [編集] をクリックして、新しいコントロール ID を入力します。

  3. コントロール タイプとして [ブースト / 埋め込みコントロール] を選択します。

  4. 続行して [トリガー] セクションに進みます。

[トリガー] セクションで、次の操作を行います。

  1. (省略可)[クエリを追加] ボタンをクリックして、ブーストまたは埋め込みのクエリキーワード(running shoes など)を追加し、各キーワードに対して次のいずれかを選択します。

    • 部分一致: このコントロールは、クエリ語句に部分一致が含まれている場合に適用されます。
    • 完全一致: このコントロールは、クエリ語句に完全に一致する語句がクエリに含まれている場合にのみ適用されます。

      これらの用語のいずれかがクエリに含まれている場合は、コントロールが適用されます。

    この条件に加えて期間の条件を指定すると、両方の条件が満たされた場合にのみコントロールが適用されます。

  2. (省略可)[時間範囲を追加] ボタンをクリックして、このコントロールを適用する時間範囲を 1 つ以上追加します。

    この期間条件に加えてクエリ条件を指定すると、両方の条件が満たされた場合にのみコントロールが適用されます。

  3. [続行] をクリックして [アクション] セクションに進みます。

[アクション] セクションで、次の操作を行います。

  1. [ブースト / 埋め込み商品] フィールドに商品属性のフィルタを追加します。

    フィルタリングと並べ替えで記載されているフィルタ式の構文を使用してください。

    たとえば、「product1」と「product2」の赤と青のバージョンを指定するには: (id: ANY("product1","product2")) AND (colorFamily: ANY("Red","Blue"))

  2. [ブースト / 埋め込み値] には、スライダーを使用してブーストの強さを設定します。正の値は結果をブーストし、負の値は結果を埋め込みます。

  3. [続行] をクリックして [サービス提供構成] セクションに進みます。

[サービス提供構成] セクションで、次の操作を行います。

  1. コントロールを適用するサービス提供構成を選択します。

  2. コントロール設定を送信します。

    新規作成または更新されたコントロールがライブ トラフィックを提供できるようになるまでに、数分かかります。変更が適用されたかどうかは、コンソールの [評価] ページでテストできます。

新しいコントロールは、[Controls] ページの [erving controls] タブに表示されます。

curl

リクエスト本文に含まれるコントロール ID と Control インスタンスを使用して、Control.create リクエストを行います。

フィールドの詳細については、Controls API リファレンスControls.create API リファレンスをご覧ください。

curl -X POST \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "Content-Type: application/json; charset=utf-8" \
     --data '{
              "displayName": DISPLAY_NAME,
              "solutionTypes": [ "SOLUTION_TYPE_SEARCH" ],
              "rule": {
                "condition": {
                  "queryTerms": [
                    {
                      "value": "VALUE_1",
                      "fullMatch": "FULLMATCH_BOOLEAN_1"
                    },
                    {
                      "value": "VALUE_2",
                      "fullMatch": "FULLMATCH_BOOLEAN_2"
                    }
                  ],
                  "activeTimeRange": [
                    {
                      "startTime": "START_TIMESTAMP_1",
                      "endTime": "END_TIMESTAMP_1"
                    },
                    {
                      "startTime": "START_TIMESTAMP_2",
                      "endTime": "END_TIMESTAMP_2"
                    }
                  ]
                },
                "boostAction": {
                  "boost": BOOST_NUMBER,
                  "productsFilter": "FILTER_EXPRESSION"
                }
              }
    }' \
    "https://retail.googleapis.com/v2beta/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/controls?controlId=CONTROL_ID"
  

新規作成または更新されたコントロールがライブ トラフィックを提供できるようになるまでに、数分かかります。変更が適用されたかどうかは、コンソールの [評価] ページでテストできます。

サービス提供構成にコントロールを追加するには、ServingConfig.addControl メソッドを使用します。[コントロールをインラインでサービス提供構成に追加する][addcontrol-inline] をご覧ください。

フィルタ オプションを作成する

このコントロール タイプの詳細については、フィルタ オプションをご覧ください。

Console

  1. Google Cloud Console の [Retail Controls] ページに移動します。

    [Controls] ページに移動

  2. [Serving controls] タブで、 [Create control] をクリックします。

    [コントロールの作成] ペインが開きます。

[Preferences] セクションで、次の操作を行います。

  1. [コントロール名] フィールドに、新しいコントロールの名前を入力します。

  2. (省略可)自動的に作成されたコントロール ID を変更するには、[コントロール名] フィールドにある [編集] をクリックして、新しいコントロール ID を入力します。

  3. コントロール タイプとして [フィルタ オプション] を選択します。

  4. 続行して [トリガー] セクションに進みます。

[トリガー] セクションで、次の操作を行います。

  1. (省略可)[クエリを追加] ボタンをクリックして、フィルタするクエリキーワード(running shoes など)を追加し、各キーワードに対して次のいずれかを選択します。

    • 部分一致: このコントロールは、クエリ語句に部分一致が含まれている場合に適用されます。
    • 完全一致: このコントロールは、クエリ語句に完全に一致する語句がクエリに含まれている場合にのみ適用されます。

    これらの用語のいずれかがクエリに含まれている場合は、コントロールが適用されます。

    この条件に加えて期間の条件を指定すると、両方の条件が満たされた場合にのみコントロールが適用されます。

  2. (省略可)[時間範囲を追加] ボタンをクリックして、このコントロールを適用する時間範囲を 1 つ以上追加します。

    この期間条件に加えてクエリ条件を指定すると、両方の条件が満たされた場合にのみコントロールが適用されます。

  3. [続行] をクリックして [アクション] セクションに進みます。

[アクション] セクションで、次の操作を行います。

  1. [フィルタ アクション] フィールドに、商品属性のフィルタを追加します。

    フィルタリングと並べ替えで記載されているフィルタ式の構文を使用してください。

    たとえば、「product1」と「product2」の赤と青のバージョンを指定するには: (id: ANY("product1","product2")) AND (colorFamily: ANY("Red","Blue"))

  2. [続行] をクリックして [サービス提供構成] セクションに進みます。

[サービス提供構成] セクションで、次の操作を行います。

  1. コントロールを適用するサービス提供構成を選択します。

  2. コントロール設定を送信します。

    新規作成または更新されたコントロールがライブ トラフィックを提供できるようになるまでに、数分かかります。変更が適用されたかどうかは、コンソールの [評価] ページでテストできます。

新しいコントロールは、[Controls] ページの [erving controls] タブに表示されます。

curl

リクエスト本文に含まれるコントロール ID と Control インスタンスを使用して、Control.create リクエストを行います。

フィールドの詳細については、Controls API リファレンスControls.create API リファレンスをご覧ください。

この例では、フィールドを示します

curl -X POST \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "Content-Type: application/json; charset=utf-8" \
     --data '{
              "displayName": DISPLAY_NAME,
              "solutionTypes": [ "SOLUTION_TYPE_SEARCH" ],
              "rule": {
                "condition": {
                  "queryTerms": [
                    {
                      "value": "VALUE_1",
                      "fullMatch": "FULLMATCH_BOOLEAN_1"
                    },
                    {
                      "value": "VALUE_2",
                      "fullMatch": "FULLMATCH_BOOLEAN_2"
                    }
                  ],
                  "activeTimeRange": [
                    {
                      "startTime": "START_TIMESTAMP_1",
                      "endTime": "END_TIMESTAMP_1"
                    },
                    {
                      "startTime": "START_TIMESTAMP_2",
                      "endTime": "END_TIMESTAMP_2"
                    }
                  ]
                },
                "filterAction": {
                  "filter": "FILTER_EXPRESSION"
                }
              }
    }' \
    "https://retail.googleapis.com/v2beta/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/controls?controlId=CONTROL_ID"
  

サービス提供構成にコントロールを追加するには、ServingConfig.addControl メソッドを使用します。[コントロールをインラインでサービス提供構成に追加する][addcontrol-inline] をご覧ください。

リダイレクト コントロールを作成する

このコントロール タイプの詳細については、リダイレクト コントロールをご覧ください。

Console

  1. Google Cloud Console の [Retail Controls] ページに移動します。

    [Controls] ページに移動

  2. [Serving controls] タブで、 [Create control] をクリックします。

    [コントロールの作成] ペインが開きます。

[Preferences] セクションで、次の操作を行います。

  1. [コントロール名] フィールドに、新しいコントロールの名前を入力します。

  2. (省略可)自動的に作成されたコントロール ID を変更するには、[コントロール名] フィールドにある [編集] をクリックして、新しいコントロール ID を入力します。

  3. コントロール タイプとして [リダイレクト制御] を選択します。

  4. 続行して [トリガー] セクションに進みます。

[トリガー] セクションで、少なくとも 1 つのクエリ用語または時間範囲トリガーを作成します。リダイレクト コントロールには少なくとも 1 つのトリガーが必要です。

  1. [クエリを追加] ボタンをクリックしてフィルタするクエリキーワード(running shoes など)を追加し、各キーワードに対して次のいずれかを選択します。

    • 部分一致: このコントロールは、クエリ語句に部分一致が含まれている場合に適用されます。
    • 完全一致: このコントロールは、クエリ語句に完全に一致する語句がクエリに含まれている場合にのみ適用されます。

    これらの用語のいずれかがクエリに含まれている場合は、コントロールが適用されます。

    この条件に加えて期間の条件を指定すると、両方の条件が満たされた場合にのみコントロールが適用されます。

  2. [時間範囲を追加] ボタンをクリックして、このコントロールを適用する時間範囲を 1 つ以上追加します。

    この期間条件に加えてクエリ条件を指定すると、両方の条件が満たされた場合にのみコントロールが適用されます。

  3. [続行] をクリックして [アクション] セクションに進みます。

[アクション] セクションで、次の操作を行います。

  1. このコントロールがトリガーされたときにリダイレクトする URI を入力します。

  2. [続行] をクリックして [サービス提供構成] セクションに進みます。

[サービス提供構成] セクションで、次の操作を行います。

  1. コントロールを適用するサービス提供構成を選択します。

  2. コントロール設定を送信します。

    新規作成または更新されたコントロールがライブ トラフィックを提供できるようになるまでに、数分かかります。変更が適用されたかどうかは、コンソールの [評価] ページでテストできます。

新しいコントロールは、[Controls] ページの [erving controls] タブに表示されます。

curl

リクエスト本文に含まれるコントロール ID と Control インスタンスを使用して、Control.create リクエストを行います。

フィールドの詳細については、Controls API リファレンスControls.create API リファレンスをご覧ください。

curl -X POST \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "Content-Type: application/json; charset=utf-8" \
     --data '{
              "displayName": DISPLAY_NAME,
              "solutionTypes": [ "SOLUTION_TYPE_SEARCH" ],
              "rule": {
                "condition": {
                  "queryTerms": [
                    {
                      "value": "VALUE_1",
                      "fullMatch": "FULLMATCH_BOOLEAN_1"
                    },
                    {
                      "value": "VALUE_2",
                      "fullMatch": "FULLMATCH_BOOLEAN_2"
                    }
                  ],
                  "activeTimeRange": [
                    {
                      "startTime": "START_TIMESTAMP_1",
                      "endTime": "END_TIMESTAMP_1"
                    },
                    {
                      "startTime": "START_TIMESTAMP_2",
                      "endTime": "END_TIMESTAMP_2"
                    }
                  ]
                },
                "redirectAction": {
                  "redirectUri": REDIRECT_URI,
                }
              }
    }' \
    "https://retail.googleapis.com/v2beta/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/controls?controlId=CONTROL_ID"
  

サービス提供構成にコントロールを追加するには、ServingConfig.addControl メソッドを使用します。[コントロールをインラインでサービス提供構成に追加する][addcontrol-inline] をご覧ください。

双方向の類義語コントロールを作成する

このコントロール タイプの詳細については、双方向の類義語コントロールをご覧ください。

Console

  1. Google Cloud Console の [Retail Controls] ページに移動します。

    [Controls] ページに移動

  2. [Serving controls] タブで、 [Create control] をクリックします。

  3. [コントロール名] フィールドに、新しいコントロールの名前を入力します。

    [コントロールの作成] ペインが開きます。

[Preferences] セクションで、次の操作を行います。

  1. (省略可)自動的に作成されたコントロール ID を変更するには、[コントロール名] フィールドにある [編集] をクリックして、新しいコントロール ID を入力します。

  2. コントロール タイプとして [双方向の類義語コントロール] を選択します。

  3. 続行して [トリガー] セクションに進みます。

[トリガー] セクションで、次の操作を行います。

  1. (省略可)[時間範囲を追加] ボタンをクリックして、このコントロールを適用する時間範囲を 1 つ以上追加します。

  2. [続行] をクリックして [アクション] セクションに進みます。

[アクション] セクションで、次の操作を行います。

  1. [類義語] フィールドに、互いに類義語であるクエリキーワード(shirttop など)を 2 ~ 100 個入力します。

    これらの語句のいずれかがクエリに含まれている場合、検索ではその他のクエリ語句は含まれている語句の類義語と見なされます。

  2. [続行] をクリックして [サービス提供構成] セクションに進みます。

[サービス提供構成] セクションで、次の操作を行います。

  1. コントロールを適用するサービス提供構成を選択します。

  2. コントロール設定を送信します。

    新規作成または更新されたコントロールがライブ トラフィックを提供できるようになるまでに、数分かかります。変更が適用されたかどうかは、コンソールの [評価] ページでテストできます。

新しいコントロールは、[Controls] ページの [erving controls] タブに表示されます。

curl

リクエスト本文に含まれるコントロール ID と Control インスタンスを使用して、Control.create リクエストを行います。

フィールドの詳細については、Controls API リファレンスControls.create API リファレンスをご覧ください。

curl -X POST \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "Content-Type: application/json; charset=utf-8" \
     --data '{
              "displayName": DISPLAY_NAME,
              "solutionTypes": [ "SOLUTION_TYPE_SEARCH" ],
              "rule": {
                "condition": {
                  "activeTimeRange": [
                    {
                      "startTime": "START_TIMESTAMP_1",
                      "endTime": "END_TIMESTAMP_1"
                    },
                    {
                      "startTime": "START_TIMESTAMP_2",
                      "endTime": "END_TIMESTAMP_2"
                    }
                    ]
                },
                "twoWaySynonymAction": {
                  "synonyms": [
                    "SYNONYM_1",
                    "SYNONYM_2"
                  ]
                }
              }
    }' \
    "https://retail.googleapis.com/v2beta/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/controls?controlId=CONTROL_ID"
  

サービス提供構成にコントロールを追加するには、ServingConfig.addControl メソッドを使用します。[コントロールをインラインでサービス提供構成に追加する][addcontrol-inline] をご覧ください。

一方向の類義語コントロールを作成する

このコントロール タイプの詳細については、一方向の類義語コントロールをご覧ください。

Console

  1. Google Cloud Console の [Retail Controls] ページに移動します。

    [Controls] ページに移動

  2. [Serving controls] タブで、 [Create control] をクリックします。

    [コントロールの作成] ペインが開きます。

[Preferences] セクションで、次の操作を行います。

  1. [コントロール名] フィールドに、新しいコントロールの名前を入力します。

  2. (省略可)自動的に作成されたコントロール ID を変更するには、[コントロール名] フィールドにある [編集] をクリックして、新しいコントロール ID を入力します。

  3. コントロール タイプとして [一方向の類義語コントロール] を選択します。

  4. 続行して [トリガー] セクションに進みます。

[トリガー] セクションで、次の操作を行います。

  1. (省略可)[時間範囲を追加] ボタンをクリックして、このコントロールを適用する時間範囲を 1 つ以上追加します。

  2. [続行] をクリックして [アクション] セクションに進みます。

[アクション] セクションで、次の操作を行います。

  1. [クエリキーワード] フィールドに、いずれかがクエリに含まれるときに類義語を関連付ける必要のある用語(shoes など)を入力します。

  2. [類義語] フィールドに、指定したクエリキーワードの類義語として使用するキーワードを入力します(例: クエリキーワード shoes の一方向の類義語としての sneakerssandals)。

  3. [続行] をクリックして [サービス提供構成] セクションに進みます。

[サービス提供構成] セクションで、次の操作を行います。

  1. コントロールを適用するサービス提供構成を選択します。

  2. コントロール設定を送信します。

    新規作成または更新されたコントロールがライブ トラフィックを提供できるようになるまでに、数分かかります。変更が適用されたかどうかは、コンソールの [評価] ページでテストできます。

新しいコントロールは、[Controls] ページの [erving controls] タブに表示されます。

curl

リクエスト本文に含まれるコントロール ID と Control インスタンスを使用して、Control.create リクエストを行います。

フィールドの詳細については、Controls API リファレンスControls.create API リファレンスをご覧ください。

curl -X POST \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "Content-Type: application/json; charset=utf-8" \
     --data '{
              "displayName": DISPLAY_NAME,
              "solutionTypes": [ "SOLUTION_TYPE_SEARCH" ],
              "rule": {
                "condition": {
                  "activeTimeRange": [
                    {
                      "startTime": "START_TIMESTAMP_1",
                      "endTime": "END_TIMESTAMP_1"
                    },
                    {
                      "startTime": "START_TIMESTAMP_2",
                      "endTime": "END_TIMESTAMP_2"
                    }
                  ]
                },
                "oneWaySynonymAction": {
                  "synonyms": [
                    "queryTerms": [
                      "QUERY_TERM_1",
                      "QUERY_TERM_2"
                    ],
                    "synonyms": [
                      "SYNONYM_1",
                      "SYNONYM_2"
                    ]
                  ]
                }
              }
    }' \
    "https://retail.googleapis.com/v2beta/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/controls?controlId=CONTROL_ID"
  

サービス提供構成にコントロールを追加するには、ServingConfig.addControl メソッドを使用します。[コントロールをインラインでサービス提供構成に追加する][addcontrol-inline] をご覧ください。

「関連付けなし」のコントロールを作成する

このコントロール タイプの詳細については、非関連付けコントロールをご覧ください。

Console

  1. Google Cloud Console の [Retail Controls] ページに移動します。

    [Controls] ページに移動

  2. [Serving controls] タブで、 [Create control] をクリックします。

    [コントロールの作成] ペインが開きます。

[Preferences] セクションで、次の操作を行います。

  1. [コントロール名] フィールドに、新しいコントロールの名前を入力します。

  2. (省略可)自動的に作成されたコントロール ID を変更するには、[コントロール名] フィールドにある [編集] をクリックして、新しいコントロール ID を入力します。

  3. コントロール タイプとして [コントロールを関連付けない] を選択します。

  4. 続行して [トリガー] セクションに進みます。

[トリガー] セクションで、次の操作を行います。

  1. (省略可)[時間範囲を追加] ボタンをクリックして、このコントロールを適用する時間範囲を 1 つ以上追加します。

  2. [続行] をクリックして [アクション] セクションに進みます。

[アクション] セクションで、次の操作を行います。

  1. [クエリキーワード] フィールドに、他のクエリと明確に区別するキーワード(gShoe など)を入力します。

  2. [関連付けられていないキーワード] フィールドに、指定したクエリキーワードに関連付けてはならないキーワードを入力します。

    たとえば、クエリキーワード gShoe と キーワード cheap の関連付けを解除できます。

  3. [続行] をクリックして [サービス提供構成] セクションに進みます。

[サービス提供構成] セクションで、次の操作を行います。

  1. コントロールを適用するサービス提供構成を選択します。

  2. コントロール設定を送信します。

    新規作成または更新されたコントロールがライブ トラフィックを提供できるようになるまでに、数分かかります。変更が適用されたかどうかは、コンソールの [評価] ページでテストできます。

新しいコントロールは、[Controls] ページの [erving controls] タブに表示されます。

curl

リクエスト本文に含まれるコントロール ID と Control インスタンスを使用して、Control.create リクエストを行います。

フィールドの詳細については、Controls API リファレンスControls.create API リファレンスをご覧ください。

curl -X POST \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "Content-Type: application/json; charset=utf-8" \
     --data '{
              "displayName": DISPLAY_NAME,
              "solutionTypes": [ "SOLUTION_TYPE_SEARCH" ],
              "rule": {
                "condition": {
                  "activeTimeRange": [
                    {
                      "startTime": "START_TIMESTAMP_1",
                      "endTime": "END_TIMESTAMP_1"
                    },
                    {
                      "startTime": "START_TIMESTAMP_2",
                      "endTime": "END_TIMESTAMP_2"
                    }
                  ]
                },
                "doNotAssociateAction": {
                    "queryTerms": [
                      "QUERY_TERM_1",
                      "QUERY_TERM_2"
                    ],
                    "doNotAssociateTerms": [
                      "DISSOCIATED_TERM_1",
                      "DISSOCIATED_TERM_2"
                    ]
                  ]
                }
              }
    }' \
    "https://retail.googleapis.com/v2beta/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/controls?controlId=CONTROL_ID"
  

サービス提供構成にコントロールを追加するには、ServingConfig.addControl メソッドを使用します。[コントロールをインラインでサービス提供構成に追加する][addcontrol-inline] をご覧ください。

無視コントロールを作成する

このコントロール タイプの詳細については、類義語コントロールをご覧ください。

Console

  1. Google Cloud Console の [Retail Controls] ページに移動します。

    [Controls] ページに移動

  2. [Serving controls] タブで、 [Create control] をクリックします。

    [コントロールの作成] ペインが開きます。

[Preferences] セクションで、次の操作を行います。

  1. [コントロール名] フィールドに、新しいコントロールの名前を入力します。

  2. (省略可)自動的に作成されたコントロール ID を変更するには、[コントロール名] フィールドにある [編集] をクリックして、新しいコントロール ID を入力します。

  3. コントロール タイプとして [コントロールを関連付けない] を選択します。

  4. 続行して [トリガー] セクションに進みます。

[トリガー] セクションで、次の操作を行います。

  1. (省略可)[時間範囲を追加] ボタンをクリックして、このコントロールを適用する時間範囲を 1 つ以上追加します。

  2. [続行] をクリックして [アクション] セクションに進みます。

[アクション] セクションで、次の操作を行います。

  1. [キーワードを無視] フィールドに、クエリキーワードで入力するときに検索が無視するキーワード(shoddy など)を入力します。

  2. [続行] をクリックして [サービス提供構成] セクションに進みます。

[サービス提供構成] セクションで、次の操作を行います。

  1. コントロールを適用するサービス提供構成を選択します。

  2. コントロール設定を送信します。

    新規作成または更新されたコントロールがライブ トラフィックを提供できるようになるまでに、数分かかります。変更が適用されたかどうかは、コンソールの [評価] ページでテストできます。

新しいコントロールは、[Controls] ページの [erving controls] タブに表示されます。

curl

リクエスト本文に含まれるコントロール ID と Control インスタンスを使用して、Control.create リクエストを行います。

フィールドの詳細については、Controls API リファレンスControls.create API リファレンスをご覧ください。

curl -X POST \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "Content-Type: application/json; charset=utf-8" \
     --data '{
              "displayName": DISPLAY_NAME,
              "solutionTypes": [ "SOLUTION_TYPE_SEARCH" ],
              "rule": {
                "condition": {
                  "activeTimeRange": [
                    {
                      "startTime": "START_TIMESTAMP_1",
                      "endTime": "END_TIMESTAMP_1"
                    },
                    {
                      "startTime": "START_TIMESTAMP_2",
                      "endTime": "END_TIMESTAMP_2"
                    }
                  ]
                },
                "ignoreAction": {
                  "ignoreTerms": [
                      "IGNORE_TERM_1",
                      "IGNORE_TERM_2"
                    ]
                  ]
                }
              }
    }' \
    "https://retail.googleapis.com/v2beta/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/controls?controlId=CONTROL_ID"
  

サービス提供構成にコントロールを追加するには、ServingConfig.addControl メソッドを使用します。[コントロールをインラインでサービス提供構成に追加する][addcontrol-inline] をご覧ください。

代替コントロールを作成する

このコントロール タイプの詳細については、代替コントロールをご覧ください。

Console

  1. Google Cloud Console の [Retail Controls] ページに移動します。

    [Controls] ページに移動

  2. [Serving controls] タブで、 [Create control] をクリックします。

    [コントロールの作成] ペインが開きます。

[Preferences] セクションで、次の操作を行います。

  1. [コントロール名] フィールドに、新しいコントロールの名前を入力します。

  2. (省略可)自動的に作成されたコントロール ID を変更するには、[コントロール名] フィールドにある [編集] をクリックして、新しいコントロール ID を入力します。

  3. コントロール タイプとして [代替コントロール] を選択します。

  4. 続行して [トリガー] セクションに進みます。

[トリガー] セクションで、次の操作を行います。

  1. (省略可)[時間範囲を追加] ボタンをクリックして、このコントロールを適用する時間範囲を 1 つ以上追加します。

  2. [続行] をクリックして [アクション] セクションに進みます。

[アクション] セクションで、次の操作を行います。

  1. [クエリキーワード] フィールドに、代替キーワードで置き換えるクエリキーワード(gShoe など)を入力します。

  2. [代替キーワード] フィールドに、指定したクエリキーワードを置き換えるキーワードを入力します。

    たとえば、クエリキーワード gShoe を代替キーワード Google Shoe に置き換えることができます。

  3. [続行] をクリックして [サービス提供構成] セクションに進みます。

[サービス提供構成] セクションで、次の操作を行います。

  1. コントロールを適用するサービス提供構成を選択します。

  2. コントロール設定を送信します。

    新規作成または更新されたコントロールがライブ トラフィックを提供できるようになるまでに、数分かかります。変更が適用されたかどうかは、コンソールの [評価] ページでテストできます。

新しいコントロールは、[Controls] ページの [erving controls] タブに表示されます。

curl

リクエスト本文に含まれるコントロール ID と Control インスタンスを使用して、Control.create リクエストを行います。

フィールドの詳細については、Controls API リファレンスControls.create API リファレンスをご覧ください。

curl -X POST \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "Content-Type: application/json; charset=utf-8" \
     --data '{
              "displayName": DISPLAY_NAME,
              "solutionTypes": [ "SOLUTION_TYPE_SEARCH" ],
              "rule": {
                "condition": {
                  "activeTimeRange": [
                    {
                      "startTime": "START_TIMESTAMP_1",
                      "endTime": "END_TIMESTAMP_1"
                    },
                    {
                      "startTime": "START_TIMESTAMP_2",
                      "endTime": "END_TIMESTAMP_2"
                    }
                  ]
                },
                "replacementAction": {
                    "queryTerms": [
                      "QUERY_TERM_1",
                      "QUERY_TERM_2"
                    ],
                    "replacementTerm": "REPLACEMENT_TERM"
                  }
                }
              }
    }' \
    "https://retail.googleapis.com/v2beta/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/controls?controlId=CONTROL_ID"
  

サービス提供構成にコントロールを追加するには、ServingConfig.addControl メソッドを使用します。[コントロールをインラインでサービス提供構成に追加する][addcontrol-inline] をご覧ください。

新しいコントロールは、[Controls] ページの [erving controls] タブに表示されます。

サービス提供コントロールを表示して編集する

サービス提供コントロールを表示するには、Retail コンソールまたは Retail API を使用します。

コンソールでサービス提供コントロールを表示して編集する

コントロール ページの [サービス提供コントロール] タブには、すべてのサービス提供コントロールとそれに関連するサービス提供構成が一覧表示されます。コントロールの [コントロールを編集] アイコンをクリックすると、[コントロールの編集] パネルで、コントロールの設定や関連するサービス提供構成を変更できます。コントロールを削除するには、コントロールの [コントロールを削除] アイコンをクリックします。これにより、すべてのサービス提供構成からコントロールが削除されます。

サービス提供構成 ページで特定のサービス提供構成のコントロールを表示して編集することもできます。サービス提供構成をクリックすると、[詳細] ページが開き、その構成のすべてのサービス提供コントロールが一覧表示されます。コントロールの [コントロールを編集] アイコンをクリックすると、[コントロールを編集] パネルで設定を変更できます。 [コントロールを削除] アイコンをクリックして、コントロールをサービス提供構成から削除します(コントロールは削除されません)。

新規作成または更新されたコントロールがライブ トラフィックを提供できるようになるまでに、数分かかります。変更が適用されたかどうかは、コンソールの [評価] ページでテストできます。

サービス提供コントロールをインラインで表示する

単一のサービス提供コントロールをインラインで表示するには、Control.get を使用します。

このメソッドの詳細については、Control.get API リファレンスをご覧ください。

curl -X GET \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
'https://retail.googleapis.com/v2beta/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/controls/CONTROL_ID'

複数のサービス提供コントロールをインラインで一覧表示するには、Controls.list を使用します。

必要に応じて、パラメータ pageSize を使用して返される結果の最大数を設定できます。より多くの結果が使用可能な場合、list レスポンスにページトークンが含まれます。list リクエストの pageToken パラメータでページトークンを渡して、結果の次のページを取得できます。

特定のサービス提供構成に関連付けられたコントロールだけを一覧表示するには、filter クエリ パラメータを使用してサービス提供構成 ID を指定します。

このメソッドの詳細については、Control.list API リファレンスをご覧ください。

curl -X GET \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
'https://retail.googleapis.com/v2beta/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/controls?pageSize=PAGE_SIZE&pageToken=PAGE_TOKEN&filter=servingConfig=SERVING_CONFIG_ID

サービス提供コントロールをインラインでパッチ適用する

サービス提供コントロールのフィールドを更新するには、Controls.patch を使用し、リクエスト本文に Control のインスタンスを含めます。更新するフィールドは updateMask パラメータで指定するか、サポートされているすべてのフィールドを更新するように設定しないでください。

このメソッドの詳細については、Controls.patch API リファレンスをご覧ください。

curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d '{
      "name": "projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/controls/CONTROL_ID",
      "FIELD_NAME_1": "NEW_FIELD_VALUE_1"
      "FIELD_NAME_2": "NEW_FIELD_VALUE_2"
    }' \
'https://retail.googleapis.com/v2beta/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/controls/CONTROL_ID?updateMask=FIELD_NAME_1,FIELD_NAME_2'

サービス提供構成にインラインでコントロールを追加する

サービス提供構成にコントロールを追加するには、ServingConfig.addControl を使用します。

このメソッドの詳細については、ServingConfig.addControl API リファレンスをご覧ください。

このメソッドの例については、トピックのサービス提供構成の管理をご覧ください。

サービス提供構成からインラインでコントロールを削除する

サービス提供構成からコントロールを削除するには、ServingConfig.removeControl を使用します。

このメソッドの詳細については、ServingConfig.addControl API リファレンスをご覧ください。

このメソッドの例については、トピックのサービス提供構成の管理をご覧ください。

サービス提供コントロールを削除する

サービス提供コントロールは、コンソールから、または Controls.delete メソッドを使用してインラインで削除できます。

コンソールでサービス提供コントロールを削除する

サービス提供コントロールを削除し、そのコントロールを使用しているすべてのサービス提供構成からコントロールを削除します。

  1. Google Cloud Console の [Retail Controls] ページに移動します。

    [Controls] ページに移動

  2. 表の削除するコントロールの行で、 [Delete] をクリックします。

  3. 確認ウィンドウで、[Delete] をクリックして削除を完了します。

インラインでサービス提供コントロールを削除する

サービス提供コントロールをインラインで削除するには、Controls.delete を使用します。

このメソッドの詳細については、Controls.delete API リファレンスをご覧ください。

curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
'https://retail.googleapis.com/v2beta/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/controls/SERVING_CONTROL_ID'

サイト全体のコントロール

サイト全体のコントロールを使用すると、すべてのサービス提供構成にまたがって設定をグローバルに管理できます。

属性コントロール

サイト全体の属性コントロールは、Cloud Console でカタログの商品属性に使用できます。

サイト全体の属性コントロール機能は次のとおりです。

  • Indexable: この属性を使用すると、Retail Search でフィルタを使用してファセットをフィルタリングできます。
  • 動的ファセット: Retail Search では、ユーザーの過去の操作(ファセットのクリックや表示など)に基づいて、この属性が動的ファセットとして自動的に使用されます。属性の動的ファセットを有効にするには、その属性の Indexable を true に設定する必要があります。
  • 検索可能: この属性は Retail Search クエリで検索できます。これによって、この属性の再現率が向上します。このコントロールは、テキスト属性にのみ適用されます。

個々の属性に対してサイト全体の属性コントロールを有効または無効にできます。

動的ファセットは、サイト全体の属性コントロールとして使用できます。デフォルトでは、動的ファセットはすべてのカスタム属性に対して有効になっています。

カタログレベルの構成モードでは、サイト全体の属性コントロールを Indexable と検索可能で使用できます。

属性の構成と、デフォルト設定と許可される設定については、属性の構成をご覧ください。

サイト全体の属性コントロールを設定する

Google Cloud Console の [Controls] ページでサイト全体のコントロールを設定します。

サイト全体の属性コントロールをグローバルに設定するには、デフォルトのカタログレベルの構成モードを使用します。以前は、プロダクト レベルの構成がデフォルトのモードでした。まだプロダクト レベルの構成モードで、モードを切り替える必要がある場合は、Retail サポートにお問い合わせください。

  1. Google Cloud Console の [Retail Controls] ページに移動します。

    [Controls] ページに移動

  2. [Site-wide controls] タブに移動します。

    このタブには、サイト全体のコントロールを設定できるすべての商品属性の表が表示されます。

  3. [Control Controls] をクリックします。

  4. コントロールを有効または無効にします。

    • True: その属性のコントロールを有効にします。これは、Retail API の商品レベルの属性構成をオーバーライドします。
    • False: その属性のコントロールを無効にします。これは、Retail API の商品レベルの属性構成をオーバーライドします。

      動的ファセットを true に設定できるのは、インデックス可能に設定されている属性のみです。

  5. [コントロールを保存] をクリックします。

    Indexable と検索可能についての属性構成の設定の変更は、12 時間以内、または次回のカタログ取り込み直後に有効になります。 動的ファセット構成の変更は最大 2 日かかります。変更が「評価」ページで適用されているかどうかをテストできます。このページには変更がすぐに反映されます。