איכות החיפוש מתייחסת לאיכות של תוצאות החיפוש מבחינת דירוג והיזכרות, כפי שהמשתמש תופס אותה.
Ranking הוא סדר הפריטים, ו-recall הוא מספר הפריטים הרלוונטיים שאוחזרו. פריט (או מסמך) הוא כל פיסת תוכן דיגיטלי ש-Google Cloud Search יכול להוסיף לאינדקס, כמו מסמכי Microsoft Office, קובצי PDF, שורות במסד נתונים או כתובות URL ייחודיות. פריט מורכב מ:
- מטא-נתונים מובְנים
- תוכן שאפשר להוסיף לאינדקס
- ACLs (רשימות בקרת גישה)
Cloud Search משתמש באותות שונים כדי לאחזר ולדרג את התוצאות. אפשר להשפיע על האותות האלה באמצעות הגדרות בסכימה, בתוכן הפריט ובמטא-נתונים, ובאפליקציית החיפוש. במאמר הזה נסביר איך לשפר את איכות החיפוש על ידי שינוי הגורמים המשפיעים על האותות האלה.
סיכום של ההגדרות זמין במאמר סיכום של הגדרות איכות החיפוש.
השפעה על ציון הרלוונטיות לנושא
רלוונטיות לנושא היא מידת הרלוונטיות של תוצאת חיפוש למונחי השאילתה. Cloud Search מחשב את הרלוונטיות לנושא מסוים על סמך:
- החשיבות של כל מונח בשאילתה.
- מספר ההתאמות (התדירות שבה מונח שאילתה מופיע בתוכן או במטא-נתונים).
- סוגי ההתאמה בין מונחי השאילתה לבין הפריטים שנוספו לאינדקס.
כדי להשפיע על ציון הרלוונטיות לנושא של מאפיין טקסט, מגדירים את התג RetrievalImportance בסכימה. התאמה לנכס עם תוצאות RetrievalImportance גבוהות מובילה לציון גבוה יותר.
לדוגמה, אם אתם מאחסנים היסטוריה של באגים בתוכנה, סביר להניח שהמשתמשים יחפשו לפי שם הבאג.
מגדירים את RetrievalImportance לשם HIGHEST. לתיאורים, צריך להשתמש ב-DEFAULT.
{
"objectDefinitions": [
{
"name": "issues",
"propertyDefinitions": [
{
"name": "summary",
"textPropertyOptions": {
"retrievalImportance": { "importance": "HIGHEST" }
}
},
{
"name": "description",
"textPropertyOptions": {
"retrievalImportance": { "importance": "DEFAULT" }
}
}
]
}
]
}
במסמכי HTML, תגים כמו <title> ו-<h1> עוזרים לקבוע את חשיבות המונח. אם ContentFormat הוא TEXT, ItemContent משתמש בחשיבות DEFAULT. אם הערך הוא HTML, מידת החשיבות תלויה במאפייני ה-HTML.
עדכניות ההשפעה
העדכניות נמדדת לפי הזמן שעבר מאז שהפריט שונה, באמצעות התגים createTime ו-updateTime ב-ItemMetadata.
פריטים ישנים יותר מדורגים נמוך יותר.
אפשר להשפיע על רמת הרעננות על ידי שינוי הערכים של freshnessProperty ושל freshnessDuration ב-FreshnessOptions.
הפונקציה freshnessProperty מאפשרת להשתמש בתאריך או בחותמת זמן מותאמים אישית במקום ב-updateTime. לגבי באגים, אפשר להשתמש בתאריך יעד כדי שפריטים עם תאריכים הכי קרובים לתאריך הנוכחי ידורגו גבוה יותר.
{
"objectDefinitions": [
{
"name": "issues",
"options": {
"freshnessOptions": { "freshnessProperty": "duedate" }
}
}
]
}
משתמשים במאפיין freshnessDuration כדי לציין מתי פריט נחשב כפריט לא עדכני. ערך גבוה, כמו 100 שנים, מבטל את אפקט הרעננות. האפשרות הזו שימושית לנתונים סטטיים כמו פרופילים של עובדים. לחדשות, כדאי להשתמש בערך קטן כמו שלושה ימים.
השפעה על האיכות
איכות היא מדד של הדיוק והשימושיות של פריט. מציינים ערך בין 0 ל-1 באמצעות SearchQualityMetadata.
ערכים גבוהים יותר משפרים את הדירוג. לדוגמה, אפשר להגדיר שיפור של מסמכי הטבות שנכתבו על ידי מחלקת משאבי האנוש.
{
"metadata": {
"searchQualityMetadata": { "quality": 1.0 }
}
}
השפעה באמצעות סוג השדה
אפשר להשפיע על הדירוג על סמך מאפייני enum או integer באמצעות
OrderedRanking:
-
NO_ORDER(ברירת מחדל): אין השפעה על הדירוג. -
ASCENDING: ערכים גבוהים יותר משפרים את הדירוג. DESCENDING: ערכים נמוכים יותר משפרים את הדירוג.
לגבי עדיפות הבאג, משתמשים בערך DESCENDING אם HIGH הוא 1 ו-LOW הוא 3. לנכס votes
משתמשים ב-ASCENDING.
השפעה על הדירוג באמצעות הרחבת שאילתה
הרחבת שאילתות מתבססת על מילים נרדפות ואיות כדי לשפר את התוצאות.
השתמש במילים נרדפות
Cloud Search משתמשת בתוכן אינטרנט ציבורי כדי למצוא מילים נרדפות. אפשר גם להגדיר מילים נרדפות מותאמות אישית למונחים ספציפיים לארגון. איך מגדירים מילים נרדפות
שימוש באיות
מערכת Cloud Search מספקת הצעות לאיות ב-SpellResult.
היא גם משתמשת בתיקוני שגיאות כתיב כמילים נרדפות כדי למצוא מסמכים.
השפעה על הדירוג באמצעות ההגדרות של אפליקציית החיפוש
אפליקציית חיפוש מספקת מידע לפי הקשר. אפשר להשפיע על הדירוג באמצעות ההגדרות הבאות.
שינוי הגדרת הניקוד
מציינים ScoringConfig כדי להשבית את העדכניות או את ההתאמה האישית.
השבתת ההתאמה האישית מסירה את ההגדרות בעלים והגברת האינטראקציה. התאמה אישית של חוויית החיפוש
שינוי הגדרת המקור
מציינים הגדרות ברמת מקור הנתונים:
- חשיבות המקור: פריטים ממקור חשיבות
HIGHמדורגים גבוה יותר. - עומס: מגביל את התוצאות ממקור יחיד (ברירת המחדל היא 3) כדי להבטיח מגוון.
התאמה אישית
התאמה אישית מתעדפת את התוצאות על סמך המשתמש:
- בעלות על פריט: שיפור פריטים שנמצאים בבעלות המשתמש.
- אינטראקציה עם פריט: קידום פריטים שהמשתמש צפה בהם לאחרונה, ערך אותם או הגיב עליהם.
- קליקים של משתמשים: קידום פריטים שהמשתמש לחץ עליהם בעבר. אל תשנו את כתובת ה-URL של התוצאה, כי היא משמשת לאיסוף הנתונים האלה.
פירוש השאילתה
התכונה query interpretation ממירה שאילתות של משתמשים לשאילתות מובנות שמבוססות על אופרטורים, באמצעות הגדרות סכימה. כך מתקבלות תוצאות מדויקות גם עם מילות מפתח מינימליות. אפשר לעיין במאמר בנושא יצירת סכימה לפרשנות אופטימלית של שאילתות.
שפת הפריט
מערכת Cloud Search מורידה את הדירוג של פריטים שהשפה שלהם לא תואמת לשפה של השאילתה. מגדירים את languageCode ב-RequestOptions לפי העדפת המשתמש.
הקשר של הפריט
משתמשים בתג
contextAttributes
כדי לשפר את הדירוג של פריטים שרלוונטיים להקשר של השאילתה, כמו מיקום או מחלקה.
פופולריות הפריט
ב-Cloud Search, המערכת מקדמת פריטים שמשתמשים לוחצים עליהם לעיתים קרובות בשאילתות האחרונות. אל תשנו את כתובות ה-URL של תוצאות החיפוש, כי הן משמשות למעקב אחרי הקליקים האלה.
סיכום של הגדרות איכות החיפוש
בטבלאות הבאות מופיע סיכום של הגדרות איכות החיפוש:
הגדרות סכימה
| הגדרה | מיקום | המלצה | פרטים |
|---|---|---|---|
ItemContent |
ItemContent |
מומלץ | רלוונטיות לנושא |
RetrievalImportance |
RetrievalImportance |
מומלץ | רלוונטיות לנושא |
FreshnessOptions |
FreshnessOptions |
אופציונלי | עדכניות |
הגדרות האינדקס
| הגדרה | מיקום | המלצה | פרטים |
|---|---|---|---|
createTime/updateTime |
ItemMetadata |
מומלץ | עדכניות |
contentLanguage |
ItemMetadata |
מומלץ | השפה של הפריט |
owners |
ItemAcl |
מומלץ | הבעלות על הפריט |
| מילים נרדפות בהתאמה אישית | _dictionaryEntry |
מומלץ | שימוש במילים נרדפות |
quality |
SearchQualityMetadata |
אופציונלי | איכות ההשפעה |
| נתוני אינטראקציות | interaction |
אופציונלי | אינטראקציה בדף של פריט |
OrderedRanking |
OrderedRanking |
אופציונלי | סוג השדה |
חיפוש הגדרות של אפליקציות
| הגדרה | מיקום | המלצה | פרטים |
|---|---|---|---|
| השבת התאמה אישית | ScoringConfig |
מומלץ | התאמה אישית |
| חשיבות המקור | SourceCrowdingConfig |
אופציונלי | הגדרת המקור |
| קיבוץ באשכולות | SourceCrowdingConfig |
אופציונלי | הגדרת המקור |