モデルを管理する

このページでは、レコメンデーション モデルの調整、一時停止、再開、削除、一覧表示を行う方法について説明します。新しいレコメンデーション モデルの作成については、レコメンデーション モデルの作成をご覧ください。

モデル品質に関する一般的な推奨事項

良好なデータ品質を維持するために、一般的にイベントは少なくとも 1 日 1 回アップロードする必要があります。

  • データの有効期限: 2015 年より前のユーザー イベントは受け入れられません。自動学習の候補には、過去 180 日間のユーザー イベントが使用されます。同様に、180 日以上経過したユーザー イベントの指標、または 180 日以上前に生成された指標はエクスポートできません。

  • ユニーク ユーザー ID: 各イベントタイプのユニーク ユーザー ID の合計数が 100 以上である必要があります。これは、質の高い結果を得るために十分なデータを確保するためです。

ほとんどのモデルは、3 か月以上の期間のプロダクト ページビュー、ホームページ ビュー、add-to-cart イベントがあると最適に機能します。

「よく一緒に購入される商品」モデルでは、1 ~ 2 年間の購入履歴が推奨されます。このモデルでは、次のいずれか1 つが特に必要です。

  • カタログ アイテムごとに平均 10 件(購入完了イベントの 1 年間の期間)。

  • 過去 1 年間に購入完了イベントが 90 日間発生し、かつ 1,000 件発生している。

「関連商品のおすすめ」モデルと「あなたへのおすすめ」モデルのトレーニングを開始するには、1 ~ 2 週間の詳細ページビューで十分です。

モデルをチューニングする

コマース向け Vertex AI Search は、自身のモデルに対して提供した入力データを使用して、トレーニング用のハイパーパラメータを調整します。

調整には 2~4 日かかりますが、その間もモデルは通常どおり動作します。調整の費用の詳細については、料金をご覧ください。

モデルの調整頻度を設定する

モデルは定期的に調整することをおすすめします。データは変化し、また顧客の行動は 1 年を通じて異なるため、この調整によりモデルのトレーニングを最適化できます。また、主要な内部モデル アップグレードが、モデルの調整後にのみ適用できる場合もあります。

モデルを作成するときに、3 か月ごとに自動的に調整するように設定するか、手動での調整を選択できます。選択した設定に関係なく、モデルは作成後 1 回、自動的に調整されます。

調整ステータスの設定はいつでも変更できます。この設定を変更しても、実行中のチューニング プロセスには影響しません。

モデルの調整ステータス設定を編集するには:

コンソール

  1. Search for commerce コンソールの [モデル] ページに移動します。

    [モデル] ページに移動

    各モデルの調整ステータスは、[調整ステータス] で確認できます。

  2. モデル名をクリックして、詳細ページを表示します。

  3. [調整ステータス] の横にある [編集] をクリックします。

  4. プルダウン リストから設定を選択します。

    • 3 か月ごと。最後の調整が 90 日前なると自動的に調整されます。
    • 手動調整のみ手動で調整する場合にのみ調整されます。
  5. [Done] をクリックして、設定を保存します。

curl

API を使用して Models.patch リクエストを行います。Models.patch API リファレンスをご覧ください。

すべての Models フィールドの詳細については、Models 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/models/MODEL_ID",
  "PeriodicTuningState": "NEW_TUNING_STATE_VALUE"
}' \
'https://retail.googleapis.com/v2/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/models/MODEL_ID?updateMask=PeriodicTuningState'

モデルを手動でチューニングする

手動調整は、モデルを 1 回だけ調整します。カタログに大きな変更(サイズの増加、カタログ階層の変更など)やイベント(過去のイベントのバックフィルや、あるグループのアイテムのプロモーション後のデータ配分の変更など)がある場合は、手動でモデルを調整する場合があります。

モデルを手動で調整するには:

コンソール

  1. Search for commerce コンソールの [モデル] ページに移動します。

    [モデル] ページに移動

  2. モデル名をクリックして、詳細ページを表示します。

  3. ボタンバーの [Manual Tune] をクリックします。

    調整には 2~4 日かかりますが、その間もモデルは通常どおり動作します。

curl

API を使用して Models.tune リクエストを行います。Models.tune API リファレンスをご覧ください。

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

モデルのトレーニングを一時停止して再開する

モデルがアクティブ(一時停止されていない)な場合、少なくとも 1 週間に 1 回は再トレーニングが行われますが、1 日に 1 回より多くは行われません。再トレーニングを継続的に行うには、イベントが発生してから 24 時間以内にユーザー イベント データをアップロードするようにしてください。

モデルを一時停止して、再トレーニングを停止できます。これは、悪質なデータをインポートしている場合や、1 つのプロジェクトにつきアクティブなモデル数が 10 個という制限を超えないようにする場合に行います。アクティブなモデル数が 10 個未満の場合は、一時停止したモデルをいつでも再開できます。

トレーニングの費用の詳細については、料金をご覧ください。

1 分あたり最大 5 つのモデルのオペレーションを開始できます。対象となるモデルのオペレーションには、作成、削除、一時停止、再開が含まれます。

モデルを一時停止または再開するには:

コンソール

  1. Search for commerce コンソールの [モデル] ページに移動します。

    [モデル] ページに移動

    各モデルのトレーニング ステータスは、[Training status] で確認できます。

  2. アクティブなモデル([トレーニング ステータス] がトレーニングになっている)を一時停止するには、[一時停止] をクリックします。

  3. 一時停止したモデル([トレーニング ステータス] が一時停止になっている)を開始するには、[再開] をクリックします。

curl

アクティブなモデルを一時停止するには、API を使用して Models.pause リクエストを行います。Models.pause API リファレンスをご覧ください。

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

一時停止したモデルを開始するには、API を使用して Models.resume リクエストを行います。

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

モデルの詳細を表示

コンソールで、または Models.get API メソッドを使用してモデルの詳細を表示します。

特定のモデルに関連付けられているサービス構成を表示するには、次の手順を使用します。その他のモデルの詳細はすべて、コンソールと API レスポンスで確認できます。

コンソール

  1. Search for commerce コンソールの [モデル] ページに移動します。

    [モデル] ページに移動

  2. [モデル] ページには、すべてのモデルと、それらのモデルのトレーニング ステータスとクエリ ステータスが一覧表示されます。

  3. モデル名をクリックして、詳細ページを表示します。

curl

1 つのモデルの情報を取得するには、API を使用して Models.get リクエストを行います。Models.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/v2/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/models/MODEL_ID'

モデルを一覧表示する

コンソールで、または Models.list API メソッドを使用してモデルを一覧表示します。

コンソール

  1. Search for commerce コンソールの [モデル] ページに移動します。

    [モデル] ページに移動

  2. [モデル] ページには、すべてのモデルと、それらのモデルのトレーニング ステータスとクエリ ステータスが一覧表示されます。

curl

すべてのモデルとその詳細をインラインで一覧表示するには、API を使用して Models.list リクエストを行います。Models.list API リファレンスをご覧ください。

必要に応じて、パラメータ pageSize を使用して、返される結果の最大数を設定できます。結果がさらにある場合、list レスポンスにはページトークンが含まれます。list リクエストの pageToken パラメータにページトークンを渡して、結果の次のページを取得できます。この例では、両方のパラメータを使用しています。

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/v2/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/models?pageSize=PAGE_SIZE&pageToken=PAGE_TOKEN'

モデルを削除する

1 分あたり最大 5 つのモデルのオペレーションを開始できます。対象となるモデルのオペレーションには、作成、削除、一時停止、再開が含まれます。

コンソールまたは Models.delete API メソッドを使用してモデルを削除します。

コンソール

  1. Search for commerce コンソールの [モデル] ページに移動します。

    [モデル] ページに移動

  2. 削除するモデルの名前をクリックして、詳細ページを開きます。

  3. ボタンバーの [Delete] をクリックします。

  4. モデル名を再入力し、[確認] をクリックします。

curl

API を使用して Models.delete リクエストを行います。Models.delete API リファレンスをご覧ください。

すべての Models フィールドの詳細については、Models 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/v2/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/models/MODEL_ID'