これは Recommendations AI のみに関するドキュメントです。制限付き一般提供フェーズで Retail Search と統合された Retail コンソールを試すには、Cloud 営業担当者にお問い合わせくださいRetail Search を使用する予定がない場合は、通知があるまで引き続き Recommendations コンソールを使用してください。

Recommendations AI の v1beta バージョンを使用している場合は、Retail API バージョンに移行してください。

過去のユーザー イベントのインポート

新しいモデルまたはレコメンデーションを作成する場合は、そのモデルにトレーニング用のユーザー イベントデータが必要です。トレーニングに必要なデータ量は、レコメンデーションの種類最適化目標によって異なります。ユーザー イベント データの要件をご覧ください。

イベントの記録の設定後、モデルのトレーニングに十分なユーザー イベント データが記録されるまでに、かなりの時間がかかる場合があります。過去のイベントからユーザー イベントデータを一括インポートすることで、初期のモデル トレーニングを高速化できます。インポートを行う前に、ユーザー イベントを記録するためのおすすめの方法をご確認ください。

例を挙げてみます。

Cloud Storage からのユーザー イベントのインポート

Cloud Storage からユーザー イベントをインポートするには、JSON データを含むファイルを作成します。

JSON ファイルが以下のようになっていることを確認します。

  • ユーザー イベント タイプに従ってフォーマットされている。各ユーザー イベント タイプのフォーマットの例については、ユーザー イベントをご覧ください。
  • 1 つのユーザー イベント全体を 1 行で指定し、改行を使用していない。
  • 各行に各ユーザー イベントがある。

インラインでユーザー イベントをインポートする

curl

ユーザー イベントをインラインでインポートするには、userEvents.import メソッドの呼び出しにイベントのデータを含めます。

最も簡単な方法は、ユーザー イベントデータを JSON ファイルに追加し、ファイルを cURL に提供することです。

ユーザー イベント タイプのフォーマットについては、ユーザー イベントをご覧ください。

  1. JSON ファイルを作成します。

    {
    "inputConfig": {
      "userEventInlineSource": {
          "userEvents": [
            {
              <userEvent1>>
            },
            {
              <userEvent2>
            },
            ....
          ]
        }
      }
    }
    
  2. POST メソッドを呼び出します。

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

BigQuery からのユーザー イベントのインポート

userEvents.import メソッドを使用して、BigQuery からユーザー イベントをインポートします。

ユーザー イベントは、Recommendations AI の取り込み用に正しくフォーマットされた BigQuery テーブルに存在する必要があります。テーブル スキーマは、ユーザー イベント タイプによって異なります。イベントタイプごとに BigQuery テーブルを作成するときに指定する JSON スキーマについては、ユーザー イベントタイプとサンプル スキーマをご覧ください。

イベントをインポートする際は、dataSchema に値 user_event を使用します。

export GOOGLE_APPLICATION_CREDENTIALS=/tmp/my-key.json

curl \
  -v \
  -X POST \
  -H "Content-Type: application/json; charset=utf-8" \
  -H "Authorization: Bearer "$(gcloud auth application-default print-access-token)"" \
  "https://retail.googleapis.com/v2/projects/PROJECT_ID/locations/global/catalogs/default_catalog/userEvents:import" \
  --data '{
    "inputConfig": {
      "bigQuerySource": {
        "datasetId": "DATASET-ID",
        "tableId": "TABLE-ID",
        "dataSchema": "user_event"
    }
  }
}'

BigQuery データセットが Recommendations AI プロジェクトとは異なるプロジェクトに属している場合は、BigQuery データセットへのアクセスの設定の手順に沿って、Recommendations AI のサービス アカウントに BigQuery プロジェクトの BigQuery データ編集者のロールを付与します。BigQuery プロジェクト ID を指定するために、インポート リクエストを変更します。

"bigQuerySource": {
     "projectId": "BQ_PROJECT_ID",
   }

BigQuery で Google アナリティクス 360 のユーザー イベントをインポートする

Google アナリティクス 360 を BigQuery と統合して拡張 e コマースを使用している場合は、Google アナリティクス 360 のユーザー イベントをインポートできます。

以下の手順は、BigQuery と Google アナリティクス 360 の使用に精通していることを前提とします。

次の手順を開始する前に、以下の点をご確認ください。

データソースを確認する

  1. インポートするユーザー イベントデータが、アクセス権のある BigQuery テーブルで正しくフォーマットされていることを確認してください。

    テーブルの形式は project_id:ga360_export_dataset.ga_sessions_YYYYMMDD である必要があります。

    テーブルの形式の詳細については、Google アナリティクスのドキュメントをご覧ください。

  2. BigQuery Google Cloud Console で、[Resources] からテーブルを選択してテーブルをプレビューし、以下のことを確認します。

    • clientId 列に有効な値(たとえば、123456789.123456789)がある。

      この値は、完全な _ga Cookie 値(GA1.3.123456789.123456789 のような形式)とは異なります。

    • hits.transaction.currencyCode 列に有効な通貨コードがある。

  3. アップロードされたカタログとアナリティクス 360 のユーザー イベント テーブルとのアイテム ID の整合性を確認します。

    BigQuery テーブル プレビューの hits.product.productSKU 列の任意の商品 ID を使用して、アップロードしたカタログに同じ商品が含まれていることを確認するために、product.get メソッドを使用します。

    export GOOGLE_APPLICATION_CREDENTIALS=/tmp/my-key.json
    
       curl \
         -v \
         -X GET \
         -H "Content-Type: application/json; charset=utf-8" \
         -H "Authorization: Bearer "$(gcloud auth application-default print-access-token)"" \
         "https://retail.googleapis.com/v2/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/branches/default_branch/products/PRODUCT_ID"
    

Google アナリティクス 360 のイベントをインポートする

ユーザー イベントをインポートするには、userEvents.import メソッドの呼び出しにイベントのデータを含めます。

dataSchema の場合は、値 user_event_ga360 を使用します。

export GOOGLE_APPLICATION_CREDENTIALS=/tmp/my-key.json

curl \
  -v \
  -X POST \
  -H "Content-Type: application/json; charset=utf-8" \
  -H "Authorization: Bearer "$(gcloud auth application-default print-access-token)"" \
  "https://retail.googleapis.com/v2/projects/PROJECT_ID/locations/global/catalogs/default_catalog/userEvents:import" \
  --data '{
    "inputConfig": {
      "bigQuerySource": {
        "datasetId": "some_ga360_export_dataset",
        "tableId": "ga_sessions_YYYYMMDD",
        "dataSchema": "user_event_ga360"
    }
  }
}'

BigQuery データセットが Recommendations AI プロジェクトとは異なるプロジェクトに属している場合は、BigQuery データセットへのアクセスの設定の手順に沿って、Recommendations AI のサービス アカウントに BigQuery プロジェクトの BigQuery データ編集者のロールを付与します。BigQuery プロジェクト ID を指定するために、インポート リクエストを変更します。

"bigQuerySource": {
     "projectId": "GA360_BQ_PROJECT_ID",
   }

次のステップ