このページでは、カタログ情報の作成とカタログ データの入力に関するベスト プラクティスについて説明します。
概要
小売業向け Vertex AI Search にインポートするカタログデータは、結果として得られるモデルの品質に直接影響するため、検索とレコメンデーション結果の品質に影響します。一般に、提供できる正確で特定のカタログ情報が多いほど、モデルの品質が高くなります。
カタログを最新の状態に保つ必要があります。カタログの変更は必要に応じて何度でもアップロードできます。変更頻度が高いカタログの場合は、毎日アップロードするのが理想的です。既存の商品アイテムをアップロード(パッチ適用)できます。この場合、変更されたフィールドのみが更新されます。カタログ情報のアップロードは無料です。詳細については、カタログを最新の状態に保つをご覧ください。
カタログのブランチ
検索を使用する場合、カタログ ブランチを使用して、サイトでライブにする前にオフラインでアップロードした新しいデータをテストできます。
最大 3 つのブランチ(0
、1
、2
)を使用できます。ライブサイトは、カタログデータの default_branch
を参照します。setDefaultBranch
または小売向け検索コンソールの [データ] タブを使用して、現在公開中の default_branch
のブランチを指定します(デフォルトではブランチ 0
に設定されます)。次に、default_branch
が指すブランチによって提供されるカタログデータを使用します。
たとえば、default_branch
にブランチ ID 0
が設定されていると、サイトではそのブランチにアップロードしたカタログデータを使用します。新しいカタログデータをブランチ 1
にアップロードしてプレビューできます。カタログが正しくアップロードされていることを確認したら、ブランチ 1
をライブ default_branch
として切り替えることができます。
カタログ キャッシュは、ブランチの切り替え後、更新されるまでに最大 30 分を要する場合があります。
レコメンデーションを使用する場合は、ブランチ切り替え時の更新の遅延のために、デフォルトのブランチのみを使用することをおすすめします。ブランチ間のデータの差異が大きい場合、更新の遅延が予測結果に悪影響を及ぼす可能性があります。
商品
カタログは、商品オブジェクトのコレクションです。
必須の商品情報
次のフィールドは必須です。カタログに商品アイテムを作成するときに、値を指定する必要があります。また、内部商品データベースで使用されている値に対応している必要があります。これらの値はモデルのトレーニングで使用されるため、表される商品を正確に反映する必要があります。
他のフィールドも必要になることがあります。Product
リファレンス ページで、すべての商品フィールドの完全なリストをご覧ください。
提供するすべての商品情報は、最適化案と検索結果の品質向上に使用できます。できるだけ多くの項目を入力してください。
項目 | 注 |
---|---|
name
|
商品の完全で一意のリソース名。import を除くすべての Product メソッドに必須です。インポート時に、名前は自動的に生成されます。手動で指定する必要はありません。
|
id
|
商品データベースで使用される商品 ID。ID フィールドはカタログ全体で一意である必要があります。ユーザー イベントを記録する場合に同じ値が使用されます。また、predict メソッドと search メソッドによって同じ値が返されます。 |
title
|
商品データベースの商品タイトル。UTF-8 でエンコードされた文字列。1250 文字以内で指定します。 |
categories
|
商品カテゴリすべての商品に少なくとも 1 つのカテゴリを割り当てる必要があります。商品が複数のカテゴリに属している場合は、カテゴリごとにフィールドを繰り返します。値は、空でない UTF-8 エンコードの文字列で、長さの上限は 5,000 文字です。完全なカテゴリパスを常に指定します(例: ["Sports & Fitness > Athletic Clothing > Shoes"] )。 |
商品の属性
Product
の事前定義されたシステム属性(ブランド、色、サイズなど)に値を指定することを強くおすすめします。Product.attributes
で定義したカスタム属性を含めることもできます。
検索を使用している場合、Product.retrievableFields
で属性を取得可能としてマークすると、検索レスポンスの商品に属性が含まれます。これらは、フィルタリングやファセットなどの他の検索機能に使用できます。
詳しくは、商品属性についてをご覧ください。
商品レベル
商品の SKU の指定によって、カタログの階層が決まります。
商品の指定の種類
商品の指定には次の 3 種類があります。
プライマリ アイテムは、レコメンデーションまたは検索結果で返されます。プライマリには、個別(SKU レベル)のアイテムと類似アイテムのグループ(SKU グループ)を指定できます。
バリアント アイテムは、SKU グループのプライマリ商品のバージョンです。バリアントは個々(SKU レベル)のアイテムのみになります。たとえば、プライマリ商品が「V ネックシャツ」の場合、バリアントは「ブラウンの V ネックシャツ、サイズ XL」と「ホワイトの V ネックシャツ、サイズ S」になることがあります。プライマリとバリアントは、親アイテムと子アイテムとして説明されることがあります。
コレクション アイテムは商品のコレクションです。コレクションは、メイン商品またはバリエーション商品をまとめたものです。たとえば、コレクションは、ネックレス、イヤリング、リングがある宝石のセットが考えられます。 コレクションは検索でのみ使用可能で、広く使用されているわけではありません。
商品の例
これらの商品の指定タイプでは、たとえば食料品は "bananas, fresh"
などの単一 SKU の商品で構成されます。
一方、T シャツは、プライマリと対応するバリエーションのセットとして階層的に構造化したほうがよいでしょう。各バリエーションは個々の SKU(サイズごとに 1 つ)を表し、各プライマリ アイテムは SKU のグループを表します。各 SKU は、1 つの全体的な T シャツ スタイルの異なるサイズです。SKU 構造によるこの編成により、検索結果とレコメンデーションのパネルにさまざまな T シャツのスタイルを表示できます。買い物客は、特定のプライマリ(スタイル)をドリルダウンして、購入するバリエーション(サイズ)を選択できます。
また、バリアントのみのカタログタイプも存在しますが、非推奨化されました。このカタログタイプはレコメンデーションでのみ使用できます。バリアントのみのカタログの場合、インポート時に ingestionProductType
が variant
に設定されます。プライマリは、各バリエーションに指定されたプライマリ プロダクト ID に基づいて、各バリエーションに対して推定されます。
商品カタログの設定
商品カタログを計画する際は、プライマリのみ、プライマリとバリエーション、またはその両方の組み合わせとして指定する商品を決定する必要があります。商品の SKU 構造について考えてみましょう。商品はプライマリ アイテムにすることができます。プライマリ アイテムには、バリエーションがある場合とない場合があります。
商品 SKU の指定方法に基づいて、商品カタログの設定方法を検討してください。
- SKU を個別の検索結果またはレコメンデーションとして表示する: SKU = プライマリ
- SKU は類似 SKU のグループに属している必要がある: SKU = バリエーション、SKU のグループ = プライマリ
両方を組み合わせる: SKU = プライマリ、SKU = バリエーション、SKU のグループ = プライマリ
商品の詳細ページにオプション / サイズ / 色の選択ツールが表示されている場合、通常、これらのオプションはバリエーションとして商品カタログにアップロードされます。サイズや色などの異なる属性を持つ同じ商品の種類を、1 つの検索結果として表示するか、別々の検索結果として表示するかを検討します。たとえば、書籍の場合、同じ書籍のハードカバー SKU とソフトカバー SKU を個別の検索結果として表示するか(SKU = プライマリ)、1 つとして表示するか(SKU = バリエーション、SKU のグループ = プライマリ)を決定します。
商品カタログを設定する際は、レコメンデーションと検索結果ではプライマリ アイテムのみが返されることに注意してください。
最小限のプライマリ商品
カタログにプライマリとバリアント(SKU グループと SKU)の両方が必要であるものの、現時点で SKU しかない場合は、SKU グループ用のプライマリを作成する必要があります。これらのプライマリは「仮想プライマリ」または「偽プライマリ」と呼ばれることもあります。
これらのプライマリには、最小限の情報(id
、title
、categories
)のみを含める必要があります。
type
が指定されていない場合、商品タイプはデフォルトでプライマリになります。インポートする場合は、name
を指定する必要はありません。詳細については、前のセクションの必須の商品情報をご覧ください。
タイプは不変
商品のタイプを変更(バリエーションからメイン、メインからバリエーションなど)することはできません。
商品のタイプを変更する必要がある場合は、商品を削除して、別のタイプで商品を再作成します。メインの商品を削除する前に、関連するバリエーションを削除する必要があります。
カタログのインポート
Merchant Center にカタログがある場合は、Merchant Center アカウントをリンクして、カタログをインポートすることをおすすめします。
カタログが Merchant Center ではなく、Cloud Storage、BigQuery、またはその他のストレージにある場合は、一括データ インポートを行います。
将来的に Merchant Center からカタログデータをインポートする場合は、Merchant Center のインポートの説明に従ってデータを確認し、カタログに関する正しい選択を行ってください。これは、既存のカタログの構成を変更するには、カタログを削除してもう一度アップロードする必要があるため重要です(商品レベルの構成を変更するをご覧ください)。
カタログをアップロードする方法について詳しくは、カタログ情報をインポートするをご覧ください。
商品在庫
商品在庫には以下が含まれます。
価格(現在の価格と元の価格の両方)
在庫状況(在庫あり、在庫なし、入荷待ち、予約済みなど)
在庫数
フルフィルメント情報(店舗受け取り、店舗宛て出荷、翌日配送など)
在庫には、商品レベルとローカル レベルの 2 つのレベルがあります。
商品レベルの在庫
オンラインでのみ販売する小売業者の場合、在庫は商品レベルで指定されます。 価格、在庫状況、その他の在庫データは、カタログ内の各商品に設定されます。
在庫データの保守方法など、商品レベルの在庫の詳細については、小売業向け Vertex AI Search の在庫を更新するをご覧ください。
ローカル在庫
実店舗とオンライン ショップの両方を運営する小売業者は、店舗ごとに在庫情報を保持する必要があります。そのために使用するのがローカル在庫です。
ローカル在庫の保存に使用できる商品フィールドは 2 つあります。どちらのフィールドにも、関連する在庫情報を含むロケーション(場所 ID)のリストが含まれます。
Product.fulfillmentInfo。店舗の場所ごとの受け取りと配送方法
Product.localInventories。 店舗の場所ごとの価格情報、商品属性、受け取り方法、配送方法
店舗レベルの情報には、これらのいずれかまたは両方のフィールドを使用します。
ローカル在庫の詳細については、小売業向け Vertex AI Search のローカル在庫を更新するをご覧ください。
カタログのデータ品質指標
小売向け検索コンソールの [データ品質] ページでは、検索結果の品質を向上させ、検索パフォーマンス層のロックを解除するために、カタログデータを更新する必要があるかどうかを評価します。
次の表は、小売業向け Vertex AI Search が商品データの評価に使用するための品質指標を示しています。小売向け検索コンソールでデータ品質の指標と検索パフォーマンス階層を表示する方法については、検索パフォーマンス階層をロック解除するをご覧ください。
カタログの品質指標 | 品質ルール | 説明 |
---|---|---|
URI が存在し、アクセス可能である | 商品に有効な Product.uri がある。URI はアクセス可能で、ドメインと一致している必要があります。 |
検索では、この URI を使用してクロールされたウェブシグナルを使用して、検索品質を向上させています。 |
時間の適合性を満たしている | Product.availableTime は現在の時刻より前であり、Product.expireTime は現在の時刻より後です。 |
検索できるのは、時間の適合性を満たす商品のみです。 |
検索可能な属性が存在する | 商品で少なくとも 1 つの attribute が検索可能に設定されています。 |
検索可能とマークされたカスタム属性は、テキストクエリで検索できます。 |
説明がある | 商品の Product.description が空ではありません。 |
包括的な説明は検索品質の向上に役立ちます。 |
タイトルは 2 単語以上で構成されている | Product.title が 2 単語以上で構成されています。 |
包括的なタイトルは検索品質の向上に役立ちます。 |
画像のあるバリアントがある | variant 商品には少なくとも 1 つの Product.image があります。すべての商品が primary レベルであれば、この指標は無視してかまいません。 |
この指標は参考情報であり、検索品質には影響しません。 |
価格情報ありのバリアントがある | variant 商品で Product.priceInfo が設定されています。すべての商品が primary レベルであれば、この指標は無視してかまいません。 |
この指標は参考情報であり、検索品質には影響しません。 |
小売業向け Vertex AI Search の商品スキーマ
BigQuery からカタログをインポートするときは、以下の小売業向け Vertex AI Search 商品スキーマを使用して、正しい形式の BigQuery テーブルを作成し、カタログデータとともに読み込みます。それから、カタログをインポートします。