חיפוש וגלישה

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

הסבר על ההבדלים העיקריים

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

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

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

עיון

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

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

הגדרת חיפוש וגלישה

היתרון של AI Commerce Search הוא ה-API המאוחד שלו לבקשות חיפוש וגלישה.

הגדרת חיפוש

אירועים של משתמשים בחיפוש צריכים לכלול את השדות האלה, בנוסף לשדות חובה רגילים אחרים של אירועים של משתמשים (eventType = "search"):

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

  # Construct the search request
  search_request = {
      "query": "red running shoes", # User's search query
      "filter": "brand:ANY('Nike')", # Optional filter
      "page_size": 10 # Number of results per page
  }

# Send the request to the VAIS:Commerce API search_response = client.search(search_request)

# Process the search results for product in search_response.results: print(product.title, product.price)

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

הגדרת הגלישה

אירועי משתמשים בחיפושים בדפדפן חייבים לכלול את השדות האלה, בנוסף לשדות חובה רגילים אחרים של אירועי משתמשים (eventType = "search" לאירועים בדפדפן):

  • קטגוריות דפים: page_categories מייצג את הקטגוריה או הבאנר שמתחתיהם מופיעים המוצרים. עם זאת, בספריות לקוח פיזיות או בממשקי API ישנים יותר, השדה הזה עדיין עשוי להופיע כערך היחיד page_category. אפשר להגדיר את צורת הרבים כזהה ל-categories[] בקטלוג. הוא רק צריך לייצג את הקטגוריה שהמסנן מייצג.

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

  • התאמה בין האירוע לבקשה: אירוע המשתמש שמתאים לפעולת העיון צריך להכיל את אותם ערכים של page_categories ושל המסנן שמועברים בבקשת ה-API.

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

במסנני חיפוש, שדות כמו category או categoryid, כמו בדוגמאות האלה, הם בדרך כלל מאפיינים מותאמים אישית שאתם מספקים.

הנה ארבע הדוגמאות שצוינו למעלה לאפשרויות שונות של בקשות גלישה. (צריך לבחור פורמט אחד בלבד).

  # a browse request with a custom category attribute
  browse_request = {
      "page_categories": ["Men's > Clothing > Shirts"], # Represents full taxonomy Path on the site
      "filter": "category:ANY('Shirts') AND gender: ANY('Male')", # Compulsory filter on custom attribute
      "page_size": 10
  }
  # a browse request showing category ID (Men's shirts custom id)
  browse_request = {
      "page_categories": ["Men's > Clothing > Shirts"],
      "filter": "categoryid:ANY(1234)", # Another custom attribute for categories
      "page_size": 10
  }
  # another example showing category ID's (Men's shirts custom id)
  browse_request = {
      "page_categories": ["1234"],  # Also ok to use unique category id's here
      "filter": "categoryid:ANY(1234)",
      "page_size": 10
  }
  # browse and filter set with the same value
  browse_request = {
      "page_category": ["Men's > Clothing > Shirts"], # Browse category
      "filter": "attributes.pageCategories:ANY('Men's > Clothing > Shirts')", # Compulsory filter
      "page_size": 10 # Number of results per page
  }
  # Send the request to the API
  browse_response = client.search(browse_request)
  # Process the browse results
  for product in browse_response.results:
      print(product.title, product.price)