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 nutzt Nutzerereignisse in Echtzeit, um Empfehlungen und in den Suchergebnissen. Wenn Sie Daten hochladen, und die Suche können diese Daten Daten, sodass Sie die gleichen Ereignisse nicht zweimal hochladen müssen, wenn Sie beide .
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 erfüllen, damit Vertex AI Search for Retail qualitativ hochwertige Ergebnisse zu erzielen.
In diesem Abschnitt wird Folgendes aufgelistet:
- Anforderungen an Nutzerereignisse: allgemeines Nutzerereignis Anforderungen. 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 auf der Seite Datenqualität in der Search for Retail-Konsole. Diese Messwerte zeigen die der Produkte und Nutzerereignisse, die den empfohlenen Standards Datenqualität. Informationen zum Anzeigen der Suchdatenqualität finden Sie unter Schalten Sie Leistungsstufen für die Suche frei.
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 und die Suche.
Ereignistyp | Anforderung | Auswirkungen |
---|---|---|
Alle Ereignisse |
Verwenden Sie keine synthetischen Daten oder doppelten Ereignisse. |
Synthetische oder doppelte Ereignisse beeinträchtigen die Modellqualität und verhindern oft 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.
Beispiel: |
|
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. muss ein Code angegeben werden. |
Kaufereignisse ohne dieses Feld führen zu falschen Umsatzmesswerten. |
|
Prüfen Sie, ob einige Kaufereignisse mehrere Produkte umfassen. |
Wenn einige Kaufereignisse mit mehreren Produkten vorliegen, kann das Modell gemeinsame Kaufmuster besser lernen. |
Empfehlungsspezifische Anforderungen
Wenn Sie Empfehlungen verwenden, müssen Ihre Nutzerereignisse den Anforderungen entsprechen 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 mit den die folgenden Mindestanforderungen erfüllen, um Ergebnisse zu erhalten.
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 nicht den Filterteil der Daten verwenden, der sich negativ auf die Suche auswirken kann die Qualität der Ergebnisse. |
|
Fügen Sie das Feld |
Wenn Sie kein Suchtoken angeben, hat dies erhebliche negative Auswirkungen auf die Suchqualität und Messwertgenauigkeit. |
Anforderungen für die Suchoptimierung
Damit die Suche automatisch anhand der zu allgemeinen Nutzertrends auf, laden Sie die folgenden Daten hoch.
Ereignisse sollten mindestens einmal täglich mit einer Verzögerung von maximal 24 Stunden hochgeladen werden.
Messwert „Ereignisse“ | Ereignislautstärke/-häufigkeit | Beschreibung |
---|---|---|
Volumen von search Ereignissen |
250.000 in den letzten 90 Tagen |
Für die Nutzung sind mindestens 250.000 Ereignisse in den letzten 90 Tagen erforderlich. 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 Zeitstempeltag sollte mindestens der durchschnittlichen täglichen Ereignisanzahl entsprechen. |
Volumen von detail-page-view aus einer
search Ereignis |
500.000 in den letzten 30 Tagen | Für die Optimierung der Suche sind mindestens 500.000 Ereignisse erforderlich. Ergebnisse mithilfe von Nutzerereignissen. |
Durchschnittliche detail-page-view -Ereignisse, die einem
search Ereignis pro Produkt |
10 in den letzten 30 Tagen | Erforderlich zum Optimieren von Suchergebnissen mithilfe der Ereignisse aufgenommen wurden, sofern keine Ereignisse der letzten 21 Tage hochgeladen wurden. |
Anteil der search -Ereignisse mit parsbaren Filtern |
0,1 in den letzten 30 Tagen | Empfohlen zur Optimierung der Reihenfolge dynamischer Attribute in der Suchantwort. |
Anteil der gesuchten Produkte mit Preisangabe | 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
Die Suche benötigt die folgenden Daten, um die Textsuche zu personalisieren und durchstöbern Sie die Suchergebnisse für Ihre Nutzer basierend auf deren Aktivitäten.
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 |
Suchergebnisse für die Textsuche nicht im Cache speichern wenn Sie die Personalisierung verwenden möchten. Wiederverwendung derselben Ergebnisse der Besucher verhindert, dass die Suche personalisierten Ergebnisse an einen bestimmten Nutzer gesendet, 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, kann die Suche und die Suchergebnisse personalisieren. Umgekehrt gilt: Wenn Sie kann die Suche weiterhin die Textsuchsuche personalisieren. Ergebnisse. |
Besucher-ID-Übereinstimmungen zwischen SearchRequests und Nutzerereignissen
|
Mehr als 10% Übereinstimmung mit den letzten 100.000 Nutzerereignissen |
Die Abstände und die Formatierung der Besucher-ID müssen
SearchRequests und Nutzerereignisse. Einheitliche Besucher-ID
dass die Google-Suche Nutzeraktivitäten identifizieren kann,
korrekt sind.
|
Beispiele für Nutzerereignistypen und Schemas
Dieser Abschnitt enthält die Datenformate für jeden unterstützten Ereignistyp.
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 Produktinformationen
(priceInfo
und availability
) sind
optional.
Hinweis:
- Das Feld
experimentIds
ist nur erforderlich, wenn Sie einen A/B-Test machen. - Das Feld
attributionToken
ist optional. Es wird verwendet, um die Leistung zu 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 von mehrere Währungen pro Katalog auf.
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 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 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": 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 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 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 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 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 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 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 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 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 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 nur für Suchereignisse erforderlich, wenn Sie Automatische Vervollständigung: Für die Suche ist er nicht erforderlich.
In den folgenden Beispielen sehen Sie das Feld completionDetail
, wenn ein Nutzer „sh“ eingibt
und klickt in der Vorschlagsliste auf den zweiten Vorschlag "Schuhe", um eine
Search-Ereignis. Wenn der Nutzer nicht auf Vorschläge klickt, wird die completionDetail
bleibt leer.
eventType
muss "search"
lauten.
completionAttributionToken
ist der attributionToken
der completeQuery
-Antwort.
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 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 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 for Retail.
Bevor Sie Nutzerereignisse aus Google Analytics 4 importieren oder aufzeichnen, müssen Sie müssen für Ihre Google Analytics 4-Nutzerereignisse die folgenden Felder verwendet werden, dass Vertex AI Search for Retail Ihre Daten korrekt einbinden kann.
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 festgelegt auf "search_term" 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. Dieses
zu besseren und spezifischeren Empfehlungen für eure Nutzer führen, wenn ihr
Empfehlungen nutzen. 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 benutzerdefinierter Attribute muss zwischen importierte Ereignisse und Ereignisse, die mit Vorhersageanfragen bereitgestellt werden. Dies ermöglicht beim Trainieren von Modellen und um Vorhersagen zu ermitteln. So lässt sich die Qualität der Empfehlungen verbessern.
Sie können benutzerdefinierte Textwerte über das Feld text
oder benutzerdefinierte Textwerte angeben
numerische Werte mithilfe des Felds number
.
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.
Nutzerinformationen (UserInfo
), die beim Aufzeichnen eines Nutzers enthalten sind
Ereignis enthält den Wert visitorId
und, falls verfügbar, den Wert userId
.
userId
ist optional und kann verwendet werden als
Eine eindeutige, dauerhafte Kennung für einen Nutzer geräteübergreifend, wenn sich ein Nutzer anmeldet
auf Ihrer Website. 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. Durch genaue Zeitstempel wird sichergestellt, dass Ereignisse im
in der richtigen Reihenfolge. Für Ereignisse, die mithilfe von
Tag Manager und das JavaScript-Pixel. Beim Importieren von Ereignissen müssen Sie den Zeitstempel im Feld eventTime
in dem von RFC 3339 angegebenen Format festlegen.