このページでは、ユーザー イベントをリアルタイムで記録する方法について説明します。メディア レコメンデーションにはユーザー イベントが必要です。メディア レコメンデーションを使用していない場合は、ユーザー イベントのインポートは必要ありません。ただし、メディア検索アプリではユーザー イベントの記録をおすすめします。
記録できるユーザー イベントのタイプについては、userEvents
オブジェクトの eventType
フィールドをご覧ください。ユーザー イベントを取り込むことで、レコメンデーションの品質と検索結果のランキングを改善できます。クリック率が高い結果はブーストされ、クリック率が低い結果は非表示になります。まだインポートしていないドキュメントのユーザー イベントを記録しないでください。
複数のデータストアが接続された検索アプリを使用している場合は、データストア レベルではなく、ロケーション レベルでユーザー イベントを取り込むことをおすすめします。これにより、特定のユーザー イベントを、関連付けられているデータストアに送信できます。データストア レベルではなくロケーション レベルで、異なる dataStores
からのドキュメントを含むユーザー イベントを取り込むには、userEvents.write
をご覧ください。
過去のユーザー イベントを一括でインポートするには、過去のユーザー イベントをインポートするをご覧ください。
ユーザー イベントは次の方法で記録できます。
ユーザー イベントの JSON 表現については、API リファレンスの userEvents
をご覧ください。
始める前に
ユーザー イベントをインポートする前に:
- データストアとアプリを作成します。
- ユーザー イベントの要件については、ユーザー イベントについてをご覧ください。
JavaScript ピクセルでリアルタイムのユーザー イベントを記録する
JavaScript ピクセルでユーザー イベントを記録する
userEvents.Collect
メソッドの呼び出し用の API キーを作成する- ユーザー イベントを収集する JavaScript タグの例については、JavaScript ピクセルの例をご覧ください。
API キーを作成する
JavaScript ピクセルを使用してユーザーのブラウザからユーザー イベントを収集する場合は、API キーが必要です。
userEvents.Collect
メソッド呼び出し用の API キーを作成するには、次の手順を行います。
Google Cloud コンソールで、[認証情報] ページに移動します。
Google Cloud コンソール ページの上部にあるプロジェクトのプルダウンで、プロジェクトを選択します(プロジェクトがすでに選択されている可能性もあります)。
[認証情報を作成] をクリックして [API キー] を選択します。 リファラー制限を追加しないでください。一部のユーザーのプライバシー設定は、参照 URL を渡さないことがわかっています。
- 生成された API キーをメモします。このキーは、ユーザー イベント ロギングを呼び出すときに使用します。
セキュリティを強化するには、API キーに HTTP 制限を追加して、
https://discoveryengine.googleapis.com/*
での Vertex AI Agent Builder サービスへのアクセスを制限します。
JavaScript ピクセルの例
次の例では、JavaScript ピクセルを使用して view-item
UserEvent を記録しています。
ユーザー イベントの JSON 表現については、API リファレンスの userEvents
をご覧ください。
<script type="text/javascript">
var user_event = {
"eventType" : "view-item",
"userPseudoId": "USER_PSEUDO_ID",
"userInfo": {
"userId": "USER_ID"
},
"attributionToken": "ATTRIBUTION_TOKEN",
"tagIds": "TAG_ID",
"documents": [
{
"id": "DOCUMENT_ID"
}
]
};
var _gre = _gre || {};
// Credentials for project.
_gre.apiKey = '[API_KEY]';
_gre.logEvent = user_event;
_gre.projectId = 'PROJECT_ID';
_gre.locationId = 'LOCATION_ID';
_gre.dataStoreId = 'DATA_STORE_ID';
(function() {
var gre = document.createElement('script'); gre.type = 'text/javascript'; gre.async = true;
gre.src = 'https://www.gstatic.com/discoveryengine/v1beta_event.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(gre, s);
})();
</script>
userEvents.write
メソッドを使用してリアルタイムのユーザー イベントを記録する
REST
userEvents.write
メソッドを使用して、バックエンド サーバーから API にユーザー イベントを直接送信できます。
ユーザー イベントを記録するには、userEvents.write
メソッドに POST リクエストを送信し、適切なリクエスト本文を指定します。ユーザー イベントの JSON 表現については、API リファレンスの userEvents
をご覧ください。
複数のデータストアがあるアプリの場合は、ロケーション レベルでイベントをインポートすることをおすすめします。この場合は、エンドポイント https://discoveryengine.googleapis.com/v1beta/projects/PROJECT_NUMBER/locations/LOCATION/userEvents:write
を使用します。
export GOOGLE_APPLICATION_CREDENTIALS=/tmp/my-key.json
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
--data "{
'eventType': 'view-item',
'userPseudoId': 'visitor0',
'eventTime': '2020-01-01T03:33:33.000001Z',
'tagIds': ['321'],
'attributionToken': 'ABC',
'attributes': {
'example_text_attribute': {
'text': ['text_1', 'text_2']
},
'example_number_attribute': {
'numbers': [3.14, 42, 1.2345]
}
},
'documents': [{
'id': 'abc'
}],
'userInfo': {
'userId': 'abc',
'userAgent': 'Mozilla/5.0'
},
'pageInfo': {
'uri': 'http://example',
'referrerUri': 'http://example',
'pageViewId': 'currentPageUri'
}
}" \\
"https://discoveryengine.googleapis.com/v1beta/projects/PROJECT_NUMBER/locations/global/dataStores/DATA_STORE_ID/userEvents:write"
C#
詳細については、Vertex AI Agent Builder C# API のリファレンス ドキュメントをご覧ください。
Vertex AI Agent Builder に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。 詳細については、ローカル開発環境の認証の設定をご覧ください。
Go
詳細については、Vertex AI Agent Builder Go API のリファレンス ドキュメントをご覧ください。
Vertex AI Agent Builder に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。 詳細については、ローカル開発環境の認証の設定をご覧ください。
Java
詳細については、Vertex AI Agent Builder Java API のリファレンス ドキュメントをご覧ください。
Vertex AI Agent Builder に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。 詳細については、ローカル開発環境の認証の設定をご覧ください。
Python
詳細については、Vertex AI Agent Builder Python API のリファレンス ドキュメントをご覧ください。
Vertex AI Agent Builder に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。 詳細については、ローカル開発環境の認証の設定をご覧ください。
Ruby
詳細については、Vertex AI Agent Builder Ruby API のリファレンス ドキュメントをご覧ください。
Vertex AI Agent Builder に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。 詳細については、ローカル開発環境の認証の設定をご覧ください。