תיעוד אירועים של משתמשים בזמן אמת

בדף הזה מוסבר איך מתעדים אירועים של משתמשים בזמן אמת. AI Commerce Search משתמש באירועי משתמשים בזמן אמת כדי ליצור המלצות ותוצאות חיפוש. ככל שתתעדו יותר סוגים של אירועי משתמשים עם פרטי מוצרים תקינים, כך איכות התוצאות תהיה גבוהה יותר.

ההליכים לתיעוד שמופיעים בדף הזה רלוונטיים גם להמלצות וגם לחיפושים. אחרי שמתעדים נתונים, שני השירותים יכולים להשתמש באירועים האלה, כך שלא צריך להעלות את אותם נתונים פעמיים אם משתמשים בשני השירותים.

לפני שמתחילים

לפני שמקליטים אירועים של משתמשים, צריך לוודא שיש לכם:

  • נוצר פרויקט Google Cloud , והוגדר אימות.

  • מפתח API תקין (ל-JavaScript Pixel או ל-Tag Manager), או חשבון שירות תקין עם התפקיד 'עורך Retail' שהוקצה לו אם משתמשים ב-API כדי לכתוב ישירות.

רכיבים נדרשים

  • אסימון שיוך (Attribution token): האסימון מאפשר לכם לראות מדדי ביצועים של אירועים שמתעדים פעולות של משתמשים, כדי לעקוב אחרי אינטראקציות ראשונות של משתמשים עם מוצר על סמך המלצות או תוצאות חיפוש שסופקו בעבר. מידע נוסף על הכללת טוקנים של שיוך

  • מזהי מבקרים: נדרש כשמתעדים אירועים של משתמשים. מידע נוסף זמין במאמר בנושא מידע על משתמשים.

איך מתחילים להקליט

הזרמת אירועים של משתמשים בזמן אמת

גם ייבוא בכמות גדולה וגם סטרימינג בזמן אמת הם מנגנונים יעילים להוספת אירועי משתמשים ל-AI Commerce Search, אבל לסטרימינג בזמן אמת יש כמה יתרונות חשובים:

  • התאמה מיידית של נפח הנתונים: סטרימינג בזמן אמת מבטל לעיתים קרובות את הצורך בצינורות נוספים של חילוץ, טרנספורמציה וטעינה (ETL), ומאפשר התאמה של נפח הנתונים ככל שנפחי האירועים גדלים. בדרך כלל התשתית יכולה להתמודד עם צמיחה באופן אורגני בלי לבצע שינויים משמעותיים.

  • שילוב עם Google Analytics‏ (GA4): אתרים שמוטמע בהם GA4 יכולים להשתמש ב-Google Tag Manager כדי לתעד אירועים בזמן אמת ולהזרים אותם אל AI Commerce Search, וכך לא צריך להטמיע מעקב אחר אירועים מותאמים אישית.

  • קריאות API ישירות: אפשר להעביר אירועים בזמן אמת ישירות מהקצה הקדמי או דרך שרת proxy באמצעות ממשקי API בארכיטקטורת REST. כך אפשר לשלב את התהליך כולו ולצמצם את נקודות הכשל האפשריות.

  • מדידת מדדי KPI עדכנית ודיווח על שגיאות: עיבוד מהיר יותר של אירועים בזמן אמת מאפשר מדידה עדכנית יותר של מדדי KPI ודיווח על שגיאות. כך אפשר לזהות ולפתור בעיות מהר יותר.

  • התאמה אישית בזמן אמת: AI Commerce Search יכול ללכוד ולעבד אירועים שקשורים למשתמשים בזמן אמת, וכך לספק תוצאות חיפוש מותאמות אישית על סמך התנהגות הגלישה והרכישה האחרונה שלהם.

שיטות להזרמת אירועים של משתמשים פעילים

יש כמה דרכים לתעד אירוע משתמש:

חסרונות פוטנציאליים של סטרימינג בזמן אמת

החסרונות הפוטנציאליים של סטרימינג בזמן אמת יכולים להתבטא בדרכים הבאות:

  • הטמעה מחדש מוגבלת: בניגוד לייבוא בכמות גדולה, שבו אפשר להכין את הנתונים ב-BigQuery או ב-Cloud Storage, קשה להטמיע מחדש אירועים בזמן אמת במקרה של שגיאות או נתונים פגומים. לכן, צריך מנגנוני אימות חזקים בנקודת ההטמעה כדי להבטיח את תקינות הנתונים.

  • בעיות בניתוח בהתאמה אישית: אם נדרש ניתוח בהתאמה אישית של נתוני אירועים, לעיתים קרובות צריך לייצא את האירועים ל-BigQuery כדי לעבד אותם. זה עלול להפוך לצוואר בקבוק בזרמי אירועים בנפח גבוה, ועלול להאט את הניתוח והדיווח.

  • ניפוי באגים רטרוספקטיבי מוגבל והעברת נתוני אירועים: שליחת האירוע ישירות בלי העברה לאזור זמני מגבילה את היכולת לבצע ניתוח רטרוספקטיבי של האירועים שכבר נאספו. מגבלה פוטנציאלית נוספת היא שייתכן שלא יהיו מספיק אירועים לאימון המודלים בסביבה נמוכה יותר. אם יש לכם אזור זמני לנתוני האירועים (BigQuery או Cloud Storage), תוכלו גם לייבא או להעביר את האירועים בסביבות אחרות אחרי שינויים קלים בנתונים.

הבנת הניואנסים האלה יכולה לעזור לכם לקבל החלטות מושכלות לגבי אסטרטגיית הטמעת אירועי המשתמשים שהכי מתאימה לצרכים ולסדרי העדיפויות הספציפיים שלכם בסביבת AI Commerce Search.

שיטות מומלצות לתיעוד אירועים של משתמשים

כדי ליצור תוצאות באיכות גבוהה, חיפוש מסחרי מבוסס-AI דורש נתונים באיכות גבוהה. אם הנתונים לא מלאים או לא נכונים, איכות התוצאות נפגעת.

כשמתעדים אירועים של משתמשים, חשוב להקפיד על השיטות המומלצות הבאות:

  • אם אתם מתעדים אירועים של משתמשים לפני או במהלך ייבוא הקטלוג, צריך להצטרף מחדש לכל האירועים שתועדו לפני שהסתיים ייבוא הקטלוג.

    אפשר לייבא את הקטלוג לפני, אחרי או בזמן שאתם מתעדים אירועים שקשורים למשתמשים. ביצוע המשימות האלה במקביל יכול לחסוך זמן אם הקטלוג גדול ויש הרבה אירועים של משתמשים. אחרי שהייבוא של הקטלוג מסתיים, צריך להשתמש ב-API כדי לצרף מחדש אירועים שהועלו לפני שהייבוא הסתיים.

    כשאירוע משתמש נוצר, AI Commerce Search מנסה לשלב בין אירועי משתמש מתועדים לבין מטא-נתונים מקטלוג המוצרים. רק אירועים שהצטרפתם אליהם בהצלחה משמשים לאימון, לכן חשוב להצטרף מחדש לכל האירועים שתועדו לפני שהקטלוג יובא במלואו. אם אירוע מתייחס לפריט שלא קיים בקטלוג, הוא נמחק או לא משויך למוצרים הנכונים. באופן דומה, אם מייבאים אירועי משתמשים מהעבר, הקטלוג צריך לכלול את כל המוצרים שהם מתייחסים אליהם. אפשר לסמן מוצרים ישנים כOUT_OF_STOCK במקום להסיר אותם מהקטלוג.

  • שומרים על קטלוג עדכני.

    כשאתם מתעדים אירועים של משתמשים, המוצר שנכלל באירוע של המשתמש מקושר לקטלוג הנוכחי שלכם. אם אתם מתעדים אירוע שקשור למוצר שלא מופיע בקטלוג הנוכחי, אי אפשר להשתמש בו לאימון המודלים. האירוע הזה נקרא אירוע שלא משויך. אם הקלטתם אירועים לפני שהקטלוג יובא במלואו, תצטרכו להצטרף מחדש לאירועים שהוקלטו במהלך הייבוא. צפויים להיות כמה אירועים שלא הצטרפתם אליהם. עם זאת, אם אחוז האירועים שלא שויכו מגיע ל-5% או יותר מסך כל אירועי המשתמשים, חשוב לוודא שהקטלוג מעודכן, לשייך מחדש אירועים שתועדו לפני שהקטלוג עודכן באופן מלא ולבדוק למה נוצרים אירועים שלא שויכו.

    אתם יכולים להשתמש בסינון אירועים כדי לראות את האירועים שלא הצטרפתם אליהם. מידע נוסף

  • כדאי לספק כמה שיותר מידע על אירועי המשתמשים.

    לכל סוג של אירוע משתמש יש מידע שונה שנדרש ומתקבל. מידע נוסף זמין במאמר מידע על אירועים שקשורים למשתמשים.

  • הגדרת התראות ב-Cloud Monitoring כדי לדעת אם יש שיבושים בתהליכי ההקלטה של אירועי המשתמשים.

  • כשמייבאים אירועים של משתמשים בכמות גדולה, צריך להגביל את גודל הנתונים שמייבאים.

    ייבוא של אירועים בכמות גדולה יכול להימשך עד 24 שעות.

    הגודל של כל קובץ צריך להיות עד 2GB. אפשר לכלול עד 100 קבצים בבקשת ייבוא אחת. אחת הגישות היא לייבא רק את אירועי המשתמשים ליום אחד בכל פעם.

  • אחרי ייבוא בכמות גדולה, כדאי לבדוק את דוח השגיאות כדי לוודא שהנתונים יובאו בצורה תקינה.

  • כשמייבאים נתוני אירועים של משתמשים, צריך לכלול חותמת זמן מדויקת לכל אירוע של משתמש, ולהימנע מייבוא של אירועים עוקבים של משתמשים עם חותמות זמן זהות.

    צריך לציין את חותמת הזמן בשדה eventTime בפורמט שמוגדר ב-RFC 3339.

  • אם ייבאתם אירועים של משתמשים שהם שגויים, פנו לאיש הקשר שלכם ב-AI Commerce Search כדי לברר איך לפתור את הבעיה.

  • אם אפשר, כדאי לשמור את נתוני האירועים של המשתמשים באופן רציף.

    פערים בנתוני האירועים של המשתמשים עלולים לפגוע באיכות המודל.

  • כדי לשמור על האנונימיות של המשתמשים ב-AI Commerce Search ולהגן על הפרטיות שלהם, צריך להשתמש במזהה ייחודי מאובטח. באחריותכם לצנזר מהנתונים פרטים אישיים מזהים (PII), כמו כתובות אימייל או כתובות מגורים.

מדריך לכתיבת אירועים של משתמשים

במדריך הזה נסביר איך לתעד אירועים של משתמשים באמצעות השיטה userEvents.write.


בלחיצה על תראו לי איך תקבלו הסבר מפורט על המשימה ישירות ב-Cloud Shell Editor:

תראו לי איך


תיעוד אירועים של משתמשים באמצעות פיקסל JavaScript

בדפי אינטרנט רגילים (אפליקציות מרובות דפים או MPA), הדוגמה הבאה מתעדת detail-page-view UserEvent באמצעות פיקסל JavaScript.

  var user_event = {
    "eventType" : "detail-page-view",
    "visitorId": "visitor-id",
    "userInfo": {
        "userId": "user-id"
    },
    "experimentIds": "experiment-id",
    "productDetails": [
        {
          "product": {"id": "123"}
        }
    ]
  };
  var _gre = _gre || [];
  // Credentials for project.
  _gre.push(['apiKey', 'api-key']);
  _gre.push(['logEvent', user_event]);
  _gre.push(['projectId', 'project-id']);
  _gre.push(['locationId', 'global']);
  _gre.push(['catalogId', 'default_catalog']);
  (function() {
    var gre = document.createElement('script'); gre.type = 'text/javascript'; gre.async = true;
    gre.src = 'https://www.gstatic.com/retail/v2_event.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(gre, s);
  })();
  

אם ייבאתם אירועים של משתמשים באמצעות Google Analytics 360, צריך להגדיר את visitorID למזהה הלקוח של Google Analytics. שימו לב שמזהה הלקוח ב-Google Analytics הוא רק חלק משם קובץ ה-cookie המלא ‎_ga (לדוגמה, מזהה הלקוח 123456789.123456789 הוא חלק מקובץ ה-cookie‏ ‎_ga GA1.3.123456789.123456789).

זוהי דוגמה מקוצרת שמראה את הפורמט להגדרת מזהה הלקוח באירוע משתמש. מחליפים את G-XXXXXX במזהה לצורכי מעקב של Google Analytics.

    var tracker = ga.getByName('G-XXXXXX');
    var user_event = {
          "visitorId": tracker.get('clientId')
    };
  

דוגמה מתקדמת: אפליקציות בדף יחיד ומספר אירועים

אפליקציות של דף יחיד לא נתמכות באופן רשמי על ידי פיקסל JavaScript, אבל אפשר לשלוח אירועים ישירות. כדי לעשות זאת, צריך לקרוא ישירות לפונקציה cloud_retail.logEvent() עם הפרמטרים המתאימים.

<html>
  <body>
    <p>This is a great product.</p>
    <button id="addToCartBtn">Add to Cart (Product ID: item123)</button>

    <script type="text/javascript">
      // Initialize the Google Retail Events array for the initial load
      var _gre = _gre || [];

      // --- RETAIL API CONFIGURATION ---
      const API_KEY = 'api-key';
      const