結果を向上させる

AI Commerce Search には、検索で上位に表示するレコードを指定できる機能があります。ブースト ルールを適用して、返された検索アイテムに優先順位を付けたり、優先順位を下げたりすることで、結果のランキングを制御できます。

ブーストを使用すると、定義した条件に基づいて特定のアイテムをプロモート(ブースト)または降格(埋め込み)することで、結果のランキングを制御できます。結果セットからアイテムを削除するフィルタリングとは異なり、ブーストは、すでに返される資格のあるアイテムの位置を調整します。

ブーストとフィルタのオーバーライド

ブースト ルールよりも優先される一般的なフィルタタイプの例を次に示します。

  1. ユーザー指定 。価格やブランドなどがこれに該当します。エンドユーザーには、ウェブサイトのタイルまたはファセットとして表示されます。
  • トピック性(関連性) 。これらのフィルタは、検索クエリにのみ存在します(ブラウジングには存在しません)。関連性の低い商品は検索結果から除外されます。たとえば、「冷蔵庫」を検索しても、電子レンジや冷蔵庫の取っ手などのアクセサリは返されません。 このフィルタは、冷蔵庫の検索で電子レンジをブーストしないように認識します。

ブースト ルール

ブースト ルールは、関連性順に並べられた検索や、並べ替え前のスコアを含むブラウジング結果など、基本関連性スコアがある場合にのみ適用できます。ブーストは、検索結果とブラウジング結果に適用される乗数関数です。ブーストの構文とロジックは、次のように分類できます。

  • アクセス方法 。ブーストは、在庫状況のルールをオーバーライドできません。アイテムがフィルタで除外されている場合(在庫切れなど)、ブーストしても表示されません。

  • 演算子 。ブースト条件の数値フィールドには、標準の厳密なフィルタリングでは使用できない、より大きい、より小さいなどの演算を使用できます。

ブースト値または埋め込み値

1 つのプロダクトは、Search API の boostSpec クラスで設定された複数のブースト ルールまたは埋め込みルールによって条件付けできます。ブースト値は、-1.01.0 の浮動小数点数です。

  • 正の値(0.0 ~ 1.0): アイテムをプロモートし、結果の上位に移動します。値が 1.0 の場合、プロモーションは最大になります。

  • 負の値(-1.0 ~ 0.0): アイテムを降格(埋め込み)し、結果の下位に移動します。値が -1.0 の場合、降格は最大になります。

1 つのプロダクトに対する複数のブースト ルールまたは埋め込みルール

複数のブースト ルールまたは埋め込みルールがプロダクトに影響する可能性があり、ブースト値の合計または最大値によって最終スコアが決まります。同じプロダクトに複数のブースト ルールが適用されている場合は、別のプロダクトのスコアによってそのプロダクトが上位から除外されていないことを常に確認してください。この問題が発生しにくくなるように、最大モードはデフォルトに設定されています。

あるプロダクトが 2、3、0.5 のブーストを受け、別のプロダクトが 0.5 のブーストを 1 回受けたとします。プロダクトのブースト スコアは 0.5 しかありませんが、繰り返しブーストされると、他のプロダクトよりも上位にランク付けされます。ブースト仕様を慎重に確認して、重複していないこと、または意図したとおりであることを確認してください。

競合の解決

同じプロダクトに複数のブースト ルールが適用される場合は、それらのルールがどのように相互作用するかを定義できます。

  • 最大ブースト ルール(デフォルト) : AI Commerce Search は最大値を確認し、他のルールを無視します。

  • ブースト効果の合計(代替設定): 降格とプロモーションがある場合、AI Commerce Search は適用可能なすべてのブースト ルールと埋め込みルールの値を合計します。これにより、累積効果が得られます。結果の合計は、ブーストの低下または埋め込み効果の相殺になります。

ブーストを構成する

ブースト ルールまたは埋め込みルールを使用してデータセットを構成するには、プロダクト属性(ブランドや価格など)に基づいて条件を定義し、一致するアイテムのランキング スコアを調整するために、-1.0(埋め込み)1.0(ブースト) のブースト値を割り当てます。ブースト コントロールまたは埋め込みコントロールを構成するには、次のプロダクトを使用できます。

  • 検索: トピック性フィルタと、サイト上のファセットなど、ユーザーが適用したその他のフィルタ。検索のブーストを構成する方法について詳しくは、こちらをご覧ください。

  • ブラウジング: テキストクエリがないため、ユーザーが適用したフィルタのみが適用されます。フィルタは、商品(スーツなど)が正しい商品カテゴリ(セーターなどではない)に属していることを確認するためにも適用されます。レコメンデーションのブーストを構成する方法について詳しくは、こちらをご覧ください。

データセットの例

構成オプション

AI Commerce Search では、ブーストは検索アルゴリズムによって生成された基本関連性スコアの乗数として適用されます。ブースト仕様を使用して検索リクエストでブースト ルールを直接構成するか、サービス提供構成にサービス提供コントロールを適用することで、ブースト ルールを構成できます。レスポンスでは、これらの条件に一致するアイテムの関連性スコアが変更され、完全に削除されることなく、結果リストの上位または下位に表示されます。検索のブースト コントロールまたは埋め込みコントロールを構成するには:

Cloud コンソール

  1. Gemini Enterprise for Customer Experience コンソールの AI Commerce Search の [コントロール] ページに移動します。

    [コントロール] ページに移動

  2. [Serving controls] タブで、コントロールの右にある [Edit] をクリックします。

  3. [Edit control] フライアウトで、[Control name] フィールドの下のフィールドをクリックして、コントロール名を変更します。

  4. 省略可: 検索の場合は、[Triggers] セクションで、このコントロールをトリガーするユーザーの行動のタイプを選択します。[Browse categories] セクションと [Search] セクションがグレー表示されます。

  5. 省略可: [Matching search terms] を編集します。

  6. 省略可: [Add Time Range] オプションをクリックして、このコントロールを適用する時間範囲を 1 つ以上追加します。

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

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

    結果をフィルタリングして 並べ替えるに記載されているフィルタ式の構文を使用してください。たとえば、「product1」と「product2」の赤と青のバージョンを指定するには: (id: ANY("product1","product2")) AND (colorFamily: ANY("Red","Blue"))

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

  10. [Serving configs] セクションで、コントロールを適用するサービス構成を選択します。

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

追加されたブースト ルールまたは埋め込みルールは、プロジェクトの [Serving Controls] に新しい [Control type] として表示されます。新しいブースト コントロールと埋め込みコントロールを作成する方法については、コントロールを作成するをご覧ください。

JSON

これは、価格でブーストする例を示しています。

安い商品(95 米ドル未満)に優先し、高価な商品(95 米ドル超)の優先度を下げる場合、ブースト仕様を適用できます。

{
  "condition_boost_specs": [
    {
      "condition": "price: IN(*, 95.0e)",
      "boost": 0.5
    },
    {
      "condition": "price: IN(95.0e, *)",
      "boost": -0.5
    }
  ]
}

この例では、95 米ドル未満の商品はプロモート(0.5)され、95 米ドルを超える商品は降格(-0.5)されます。

結果で、"nest_mini_2nd_gen""google_home_mini"、「"nest_hub"」が 最初の 3 つになり、"nest_audio""nest_hub_max"、「"google_home_max"」は 最後の 3 つになります。ただし、フィルタと並べ替えの結果で説明されているように、特定の順序は事前に決まっていません。これは 価格順とは異なります。

検索の場合は、SearchRequestcondition_boost_specs を含むブースト仕様(boostSpec)を直接含めることで、一致するアイテムのランキング スコアを動的に適用します。

条件とトリガー

検索のブーストは条件付きにできます。次の条件に基づいてブースト ルールをトリガーできます。

  • クエリ語句: ユーザーが特定の語句を検索した場合にのみブーストを適用します(クエリに「ジャケット」が含まれている場合に冬用コートをブーストするなど)。

  • 時間範囲: 特定のプロモーション期間中にのみブーストを適用します。

  • グローバル: 特定の構成で処理されるすべてのクエリにブーストを適用します。

検索リクエストとレスポンスの例

前述のデータセットの例で、「Google スピーカー」を検索する場合、 「nest_mini_2nd_gen」、「nest_audio」、「nest_hub_max」、「nest_hub」、「google_home_max」 および「google_home_mini」を取得し、順序は決まっていません。

レコメンデーションのブースト

レコメンデーションのブーストは、サービス提供コントロールを使用して管理されます。検索とは異なり、レコメンデーションのブーストはクエリベースの条件をサポートしていません(ユーザー クエリがないため)。代わりに、コントロールは、適用されているサービス構成によって生成されたすべての予測に適用されます。このため、通常は、リクエストでブースト仕様を渡すのではなく、ブースト サービス提供コントロールまたは埋め込みサービス提供コントロールをサービス構成に適用して、レコメンデーションを構成します。

レコメンデーションでサポートされているフィールド

レコメンデーションでブーストするプロダクトを定義する場合は、フィルタ式を使用します。標準のレコメンデーションのフィルタリングはテキスト フィールドに限定されますが、ブーストは追加の数値フィールドをサポートしています。

フィールド タイプ サポートされるフィールド 説明
テキスト productIdbrandscategoriesgendersageGroupscolorFamiliescolorssizestitlematerialspatternsconditionsattributes.keytags フィルタリングとブーストの両方に使用できる標準フィールド。tags は、プロダクトに関連付けられたカスタムタグです。
数値 pricediscountratingratingCount ブースト/埋め込み専用。これらのフィールドを使用すると、価格、割引、ユーザー評価に基づいてプロダクトをブーストできます。

詳細については、レコメンデーションをフィルタリングするブースト/埋め込みでサポートされているフィールドをご覧ください。

高評価のプロダクトをブーストする

高評価の映画が [おすすめ] パネルの上位に表示されるようにするとします。このユースケースでは、評価数が 100 を超えるアイテムをブーストするサービス提供コントロールを作成します。次の点を考慮してコントロールを構成します。

  • コントロール タイプ: ブーストまたは埋め込み

  • 選択しているプロダクト: レコメンデーション

  • 対応:

    • フィルタ式: ratingCount > 100

    • ブースト値: 0.5

このコントロールにより、人気があり評価の高いアイテムがレコメンデーション リストで優先され、ユーザーのパーソナライズの関連性が維持されます。

デバッグとトラブルシューティング

すべてのプロダクトは無制限にブーストできますが、ユーザーが適用したフィルタによって検索レスポンスからプロダクトが除外されます。ブーストされたプロダクトが検索結果とブラウジング結果に表示されない理由をトラブルシューティングするには、次の点を確認します。

  • 複数のブースト ルール(埋め込み降格を含む): ブーストモードの構成(合計または最大)を確認し、最終スコアを決定します。
  • 関連性: プロダクトはクエリに関連し、関連性フィルタに合格する必要があります。検索クエリが Nike のシューズで、プロダクト タイトルが「Air Jordans」の場合、単語は一致しませんが、意味的に近い関係であるため、関連性スコアが高くなります。 「イエロー ジャケット」などのプロダクト タイトルは、Nike の検索クエリでは関連性スコアが低くなります。 同様に、プロダクト タイトルがどの単語とも関係のない不明瞭なモデル番号の場合、どのクエリでも関連性スコアは低くなります。
  • フィルタ: フィルタリング ルールはブースト ルールをオーバーライドし、ブーストされたプロダクトが結果に表示されないようにします。フィルタは常にブーストの上に適用されます。プロダクトにユーザーが適用したフィルタがある場合、または商品カテゴリがブラウジング用にフィルタされている場合、ブーストはまったく機能しません。

ブーストのチュートリアル

このチュートリアルでは、商品ブーストの例を説明します。


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

ガイドを表示