小売業向け Vertex AI Search では、インデックス登録、動的ファセット、検索可能性、フィルタリング、モデル品質用に商品属性を活用できます。このページでは、商品属性の構成の設定と、使用する方法と構成に応じてそれらを扱う方法について説明します。
属性タイプ
商品の属性はタイプによって、デフォルト設定や許可されるオプションが異なります。
システム属性: 事前定義されたシステム属性は、プロダクトに関する詳細情報を提供する既存の
Product
フィールドです。これには、ブランド、在庫状況、色、サイズなどの商品属性が含まれます。プロダクトのすべての使用可能なシステム属性については、Product
リファレンス ドキュメントをご覧ください。カスタム属性: カスタム属性は、
Product.attributes
フィールドを使用して定義する追加属性です。たとえば、店舗名、ベンダー、スタイルなどです。カスタム属性の例と上限については、Product.attributes
リファレンス ドキュメントをご覧ください。在庫レベルの属性: 商品に関する店舗レベルの情報を提供するシステム属性またはカスタム属性。在庫レベルの属性は、店舗や地域によって特性が大きく異なる商品(食料品店など)や、店舗固有のプロモーションがある商品に使用します。
inventories.price
とinventories.originalPrice
は、小売業向け Vertex AI Search で事前定義された数値システム属性です。カスタム在庫レベルの属性(テキストまたは数値)を作成できます。在庫レベルの属性はデフォルトでインデックス登録可能です。検索可能動的ファセットの設定は、在庫レベルの属性ではサポートされていません。
利用可能な構成設定
属性の構成設定は、サイト全体の検索とレコメンデーションの動作に影響します。
検索では、次の属性の設定を使用します。
- インデックス登録可能: 検索は、この属性を使用してフィルタリングとファセットを行います。
- 動的ファセット: 検索は、ユーザーの過去の操作(ファセットのクリックや表示など)に基づいて、この属性が動的ファセットとして自動的に使用します。属性の動的ファセットを有効にするには、その属性の Indexable を true に設定する必要があります。
- 検索可能: この属性は検索クエリで検索できます。これによって、この属性の再現率が向上します。このコントロールは、テキスト属性にのみ適用されます。
- 取得可能: true に設定すると、検索は検索クエリへのレスポンスでこの属性を返します。すべての属性で「取得可能」を false に設定すると、検索結果に含まれるのは、商品名(バリアントの場合)か、商品名と色情報に限られます。
レコメンデーションでは、次の属性設定を使用します。
- フィルタ可能(公開プレビュー版): この属性はレコメンデーションのフィルタ式で使用できます。このコントロールは、テキスト属性にのみ適用されます。
インデックスを作成可能
属性がインデックス登録可能に設定されている場合、検索はその属性を使用してフィルタリングやファセットを行います。
- システム属性: 事前定義されたシステム属性に対してインデックス性は常に有効になっています。システム属性では、この設定を無効にできません。
- カスタム属性: デフォルトで有効になっています。任意のカスタム属性でインデックス化を無効にできます。カスタム属性をインデックス登録可能にする場合は、正規表現パターン
[a-zA-Z0-9][a-zA-Z0-9_]*
に従う必要があります。たとえば、key0LikeThis
やKEY_1_LIKE_THIS
です。 - 在庫レベルの属性: システム在庫レベルの属性に対して常に有効になります。この設定を変更することはできません。カスタム在庫レベルの属性では、デフォルトで有効になっています。この設定をオフにできます。
- 依存関係: 該当なし
インデックスの構成の変更は、カタログデータをインポートするとすぐに有効になります。それ以外の場合、変更が有効になるまでに最長で 12 時間ほどかかることがあります。変更が適用されたかどうかは、[評価] ページでテストできます。
動的ファセット
属性に対して動的ファセットが有効な場合、検索はその属性を動的ファセットとして使用できます。動的ファセットは、ファセットのクリックや表示などの過去のユーザーの行動に基づいて、自動的に検索に追加できます。
- システム属性: インデックス化が true に設定されている場合は、デフォルトで有効になっています。任意のシステム属性で動的ファセットを無効にできます。
- カスタム属性: インデックス化が true に設定されている場合は、デフォルトで有効になっています。任意のシステム属性で動的ファセットを無効にできます。
- 在庫レベルの属性: サポートされていません。
- 依存関係: 属性の動的ファセットを有効にするには、まずその属性のインデックス化を有効にする必要があります。
属性の動的ファセットの設定は常にグローバルです。その属性に適用した動的ファセット構成は、その属性を使用するカタログ全体の商品で使用されます。
動的ファセット構成の変更は最大 2 日かかります。変更が適用されたかどうかは、[評価] ページでテストできます。
数値カスタム属性の場合は、リクエストでバケットを指定する必要があります。数値は自動的にはバケット化されません。
検索可能
属性が検索可能に設定されている場合、検索クエリでのその属性の再現率が向上します。
検索可能性を有効にすることができるのはテキスト属性値のみです。数値属性には適用されません。
- システム属性:
Product
の事前定義されたテキスト システム属性には、検索可能性の設定が小売業向け Vertex AI Search によって構成されています。これらの設定は変更できません。 - カスタム属性: デフォルトでは無効になっています。この構成は、任意のテキスト カスタム属性に対して有効にできます。
- 在庫レベルの属性: サポートされていません。
- 依存関係: 該当なし
検索可能の属性を持つ商品は、その属性の検索結果に表示される可能性は高くなりますが、表示されるとは限りません。
レコメンデーションのフィルタリング
属性でレコメンデーションのフィルタリングが有効な場合、レコメンデーションのフィルタ式で使用して予測内の商品をフィルタリングできます。
- システム属性: デフォルトでオフになっています。
Product
の事前定義されたシステム テキスト属性(FulfillmentInfo
とtitle
を除く)に対して、この設定を有効にできます。数値属性ではサポートされていません。 - カスタム属性: デフォルトで無効になっています。
Product
のカスタム テキスト属性に対してこの設定を有効にできます。数値属性ではサポートされていません。 - 在庫レベルの属性:
availability
値IN_STOCK
でのみサポートされます。 - 依存関係: 該当なし
構成モード
構成モードにより、属性構成の処理方法と、設定可能な属性構成が決まります。
- カタログレベルの構成モード(デフォルト): このモードでは、カタログレベルの属性構成が信頼できる情報源として使用されます。
- 商品レベルの構成モード(非推奨): このモードでは、商品レベルの属性構成が信頼できる情報源として使用されます。
以前は、商品レベルの構成がデフォルトのモードでした。まだ商品レベルの構成モードを使用していて、カタログレベルの構成モードに切り替える必要がある場合は、サポートにお問い合わせください。切り替え後に、検索では商品レベルの構成モードに戻ることはできません。
構成モードを確認するには、Search for Retail コンソールの [コントロール] ページに移動します。[インデックス登録可能] オプションが [サイト全体のコントロール] タブで列として利用できる場合、構成モデルはカタログレベルです。[インデックス登録可能] 列が [サイト全体のコントロール] タブで利用できない場合、構成モデルは商品レベルです。
構成メソッド
次の方法で属性構成を設定できます。
Search for Retail コンソール: Search for Retail コンソールを使用して、カタログレベルで属性構成を設定します。これにより、すべての商品全体で属性がグローバルに構成されます。コンソールでどちらの設定方法を使用できるかは、構成モードによって異なります。
AttributeConfig
API メソッド: API を使用して、カタログレベルで属性構成を設定します。これにより、すべての商品全体で属性が構成されます。Product
API メソッド(非推奨):Product
API メソッドを使用して、商品レベルでカスタム属性を設定します。新規ユーザーはこの方法で属性を設定することができないため、おすすめしません。
コンソールで属性を構成する
[サイト全体のコントロール] タブの Search for Retail コンソールの [コントロール] ページから、すべての商品の属性オプションをグローバルに設定できます。コンソールでこれを設定する方法について詳しくは、サイト全体の属性コントロールを管理するをご覧ください。
この機能を使用するには、構成モードがカタログレベルであることが必要です。
インデックス登録可能と検索可能についての属性構成の設定の変更は、カタログの取り込み直後に有効になります。それ以外の場合、変更が有効になるまで最大 12 時間かかることがあります。変更が適用されたかどうかは、[評価] ページでテストできます。
AttributesConfig
を使用して属性を構成する
AttributesConfig
API リソースでは、カタログレベルで属性構成を管理できます。
次のフィールドでは、カタログレベルで属性オプションを設定します。
CatalogAttribute.indexableOption
: 属性のインデックス登録可能なオプションを設定します。CatalogAttribute.dynamicFacetableOption
: 属性の動的ファセット オプションを設定します。CatalogAttribute.searchableOption
: 属性の検索可能なオプションを設定します。CatalogAttribute.recommendationsFilteringOption
(公開プレビュー): 属性のレコメンデーション フィルタリング オプションを設定します。
すべての属性構成を取得するには、GetAttributesConfig
メソッドを使用します。
複数の属性の更新
updateAttributesConfig
メソッドを使用して、カタログレベルで複数の属性を更新します。
リクエストに含まれるカタログ属性はカタログで更新されます。カタログ属性が存在しない場合は、挿入されます。カタログ属性フィールドに値がない場合は、デフォルト値が割り当てられます。
リクエストで使用できるカタログ属性の最大数は 1,000 です。
個々の属性を更新する
個々のカタログ属性を更新するために、次のメソッドが使用されます。
AddCatalogAttribute
: 個々の属性構成をカタログ属性に追加します。AddCatalogAttribute
の API リファレンス ドキュメントをご覧ください。ReplaceCatalogAttribute
: 個々の属性構成を変更します。その場合、AttributesConfig
内の指定されたCatalogAttribute
は、カタログ属性を同じCatalogAttribute.key
で更新することで置き換えられます。ReplaceCatalogAttribute
の API リファレンス ドキュメントをご覧ください。RemoveCatalogAttribute
:AttributesConfig
から個々の属性構成を削除します。削除できるのは、商品で使用されていない
CatalogAttributes
のみです。CatalogAttribute
が使用されている場合、RemoveCatalogAttribute
はそれを削除しませんが、その構成プロパティをデフォルト値にリセットします。属性がいずれかの商品で使用されている場合、CatalogAttribute.inUse
はTrue
に設定されます。RemoveCatalogAttribute
の API リファレンス ドキュメントをご覧ください。
Product
メソッド(非推奨)で属性を構成する
新規ユーザーはこの方法で属性を設定することができないため、おすすめしません。
次のフィールドでは、Product
API メソッドを使用して、特定の商品のインデックス登録可能な設定と検索可能な設定を設定します。
Product.attributes.indexable
Product.attributes.searchable
。カスタム属性でのみ使用できます。