Auf dieser Seite wird das Nutzerereignisobjekt beschrieben, einschließlich der Auflistung potenzieller Nutzerereignistypen. Außerdem finden Sie Beispieldaten für alle Nutzerereignistypen.
Vertex AI Search for Retail verwendet Nutzerereignisse in Echtzeit, um Empfehlungen und Suchergebnisse zu generieren. Wenn Sie Daten hochladen, können die Empfehlungen und die Suche Daten, sodass Sie die gleichen Ereignisse nicht zweimal hochladen müssen, wenn Sie beide Dienstleistungen.
Informationen zum Aufzeichnen von Nutzerereignissen finden Sie unter Nutzerereignisse in Echtzeit aufzeichnen.
Nutzerereignistypen
Es gibt mehrere Nutzerereignistypen, die Sie aufzeichnen können, wenn Nutzer Ihre Einzelhandels-Website besuchen:
Name des Nutzerereignisses | Nutzeraktion |
---|---|
add-to-cart | Legt Artikel in den Einkaufswagen. |
category-page-view | Zeigt spezielle Seiten an, wie Verkaufs- oder Werbeaktionsseiten. |
detail-page-view | Ruft die Produktdetailseite auf. |
home-page-view | Ruft die Startseite auf. |
purchase-complete | Schließt den Bestellprozess ab. |
search | Durchsucht den Katalog. |
shopping-cart-page-view | Ruft den Einkaufswagen auf. |
Ausführliche Informationen zum UserEvent-Objekt finden Sie unter UserEvent.
Ereignistyppriorität
Für optimale Ergebnisse empfehlen wir, Nutzerereignisse für alle Ereignistypen aufzuzeichnen. In der folgenden Tabelle wird die Priorität der verschiedenen Nutzerereignistypen beschrieben. Sie müssen die Nutzerereignisse mit der höchsten Priorität protokollieren, um qualitativ hochwertige Datenmodelle zu erhalten.
Priorität | Nutzerereignisse |
---|---|
Erforderlich für den ersten Live-Test |
|
Wichtig, um die Qualität des Empfehlungsmodells im Laufe der Zeit zu verbessern |
Anforderungen und Best Practices für Nutzerereignisse
In den folgenden Tabellen sind die Anforderungen und Best Practices für Nutzerereignistypen aufgeführt die Empfehlungen und die Suche verwenden. Prüfen Sie, ob Ihre Nutzerereignisse diese Anforderungen erfüllen, damit Vertex AI Search for Retail Qualitätsergebnisse generieren kann.
In diesem Abschnitt wird Folgendes aufgelistet:
- Anforderungen an Nutzerereignisse: Allgemeine Anforderungen an Nutzerereignisse. Diese Anforderungen gelten unabhängig davon, Empfehlungen und die Suche verwenden.
- Empfehlungsspezifische Anforderungen: Anforderungen an Nutzerereignisse für Empfehlungen.
- Suchspezifische Anforderungen: Anforderungen an Nutzerereignisse für die Suche.
Wenn Sie Empfehlungsmodelle verwenden, lesen Sie auch Datenanforderungen für Modelltypen: Hier sind zusätzliche Anforderungen aufgeführt. je nach Art des Empfehlungsmodells und Optimierungsziel, das Sie planen, zu verwenden.
Messwerte zur Datenqualität für die Suche finden Sie in der Retail Search Console auf der Seite Datenqualität. Diese Messwerte geben den Prozentsatz der Produkte und Nutzerereignisse an, die die empfohlenen Standards für die Datenqualität erfüllen. Informationen zum Aufrufen der Suchdatenqualität finden Sie unter Leistungsstufen für die Suche freischalten.
Anforderungen an Nutzerereignisse
Ihre Nutzerereignisse müssen die folgenden Anforderungen erfüllen, damit der Mit Vertex AI Search for Retail können Sie hochwertige Ergebnisse erzielen. Diese gelten sowohl für Empfehlungen als auch für die Suche.
Ereignistyp | Anforderung | Auswirkungen |
---|---|---|
Alle Ereignisse |
Fügen Sie keine synthetischen Daten oder doppelten Ereignisse hinzu. |
Synthetische oder doppelte Ereignisse beeinträchtigen die Modellqualität und verhindern häufig ein erfolgreiches Modelltraining. Doppelte Ereignisse können zu falschen Messwerten führen. |
Geben Sie mindestens 100 eindeutige Besucher-IDs für jeden aufgenommenen Ereignistyp an. |
So hat Vertex AI Search for Retail genügend Daten, um qualitativ hochwertige Ergebnisse zu liefern. |
|
Besucher-IDs müssen beim Ereignisimport genau gleich formatiert sein oder Ereignisaufzeichnungen sowie in API-Anfragen. |
Ein einheitliches Format für Besucher-IDs zu verwenden, Besuchermuster korrekt identifizieren und qualitativ bessere Ergebnisse liefern basierend auf dem Nutzerverhalten. |
|
Die in den Ereignissen enthaltenen Produkte sollten in Ihrem Produktkatalog enthalten sein. |
Das Verhältnis von nicht verbundenen Ereignissen sollte so niedrig wie möglich sein. Ein hohes Verhältnis kann sich negativ auf die Qualität der Empfehlung oder der Suchergebnisse auswirken. Nicht verknüpfte Ereignisdaten werden nicht zum Trainieren von Modellen verwendet. Aus Ereignisse können später zusammengeführt werden, nachdem die verknüpften Produkte aufgenommen wurden. Weitere Informationen finden Sie unter Nutzerereignisse wieder verknüpfen. |
|
Einige Nutzerereignisse sollten dieselbe Besucher-ID haben. |
Zum Erstellen gültiger Sequenzverläufe hat Vertex AI Search for Retail mehrere Ereignisse mit derselben Besucher-ID sehen können.
Angenommen, |
|
detail-page-view |
Fügen Sie genau ein Produkt pro Ereignis ein. |
Das Ereignis kann nicht verwendet werden, wenn kein Produkt vorhanden ist. Wenn mehrere Produkte angegeben sind, wird das Ereignis fehlerhaft und kann nicht verwendet werden. |
add-to-cart |
Fügen Sie genau ein Produkt pro Ereignis ein. |
Wenn mehrere Produkte angegeben sind, ist das Ereignis fehlerhaft und kann nicht verwendet werden. |
purchase-complete |
Schließen Sie |
|
Schließen Sie genau ein Es gibt keinen Standardwährungscode. Sie müssen einen Code angeben. |
Kaufereignisse ohne dieses Feld führen zu falschen Umsatzmesswerten. |
|
Prüfen Sie, ob einige Kaufereignisse mehrere Produkte umfassen. |
Wenn einige Kaufereignisse mehrere Produkte umfassen, kann das Modell Kaufmuster für gemeinsame Käufe lernen. |
Empfehlungsspezifische Anforderungen
Wenn Sie Empfehlungen verwenden, müssen Ihre Nutzerereignisse die folgenden Anforderungen erfüllen.
Wenn Sie Empfehlungsmodelle verwenden, lesen Sie auch Datenanforderungen für Modelltypen: Hier sind zusätzliche Anforderungen aufgeführt. je nach Art des Empfehlungsmodells und Optimierungsziel, das Sie planen, zu verwenden.
Ereignistyp | Anforderung | Auswirkungen |
---|---|---|
purchase-complete |
Vereinfachen Sie Einkaufswagen mit mehreren Artikeln nicht zu mehreren Kaufereignissen. Sie sollten weiterhin als einzelne Kaufereignisse verbleiben, die mehrere Produkte enthalten. |
Dadurch wird sichergestellt, dass gültige Muster für gemeinsame Käufe generiert werden. |
Suchanforderungen
Wenn Sie die Suche verwenden, müssen Ihre Nutzerereignisse die folgenden Mindestanforderungen erfüllen, damit Ergebnisse erzielt werden.
Ereignistyp | Anforderung | Auswirkungen |
---|---|---|
search |
|
Wenn Sie dieses Feld nicht angeben, kann sich dies erheblich auf die Qualität und Messwerte der Suchergebnisse auswirken. |
Die Besucher-ID in Suchanfragen sollte mit der Besucher-ID übereinstimmen, die in Ereignissen gesendet wurde, die sich auf diese Suchanfrage beziehen. |
Wenn sie nicht übereinstimmen, sind die Ereignisse fehlerhaft und die Messwerte sind möglicherweise falsch. |
|
Die Liste der Produkt-IDs in Suchereignissen muss vollständig mit der Liste der Produkte übereinstimmen, die dem Nutzer angezeigt werden. |
Wenn sie nicht übereinstimmen, kann die negative Auswirkung auf die Qualität der Suchergebnisse hoch sein und die Messwerte sind falsch. |
|
Wenn bei der Suche ein Filter verwendet wird, muss |
Wenn dieses Feld nicht vorhanden ist, kann Vertex AI Search for Retail den Filterteil der Daten nicht verwenden, was sich negativ auf die Qualität der Suchergebnisse auswirken kann. |
|
Fügen Sie das Feld |
Wenn Sie kein Attributionstoken angeben, wird in der Retail Search ein Fehler ausgelöst und die Suchqualität und Messwertgenauigkeit werden erheblich beeinträchtigt. |
Anforderungen an die Suchmaschinenoptimierung
Damit die Suche automatisch anhand der zu den allgemeinen Nutzertrends laden Sie die folgenden Daten hoch.
Ereignisse sollten mindestens einmal täglich mit einer maximalen Verzögerung von 24 Stunden hochgeladen werden.
Messwert „Ereignisse“ | Ereignislautstärke/-häufigkeit | Beschreibung |
---|---|---|
Anzahl der search -Ereignisse |
250.000 in den letzten 90 Tagen |
Mindestens 250.000 Ereignisse in den letzten 90 Tagen sind erforderlich, um die Suche anhand der aufgenommenen Ereignisse zu optimieren.
Wir empfehlen, Ereignisse mindestens einmal täglich hochzuladen, um eine gute Datenqualität zu gewährleisten. Achten Sie bei Importen von historischen Ereignissen darauf, dass die Datenverteilung in Richtung des aktuellsten Zeitstempels erfolgt. Die Anzahl der Ereignisse am letzten Tag mit Zeitstempel sollte der durchschnittlichen täglichen Ereignisanzahl entsprechen oder diese überschreiten. |
Volumen von detail-page-view aus einer
search Ereignis |
500.000 in den letzten 30 Tagen | Für die Optimierung der Suchergebnisse mithilfe von Nutzerereignissen sind mindestens 500.000 Ereignisse erforderlich. |
Durchschnittliche Anzahl von detail-page-view -Ereignissen, die einem search -Ereignis pro Produkt zugeordnet werden können |
10 in den letzten 30 Tagen | Erforderlich zum Optimieren von Suchergebnissen mithilfe der Ereignisse aufgenommen wurden, sofern keine Ereignisse der letzten 21 Tage hochgeladen werden. |
Anteil der search -Ereignisse mit parsebaren Filtern |
0,1 in den letzten 30 Tagen | Empfohlen, um die Reihenfolge der dynamischen Facetten in der Suchantwort zu optimieren. |
Anteil der gesuchten Produkte mit Preis | 0,95 in den letzten 30 Tagen | Erforderlich zum Optimieren von Suchergebnissen mithilfe der Ereignisse aufgenommen wurden. |
Durchschnittliche add-to-cart -Ereignisse, die einem
search Ereignis pro Produkt zum Preis |
0,5 in den letzten 30 Tagen | Empfohlen für umsatzoptimierte Suchergebnisse. |
Durchschnittliche purchase-complete -Ereignisse, die einem
search Ereignis pro durchsuchbarem Preisprodukt |
0,5 in den letzten 30 Tagen | Empfohlen für umsatzoptimierte Suchergebnisse. |
Anforderungen an die Personalisierung der Suche
Für die Suche sind die folgenden Daten erforderlich, um die Textsuche zu personalisieren und Suchergebnisse für Ihre Nutzer basierend auf ihren Aktivitäten zu filtern.
Nachdem du die folgenden Daten hochgeladen hast, kann die Suche personalisiert werden automatisch Ergebnisse liefern.
Messwert „Ereignisse“ | Ereignislautstärke/-häufigkeit | Beschreibung |
---|---|---|
Volumen der search -Ereignisse, die über die Suche erfasst wurden |
100.000 in den letzten 30 Tagen |
Mindestens 100.000 Ereignisse,die in den letzten 30 Tagen über die Suche ausgeliefert wurden Tage sind für eine Personalisierung erforderlich.
|
Suchergebnisse werden nicht im Cache gespeichert | Weniger als 1% der letzten 100.000 Nutzerereignisse |
Wenn Sie die Personalisierung verwenden möchten, sollten Sie Suchergebnisse für die Textsuche oder die Navigationssuche nicht im Cache speichern. Wiederverwendung derselben Ergebnisse der Besucher verhindert, dass die Suche personalisierten Ergebnisse angezeigt werden, und es besteht die Gefahr, dass die private Daten zu schützen. Die Suche wird automatisch deaktiviert Personalisierung, wenn Caching erkannt wird. Wenn Sie nur Suchergebnisse im Cache speichern, können Stöberergebnisse trotzdem personalisiert werden. Umgekehrt gilt: Wenn Sie kann die Suche weiterhin die Textsuchsuche personalisieren. Ergebnisse. |
Übereinstimmungen der Besucher-IDs zwischen SearchRequests und Nutzerereignissen
|
Übereinstimmung von mehr als 10 % bei den letzten 100.000 Nutzerereignissen |
Die Abstände und die Formatierung der Besucher-ID müssen
SearchRequests und Nutzerereignisse. Eine einheitliche Formatierung der Besucher-ID sorgt dafür, dass Nutzeraktivitäten in der Suche korrekt erkannt werden können.
|
Beispiele für Nutzerereignistypen und Schemas
In diesem Abschnitt werden die Datenformate für jeden unterstützten Ereignistyp bereitgestellt.
Beispiele für JavaScript Pixel und Tag Manager werden bereitgestellt. Für BigQuery wird das vollständige Tabellenschema für jeden Typ bereitgestellt.
Für alle Nutzerereignistypen ist userId
optional. Die Felder mit Produktinformationen (priceInfo
und availability
) sind optional.
Hinweis:
- Das Feld
experimentIds
ist nur erforderlich, wenn Sie einen A/B-Test machen. - Das Feld
attributionToken
ist nur für Vertex AI Search for Retail erforderlich. Sie wird verwendet, um die Leistung messen.predict
,search
unddetail-page-view
Ereignisse, die durch Klicks generiert werden, sollten einen Wert um die Ereignisse mit den Suchanfragen oder Empfehlungen, die sie generiert haben. - Verwenden Sie für alle Ereignisse dieselbe Währung, insbesondere wenn Sie Google Cloud Console, um Umsatzmesswerte abzurufen. Die Vertex AI Search for Retail API unterstützt nicht die Verwendung mehrerer Währungen pro Katalog.
Weitere Informationen zum Nutzerereignisobjekt finden Sie in der
UserEvent
API-Referenzdokumentation
In den Einkaufswagen
Im Folgenden sehen Sie das Nutzerereignisformat add-to-cart
.
Mindestens erforderliches add-to-cart-Objekt
In den folgenden Beispielen werden nur die erforderlichen Felder des Nutzerereignisformats add-to-cart
gezeigt.
Beim Importieren von Ereignissen müssen Sie den Zeitstempel im Feld
eventTime
in dem durch
RFC 3339.
Je nach verwendeter API-Methode oder bei Verwendung zusätzlicher Felder sind möglicherweise weitere Felder erforderlich. Wenn das Nutzerereignis z. B. mit
eine Entität ist, müssen Sie das Feld entity
angeben.)
Ausführliche Informationen zu den einzelnen Feldern und wann sie erforderlich sind, finden Sie in der
UserEvent
API-Referenzdokumentation
JavaScript Pixel
var user_event = { "eventType": "add-to-cart", "visitorId": "visitor-id", "productDetails": [{ "product": { "id": "product-id" }, "quantity": { "value": product-quantity }] };
Tag Manager
<script> dataLayer = dataLayer || []; dataLayer.push({ 'cloud_retail': { 'eventType': 'add-to-cart', 'visitorId': 'visitor-id', // You can also define the visitor ID // directly on the Tag Manager tag. 'productDetails': [{ 'product': { 'id': 'product-id' }, 'quantity': product-quantity }] } }); </script>
BigQuery
Dies ist das vollständige JSON-Schema für diesen Nutzerereignistyp. Geben Sie dieses Schema an, wenn Sie Tabellen für diesen Nutzerereignistyp in BigQuery erstellen.
Die Modi für Pflichtfelder werden auf REQUIRED
oder REPEATED
gesetzt. Die Modi für optionale Felder sind auf NULLABLE
gesetzt.
Beachten Sie, dass eventTime
zum Importieren von Ereignissen mit BigQuery erforderlich ist. eventTime
ist ein String mit einem Zeitstempelformat.
[ { "name": "eventType", "type": "STRING", "mode": "REQUIRED" }, { "name": "visitorId", "type": "STRING", "mode": "REQUIRED" }, { "name": "eventTime", "type": "STRING", "mode": "REQUIRED" }, { "name": "experimentIds", "type": "STRING", "mode": "REPEATED" }, { "name": "attributionToken", "type": "STRING", "mode": "NULLABLE" }, { "name": "productDetails", "type": "RECORD", "mode": "REPEATED", "fields": [ { "name": "product", "type": "RECORD", "mode": "REQUIRED", "fields": [ { "name": "id", "type": "STRING", "mode": "REQUIRED" } ] }, { "name": "quantity", "type": "INTEGER", "mode": "REQUIRED" } ] }, { "name": "cartId", "type": "STRING", "mode": "NULLABLE" }, { "name": "userInfo", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "userId", "type": "STRING", "mode": "NULLABLE" }, { "name": "ipAddress", "type": "STRING", "mode": "NULLABLE" }, { "name": "userAgent", "type": "STRING", "mode": "NULLABLE" }, { "name": "directUserRequest", "type": "BOOLEAN", "mode": "NULLABLE" } ] }, { "name": "uri", "type": "STRING", "mode": "NULLABLE" }, { "name": "referrerUri", "type": "STRING", "mode": "NULLABLE" }, { "name": "pageViewId", "type": "STRING", "mode": "NULLABLE" }, { "name": "entity", "type": "STRING", "mode": "NULLABLE" } ]
Aufruf von Seite „Kategorie“
Im Folgenden sehen Sie das Nutzerereignisformat category-page-view
.
Mindestens erforderliches category-page-view-Objekt
In den folgenden Beispielen werden nur die erforderlichen Felder des Nutzerereignisformats category-page-view
gezeigt.
Obwohl normalerweise nur eine Kategorie mit einer Seite verknüpft ist, unterstützt das Feld pageCategories
auch eine Kategoriehierarchie, die Sie als Liste bereitstellen können.
Beim Importieren von Ereignissen müssen Sie den Zeitstempel im Feld
eventTime
in dem durch
RFC 3339.
Je nach verwendeter API-Methode oder wenn
werden zusätzliche Felder verwendet. Wenn das Nutzerereignis z. B. mit
eine Entität ist, müssen Sie das Feld entity
angeben.)
Ausführliche Informationen zu den einzelnen Feldern und dazu, wann sie erforderlich sind, finden Sie in der UserEvent
API-Referenzdokumentation.
JavaScript Pixel
var user_event = { "eventType": "category-page-view", "visitorId": "visitor-id", "pageCategories": ["category1 > category2"] };
Tag Manager
<script> dataLayer = dataLayer || []; dataLayer.push({ 'cloud_retail': { 'eventType': 'category-page-view', 'visitorId": 'visitor-id', // You can also define the user ID and visitor ID // directly on the Tag Manager tag. 'pageCategories': ['category1 > category2'] } }); </script>
BigQuery
Dies ist das vollständige JSON-Schema für diesen Nutzerereignistyp. Geben Sie dieses Schema an, wenn Sie Tabellen für diesen Nutzerereignistyp in BigQuery erstellen.
Die Modi für Pflichtfelder werden auf REQUIRED
oder REPEATED
gesetzt. Die Modi für optionale Felder sind auf NULLABLE
gesetzt.
Beachten Sie, dass eventTime
zum Importieren von Ereignissen mit BigQuery erforderlich ist. eventTime
ist ein String mit einem Zeitstempelformat.
[ { "name": "eventType", "type": "STRING", "mode": "REQUIRED" }, { "name": "visitorId", "type": "STRING", "mode": "REQUIRED" }, { "name": "eventTime", "type": "STRING", "mode": "REQUIRED" }, { "name": "experimentIds", "type": "STRING", "mode": "REPEATED" }, { "name": "attributionToken", "type": "STRING", "mode": "NULLABLE" }, { "name": "productDetails", "type": "RECORD", "mode": "REPEATED", "fields": [ { "name": "product", "type": "RECORD", "mode": "REQUIRED", "fields": [ { "name": "id", "type": "STRING", "mode": "REQUIRED" } ] } ] }, { "name": "pageCategories", "type": "STRING", "mode": "REPEATED" }, { "name": "userInfo", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "userId", "type": "STRING", "mode": "NULLABLE" }, { "name": "ipAddress", "type": "STRING", "mode": "NULLABLE" }, { "name": "userAgent", "type": "STRING", "mode": "NULLABLE" }, { "name": "directUserRequest", "type": "BOOLEAN", "mode": "NULLABLE" } ] }, { "name": "uri", "type": "STRING", "mode": "NULLABLE" }, { "name": "referrerUri", "type": "STRING", "mode": "NULLABLE" }, { "name": "pageViewId", "type": "STRING", "mode": "NULLABLE" }, { "name": "entity", "type": "STRING", "mode": "NULLABLE" } ]
Detailseitenansicht
Im Folgenden sehen Sie das Datenformat des Nutzerereignisses detail-page-view
.
Mindestens erforderliches detail-page-view-Objekt
In den folgenden Beispielen werden nur die erforderlichen Felder des Nutzerereignisformats detail-page-view
gezeigt.
In den meisten Fällen enthält productDetails
Details zum zugehörigen Produkt, es sei denn, mehrere Artikel werden gemeinsam verkauft.
Beim Importieren von Ereignissen müssen Sie den Zeitstempel im Feld eventTime
in dem von RFC 3339 angegebenen Format festlegen.
Je nach verwendeter API-Methode oder wenn
werden zusätzliche Felder verwendet. Wenn das Nutzerereignis beispielsweise mit einer Entität verknüpft ist, müssen Sie das Feld entity
angeben.
Ausführliche Informationen zu den einzelnen Feldern und wann sie erforderlich sind, finden Sie in der
UserEvent
API-Referenzdokumentation
JavaScript Pixel
var user_event = { "eventType": "detail-page-view", "visitorId": "visitor-id", "productDetails": [{ "product": { "id": "product-id" } }] };
Tag Manager
<script> dataLayer = dataLayer || []; dataLayer.push({ 'cloud_retail': { 'eventType': 'detail-page-view', 'visitorId': 'visitor-id', // You can also define the visitor ID directly on // the Tag Manager tag. 'productDetails': [{ 'product': { 'id': 'product-id' } }] } }); </script>
BigQuery
Dies ist das vollständige JSON-Schema für diesen Nutzerereignistyp. Geben Sie dieses Schema an, wenn Sie Tabellen für diesen Nutzerereignistyp in BigQuery erstellen.
Die Modi für Pflichtfelder werden auf REQUIRED
oder REPEATED
gesetzt. Die Modi für optionale Felder sind auf NULLABLE
gesetzt.
Beachten Sie, dass eventTime
zum Importieren von Ereignissen mit BigQuery erforderlich ist. eventTime
ist ein String mit einem Zeitstempelformat.
[ { "name": "eventType", "type": "STRING", "mode": "REQUIRED" }, { "name": "visitorId", "type": "STRING", "mode": "REQUIRED" }, { "name": "eventTime", "type": "STRING", "mode": "REQUIRED" }, { "name": "experimentIds", "type": "STRING", "mode": "REPEATED" }, { "name": "attributionToken", "type": "STRING", "mode": "NULLABLE" }, { "name": "productDetails", "type": "RECORD", "mode": "REPEATED", "fields": [ { "name": "product", "type": "RECORD", "mode": "REQUIRED", "fields": [ { "name": "id", "type": "STRING", "mode": "REQUIRED" } ] } ] }, { "name": "userInfo", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "userId", "type": "STRING", "mode": "NULLABLE" }, { "name": "ipAddress", "type": "STRING", "mode": "NULLABLE" }, { "name": "userAgent", "type": "STRING", "mode": "NULLABLE" }, { "name": "directUserRequest", "type": "BOOLEAN", "mode": "NULLABLE" } ] }, { "name": "uri", "type": "STRING", "mode": "NULLABLE" }, { "name": "referrerUri", "type": "STRING", "mode": "NULLABLE" }, { "name": "pageViewId", "type": "STRING", "mode": "NULLABLE" }, { "name": "entity", "type": "STRING", "mode": "NULLABLE" } ]
Startseitenansicht
Im Folgenden sehen Sie das Nutzerereignisformat home-page-view
.
Mindestens erforderliches home-page-view-Objekt
In den folgenden Beispielen werden nur die erforderlichen Felder des Nutzerereignisformats home-page-view
gezeigt.
Beim Importieren von Ereignissen müssen Sie den Zeitstempel im Feld eventTime
in dem von RFC 3339 angegebenen Format festlegen.
Je nach verwendeter API-Methode oder bei Verwendung zusätzlicher Felder sind möglicherweise weitere Felder erforderlich. Wenn das Nutzerereignis beispielsweise mit einer Entität verknüpft ist, müssen Sie das Feld entity
angeben.
Ausführliche Informationen zu den einzelnen Feldern und wann sie erforderlich sind, finden Sie in der
UserEvent
API-Referenzdokumentation
JavaScript Pixel
var user_event = { "eventType": "home-page-view", "visitorId": "visitor-id", };
Tag Manager
<script> dataLayer = dataLayer || []; dataLayer.push({ 'cloud_retail': { 'eventType': 'home-page-view', 'visitorId': 'visitor-id' // You can also define the visitor ID // directly on the Tag Manager tag. } }); </script>
BigQuery
Dies ist das vollständige JSON-Schema für diesen Nutzerereignistyp. Geben Sie dieses Schema an, wenn Sie Tabellen für diesen Nutzerereignistyp in BigQuery erstellen.
Die Modi für Pflichtfelder werden auf REQUIRED
oder REPEATED
gesetzt. Die Modi für optionale Felder sind auf NULLABLE
gesetzt.
Beachten Sie, dass eventTime
zum Importieren von Ereignissen mit BigQuery erforderlich ist. eventTime
ist ein String mit einem Zeitstempelformat.
[ { "name": "eventType", "type": "STRING", "mode": "REQUIRED" }, { "name": "visitorId", "type": "STRING", "mode": "REQUIRED" }, { "name": "eventTime", "type": "STRING", "mode": "REQUIRED" }, { "name": "experimentIds", "type": "STRING", "mode": "REPEATED" }, { "name": "attributionToken", "type": "STRING", "mode": "NULLABLE" }, { "name": "productDetails", "type": "RECORD", "mode": "REPEATED", "fields": [ { "name": "product", "type": "RECORD", "mode": "REQUIRED", "fields": [ { "name": "id", "type": "STRING", "mode": "REQUIRED" } ] }, { "name": "quantity", "type": "INTEGER", "mode": "REQUIRED" } ] }, { "name": "userInfo", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "userId", "type": "STRING", "mode": "NULLABLE" }, { "name": "ipAddress", "type": "STRING", "mode": "NULLABLE" }, { "name": "userAgent", "type": "STRING", "mode": "NULLABLE" }, { "name": "directUserRequest", "type": "BOOLEAN", "mode": "NULLABLE" } ] }, { "name": "uri", "type": "STRING", "mode": "NULLABLE" }, { "name": "referrerUri", "type": "STRING", "mode": "NULLABLE" }, { "name": "pageViewId", "type": "STRING", "mode": "NULLABLE" }, { "name": "entity", "type": "STRING", "mode": "NULLABLE" } ]
Kauf abgeschlossen
Im Folgenden sehen Sie das Datenformat des Nutzerereignisses purchase-complete
.
Mindestens erforderliches purchase-complete-Objekt
In den folgenden Beispielen werden nur die erforderlichen Felder des Nutzerereignisformats purchase-complete
gezeigt.
Beim Importieren von Ereignissen müssen Sie den Zeitstempel im Feld eventTime
in dem von RFC 3339 angegebenen Format festlegen.
Je nach verwendeter API-Methode oder wenn
werden zusätzliche Felder verwendet. Wenn das Nutzerereignis beispielsweise mit einer Entität verknüpft ist, müssen Sie das Feld entity
angeben.
Ausführliche Informationen zu den einzelnen Feldern und dazu, wann sie erforderlich sind, finden Sie in der UserEvent
API-Referenzdokumentation.
JavaScript Pixel
var user_event = { "eventType": "purchase-complete", "visitorId": "visitor-id", "productDetails": [{ "product": { "id": "product-id" }, "quantity": product-quantity }], "purchaseTransaction": { "revenue": revenue, "currencyCode": "currency-code" } };
Tag Manager
<script> dataLayer = dataLayer || []; dataLayer.push({ 'cloud_retail': { 'eventType': 'purchase-complete', 'visitorId': 'visitor-id', // You can also define the visitor id directly on // the Tag Manager tag. 'productDetails': [{ 'product': { 'id': 'product-id' }, 'quantity': product-quantity }], 'purchaseTransaction': { 'revenue': revenue, 'currencyCode': 'currency-code' } } }); </script>
BigQuery
Dies ist das vollständige JSON-Schema für diesen Nutzerereignistyp. Geben Sie dieses Schema an, wenn Sie Tabellen für diesen Nutzerereignistyp in BigQuery erstellen.
Die Modi für Pflichtfelder werden auf REQUIRED
oder REPEATED
gesetzt. Die Modi für optionale Felder sind auf NULLABLE
gesetzt.
Beachten Sie, dass eventTime
zum Importieren von Ereignissen mit BigQuery erforderlich ist. eventTime
ist ein String mit einem Zeitstempelformat.
[ { "name": "eventType", "type": "STRING", "mode": "REQUIRED" }, { "name": "visitorId", "type": "STRING", "mode": "REQUIRED" }, { "name": "eventTime", "type": "STRING", "mode": "REQUIRED" }, { "name": "experimentIds", "type": "STRING", "mode": "REPEATED" }, { "name": "attributionToken", "type": "STRING", "mode": "NULLABLE" }, { "name": "productDetails", "type": "RECORD", "mode": "REPEATED", "fields": [ { "name": "product", "type": "RECORD", "mode": "REQUIRED", "fields": [ { "name": "id", "type": "STRING", "mode": "REQUIRED" }, { "name": "priceInfo", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "price", "type": "FLOAT", "mode": "REQUIRED" }, { "name": "originalPrice", "type": "FLOAT", "mode": "NULLABLE" }, { "name": "currencyCode", "type": "STRING", "mode": "REQUIRED" }, { "name": "cost", "type": "FLOAT", "mode": "NULLABLE" } ] } ] }, { "name": "quantity", "type": "INTEGER", "mode": "REQUIRED" } ] }, { "name": "cartId", "type": "STRING", "mode": "NULLABLE" }, { "name": "purchaseTransaction", "type": "RECORD", "mode": "REQUIRED", "fields": [ { "name": "id", "type": "STRING", "mode": "NULLABLE" }, { "name": "revenue", "type": "FLOAT", "mode": "REQUIRED" }, { "name": "tax", "type": "FLOAT", "mode": "NULLABLE" }, { "name": "cost", "type": "FLOAT", "mode": "NULLABLE" }, { "name": "currencyCode", "type": "STRING", "mode": "REQUIRED" } ] }, { "name": "userInfo", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "userId", "type": "STRING", "mode": "NULLABLE" }, { "name": "ipAddress", "type": "STRING", "mode": "NULLABLE" }, { "name": "userAgent", "type": "STRING", "mode": "NULLABLE" }, { "name": "directUserRequest", "type": "BOOLEAN", "mode": "NULLABLE" } ] }, { "name": "uri", "type": "STRING", "mode": "NULLABLE" }, { "name": "referrerUri", "type": "STRING", "mode": "NULLABLE" }, { "name": "pageViewId", "type": "STRING", "mode": "NULLABLE" }, { "name": "entity", "type": "STRING", "mode": "NULLABLE" } ]
Suche
Im Folgenden sehen Sie das Nutzerereignisformat search
.
Mindestens erforderliches search-Objekt
In den folgenden Beispielen werden nur die erforderlichen Felder des Nutzerereignisformats search
gezeigt.
Mindestens eines der Felder searchQuery
oder pageCategories
ist erforderlich.
productDetails
sollte die Liste der Produkt-IDs enthalten, die dem Endnutzer auf der Suchergebnisseite angezeigt werden.
Beim Importieren von Ereignissen müssen Sie den Zeitstempel im Feld
eventTime
in dem durch
RFC 3339.
Je nach verwendeter API-Methode oder bei Verwendung zusätzlicher Felder sind möglicherweise weitere Felder erforderlich. Wenn das Nutzerereignis beispielsweise mit einer Entität verknüpft ist, müssen Sie das Feld entity
angeben.
Ausführliche Informationen zu den einzelnen Feldern und wann sie erforderlich sind, finden Sie in der
UserEvent
API-Referenzdokumentation
JavaScript Pixel
var user_event = { "eventType": "search", "visitorId": "visitor-id", "searchQuery": "search-query", "pageCategories": ["category1 > category2"], "productDetails": [ { "product": { "id": "product-id1" } }, { "product": { "id": "product-id2" } } ] };
Tag Manager
<script> dataLayer = dataLayer || []; dataLayer.push({ 'cloud_retail': { 'eventType': 'search', 'visitorId': 'visitor-id', // You can also define the visitor ID // directly on the Tag Manager tag. 'searchQuery': 'search-query', 'pageCategories': ['category1 > category2'], 'productDetails': [ { 'product': { 'id': 'product-id1' } }, { 'product': { 'id': 'product-id2' } } ] } }); </script>
BigQuery
Dies ist das vollständige JSON-Schema für diesen Nutzerereignistyp. Geben Sie dieses Schema an, wenn Sie Tabellen für diesen Nutzerereignistyp in BigQuery erstellen.
Die Modi für Pflichtfelder werden auf REQUIRED
oder REPEATED
gesetzt. Die Modi für optionale Felder sind auf NULLABLE
gesetzt.
Beachten Sie, dass eventTime
zum Importieren von Ereignissen mit BigQuery erforderlich ist. eventTime
ist ein String mit einem Zeitstempelformat.
[ { "name": "eventType", "type": "STRING", "mode": "REQUIRED" }, { "name": "visitorId", "type": "STRING", "mode": "REQUIRED" }, { "name": "eventTime", "type": "STRING", "mode": "REQUIRED" }, { "name": "productDetails", "type": "RECORD", "mode": "REPEATED", "fields": [ { "name": "product", "type": "RECORD", "mode": "REQUIRED", "fields": [ { "name": "id", "type": "STRING", "mode": "REQUIRED" } ] } ] }, { "name": "searchQuery", "type": "STRING", "mode": "NULLABLE" }, { "name": "pageCategories", "type": "STRING", "mode": "REPEATED" }, { "name": "entity", "type": "STRING", "mode": "NULLABLE" } ]
Automatische Vervollständigung
Dieses Feld ist für Suchen nur erforderlich, wenn Sie die automatische Vervollständigung verwenden möchten. Für die Suche ist er nicht erforderlich.
In den folgenden Beispielen ist das Feld completionDetail
zu sehen, wenn ein Nutzer „sh“ eingibt und in der Vorschlagsliste auf den zweiten Vorschlag „Schuhe“ klickt, um ein Suchereignis auszulösen. Wenn der Nutzer nicht auf Vorschläge klickt, wird die completionDetail
bleibt leer.
eventType
muss "search"
lauten.
completionAttributionToken
ist der Wert attributionToken
aus der Antwort completeQuery
.
selectedSuggestion
muss mit searchQuery
identisch sein.
JavaScript Pixel
var user_event = { "eventType": "search", "visitorId": "visitor-id", "searchQuery": "search-query", "pageCategories": ["category1 > category2"], "productDetails": [ { "product": { "id": "product-id1" } }, { "product": { "id": "product-id2" } } ] "completionDetail": { "completionAttributionToken": "completion_token", "selectedSuggestion": "search-query", "selectedPosition": completion_position } };
Tag Manager
<script> dataLayer = dataLayer || []; dataLayer.push({ 'cloud_retail': { 'eventType': 'search', 'visitorId': 'visitor-id', // You can also define the visitor ID // directly on the Tag Manager tag. 'searchQuery': 'search-query', 'pageCategories': ['category1 > category2'], 'productDetails': [ { 'product': { 'id': 'product-id1' } }, { 'product': { 'id': 'product-id2' } } ] "completionDetail": { "completionAttributionToken": 'completion_token', "selectedSuggestion": 'search-query', "selectedPosition": completion_position } } }); </script>
BigQuery
Dies ist das vollständige JSON-Schema für diesen Nutzerereignistyp. Geben Sie dieses Schema an, wenn Sie Tabellen für diesen Nutzerereignistyp in BigQuery erstellen.
Die Modi für Pflichtfelder werden auf REQUIRED
oder REPEATED
gesetzt. Die Modi für optionale Felder sind auf NULLABLE
gesetzt.
Beachten Sie, dass eventTime
zum Importieren von Ereignissen mit BigQuery erforderlich ist. eventTime
ist ein String mit einem Zeitstempelformat.
[ { "name": "eventType", "type": "STRING", "mode": "REQUIRED" }, { "name": "visitorId", "type": "STRING", "mode": "REQUIRED" }, { "name": "eventTime", "type": "STRING", "mode": "REQUIRED" }, { "name": "productDetails", "type": "RECORD", "mode": "REPEATED", "fields": [ { "name": "product", "type": "RECORD", "mode": "REQUIRED", "fields": [ { "name": "id", "type": "STRING", "mode": "REQUIRED" } ] } ] }, { "name": "searchQuery", "type": "STRING", "mode": "NULLABLE" }, { "name": "pageCategories", "type": "STRING", "mode": "REPEATED" }, { "name": "completionDetail", "type": "RECORD" "mode": "NULLABLE" "fields": [ { "name": "completionAttributionToken", "type": "STRING", "mode": "REQUIRED" }, { "name": "selectedSuggestion", "type": "STRING", "mode": "REQUIRED" }, { "name": "selectedPosition", "type": "INTEGER", "mode": "REQUIRED" } ] } ]
Shopping cart page view
Im Folgenden sehen Sie das Datenformat des Nutzerereignisses shopping-cart-page-view
.
Mindestens erforderliches shopping-cart-page-view-Objekt
In den folgenden Beispielen werden nur die erforderlichen Felder des Nutzerereignisformats shopping-cart-page-view
gezeigt.
Geben Sie das productDetails
-Objekt an, sofern der Einkaufswagen nicht leer ist.
Beim Importieren von Ereignissen müssen Sie den Zeitstempel im Feld eventTime
in dem von RFC 3339 angegebenen Format festlegen.
Je nach verwendeter API-Methode oder wenn
werden zusätzliche Felder verwendet. Wenn das Nutzerereignis z. B. mit
eine Entität ist, müssen Sie das Feld entity
angeben.)
Ausführliche Informationen zu den einzelnen Feldern und dazu, wann sie erforderlich sind, finden Sie in der UserEvent
API-Referenzdokumentation.
JavaScript Pixel
var user_event = { "eventType": "shopping-cart-page-view", "visitorId": "visitor-id "cartId": "cart-id", "productDetails": [{ "product": { "id": "product-id" }, { "id": "product-id" } }] };
Tag Manager
<script> dataLayer = dataLayer || []; dataLayer.push({ 'cloud_retail': { 'eventType': 'shopping-cart-page-view', 'visitorId': 'visitor-id' // You can also define the visitor ID // directly on the Tag Manager tag. 'cartId': 'cart-id', 'productDetails': [{ 'product': { 'id': 'product-id' }, { 'id': 'product-id' } }] } }); </script>
BigQuery
Dies ist das vollständige JSON-Schema für diesen Nutzerereignistyp. Geben Sie dieses Schema an, wenn Sie Tabellen für diesen Nutzerereignistyp in BigQuery erstellen.
Die Modi für Pflichtfelder werden auf REQUIRED
oder REPEATED
gesetzt. Die Modi für optionale Felder sind auf NULLABLE
gesetzt.
Beachten Sie, dass eventTime
zum Importieren von Ereignissen mit BigQuery erforderlich ist. eventTime
ist ein String mit einem Zeitstempelformat.
[ { "name": "eventType", "type": "STRING", "mode": "REQUIRED" }, { "name": "visitorId", "type": "STRING", "mode": "REQUIRED" }, { "name": "eventTime", "type": "STRING", "mode": "REQUIRED" }, { "name": "experimentIds", "type": "STRING", "mode": "REPEATED" }, { "name": "attributionToken", "type": "STRING", "mode": "NULLABLE" }, { "name": "productDetails", "type": "RECORD", "mode": "REPEATED", "fields": [ { "name": "product", "type": "RECORD", "mode": "REQUIRED", "fields": [ { "name": "id", "type": "STRING", "mode": "REQUIRED" } ] }, { "name": "quantity", "type": "INTEGER", "mode": "REQUIRED" } ] }, { "name": "cartId", "type": "STRING", "mode": "NULLABLE" }, { "name": "userInfo", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "userId", "type": "STRING", "mode": "NULLABLE" }, { "name": "ipAddress", "type": "STRING", "mode": "NULLABLE" }, { "name": "userAgent", "type": "STRING", "mode": "NULLABLE" }, { "name": "directUserRequest", "type": "BOOLEAN", "mode": "NULLABLE" } ] }, { "name": "uri", "type": "STRING", "mode": "NULLABLE" }, { "name": "referrerUri", "type": "STRING", "mode": "NULLABLE" }, { "name": "pageViewId", "type": "STRING", "mode": "NULLABLE" }, { "name": "entity", "type": "STRING", "mode": "NULLABLE" } ]
Google Analytics 4-Nutzerereignisfelder
In der folgenden Tabelle sehen Sie, wie Google Analytics 4-Nutzerereignisfelder zugeordnet werden. in Vertex AI Search für den Einzelhandel.
Bevor Sie Nutzerereignisse aus Google Analytics 4 importieren oder erfassen, müssen Sie dafür sorgen, dass in Ihren Google Analytics 4-Nutzerereignissen die folgenden Felder verwendet werden, damit Ihre Daten in Vertex AI Search for Retail korrekt eingebunden werden können.
Google Analytics 4 | Einzelhandel |
---|---|
ecommerce.purchase_revenue |
purchaseTransaction.revenue |
event_name |
eventType |
event_timestamp |
eventTime |
items.item_id |
productDetails.product.id |
items.price |
productDetails.product.priceInfo.price |
items.quantity |
productDetails.quantity |
Schlüssel:event_params.key festgelegt auf "currency" Wert: event_params.value.string_value |
productDetails.product.priceInfo.currencyCode |
Schlüssel:event_params.key festgelegt auf "currency" Wert: event_params.value.string_value |
purchaseTransaction.currencyCode |
Schlüssel:event_params.key auf "search_term" festgelegt Wert: event_params.value.string_value |
searchQuery |
user_id |
userInfo.userId |
user_pseudo_id |
visitorId |
Benutzerdefinierte Attribute
Sie können zusätzliche benutzerdefinierte Attribute und Funktionen für Nutzerereignisse hinzufügen. Dies kann zu besseren, spezifischeren Empfehlungen für Ihre Nutzer führen. Verwenden Sie zum Hinzufügen benutzerdefinierter Attribute die
attributes
, wenn Sie ein Nutzerereignis aufzeichnen.
Wenn Sie benutzerdefinierte Attribute für aufgenommene Nutzerereignisse angeben, ist es wichtig, sie auch in die Nutzerereignisse aufnehmen, die Sie der Vorhersage zuordnen -Anfragen. Die Formatierung von benutzerdefinierten Attributen muss bei importierten Ereignissen und Ereignissen, die in Vorhersageanfragen bereitgestellt werden, einheitlich sein. Dies ermöglicht beim Trainieren von Modellen und die Bereitstellung von Vorhersagen, wodurch die Qualität der Empfehlungen verbessert wird.
Sie können benutzerdefinierte Textwerte mit dem Feld text
oder benutzerdefinierte numerische Werte mit dem Feld number
angeben.
Das folgende Beispiel zeigt den Abschnitt attributes
aus einer Anfrage zum Aufzeichnen eines Nutzerereignisses:
"attributes": { "user_age": {"text": ["teen", "young adult"]}, "user_location": {"text": ["CA"]} }
Über Nutzerinformationen
visitorId
steht für die eindeutige Nutzerkennung und ist erforderlich, wenn Sie ein Nutzerereignis aufzeichnen.
Die Nutzerinformationen (UserInfo
), die beim Aufzeichnen eines Nutzerereignisses einbezogen werden, enthalten den Wert visitorId
und, falls verfügbar, den Wert userId
.
userId
ist optional und kann als eindeutige permanente Kennzeichnung für einen Nutzer auf allen Geräten verwendet werden, wenn sich ein Nutzer auf Ihrer Website anmeldet. Wenn Sie userId
für einen Nutzer aufzeichnen, wird Vertex AI Search for Retail
kann personalisiertere Ergebnisse für einen Nutzer auf mehreren Geräten generiert werden.
etwa auf einem Mobilgerät und
in einem Webbrowser.
Informationen zum Zeitstempel
Wenn Sie ein Nutzerereignis aufzeichnen, müssen Sie einen genauen Zeitstempel für das Ereignis angeben. Genaue Zeitstempel sorgen dafür, dass Ereignisse in der richtigen Reihenfolge gespeichert werden. Für Ereignisse, die mit Tag Manager und JavaScript Pixel erfasst wurden, werden Zeitstempel automatisch erfasst. Beim Importieren von Ereignissen müssen Sie den Zeitstempel im Feld eventTime
in dem von RFC 3339 angegebenen Format festlegen.