- משאב: Evaluation
- EvaluationSpec
- SearchRequest
- ImageQuery
- DataStoreSpec
- BoostSpec
- ConditionBoostSpec
- BoostControlSpec
- AttributeType
- InterpolationType
- ControlPoint
- FacetSpec
- FacetKey
- Interval
- QueryExpansionSpec
- מצב
- SpellCorrectionSpec
- מצב
- EmbeddingSpec
- EmbeddingVector
- RankingExpressionBackend
- NaturalLanguageQueryUnderstandingSpec
- FilterExtractionCondition
- ExtractedFilterBehavior
- SearchAsYouTypeSpec
- מצב
- DisplaySpec
- MatchHighlightingCondition
- CrowdingSpec
- מצב
- SessionSpec
- RelevanceThreshold
- RelevanceFilterSpec
- RelevanceThresholdSpec
- RelevanceScoreSpec
- SearchAddonSpec
- QuerySetSpec
- QualityMetrics
- TopkMetrics
- מדינה
- Methods
משאב: הערכה
הערכה היא הרצה אחת של תהליך הערכה. הוא כולל את מצב ההערכה ואת הנתונים שמתקבלים ממנה.
| ייצוג ב-JSON |
|---|
{ "name": string, "evaluationSpec": { object ( |
| שדות | |
|---|---|
name |
מזהה. שם המשאב המלא של השדה הזה חייב להיות מחרוזת בקידוד UTF-8, עם מגבלת אורך של 1,024 תווים. |
evaluationSpec |
חובה. המפרט של ההערכה. |
qualityMetrics |
פלט בלבד. המדדים שנוצרו מההערכה, כממוצע של כל המאפיין מאוכלס רק כשהמצב של ההערכה הוא SUCCEEDED. |
state |
פלט בלבד. מצב ההערכה. |
error |
פלט בלבד. השגיאה שאירעה במהלך ההערכה. השדה הזה מאוכלס רק כשהמצב של ההערכה הוא FAILED. |
createTime |
פלט בלבד. חותמת הזמן שבה נוצר הפורמט הוא RFC 3339, והפלט שנוצר תמיד יהיה בפורמט Z עם 0, 3, 6 או 9 ספרות אחרי הנקודה. אפשר להשתמש גם בהיסטים אחרים חוץ מ-Z. דוגמאות: |
endTime |
פלט בלבד. חותמת הזמן שבה הושלם הפורמט הוא RFC 3339, והפלט שנוצר תמיד יהיה בפורמט Z עם 0, 3, 6 או 9 ספרות אחרי הנקודה. אפשר להשתמש גם בהיסטים אחרים חוץ מ-Z. דוגמאות: |
errorSamples[] |
פלט בלבד. דוגמה לשגיאות שנתקלו בהן במהלך עיבוד הבקשה. |
EvaluationSpec
תיאור המפרט של הבדיקה.
| ייצוג ב-JSON |
|---|
{ "querySetSpec": { object ( |
| שדות | |
|---|---|
querySetSpec |
זה שינוי אופציונלי. המפרט של קבוצת השאילתות. |
שדה איחוד search_spec. מפרט החיפוש. הערך search_spec יכול להיות רק אחד מהבאים: |
|
searchRequest |
חובה. בקשת החיפוש שמשמשת לביצוע ההערכה. יש תמיכה רק בשדות הבאים ב-SearchRequest. אם יסופקו שדות אחרים, תוחזר שגיאת UNSUPPORTED: |
SearchRequest
הודעת בקשה לשיטה SearchService.Search.
| ייצוג ב-JSON |
|---|
{ "servingConfig": string, "branch": string, "query": string, "pageCategories": [ string ], "imageQuery": { object ( |
| שדות | |
|---|---|
servingConfig |
חובה. שם המשאב של הגדרת הצגת התוצאות בחיפוש, כמו |
branch |
שם המשאב של הענף, למשל כדי לחפש מסמכים בענף ברירת המחדל, משתמשים ב- |
query |
שאילתת חיפוש גולמית. |
pageCategories[] |
זה שינוי אופציונלי. הקטגוריות שמשויכות לדף קטגוריה. כדי להשיג איכות חיפוש טובה, צריך להגדיר את הפרמטר הזה לשאילתות ניווט בקטגוריות. הפורמט צריך להיות זהה לפורמט אם השדה ריק, המודל לא ישתמש בו. אם השדה מכיל יותר מרכיב אחד, המערכת תשתמש רק ברכיב הראשון. כדי לייצג נתיב מלא של קטגוריה, משתמשים בתו '>' כדי להפריד בין היררכיות שונות. אם התו '>' הוא חלק משם הקטגוריה, צריך להחליף אותו בתווים אחרים. לדוגמה, |
imageQuery |
שאילתה של תמונה בפורמט Raw. |
pageSize |
המספר המקסימלי של
אם השדה הזה שלילי, הפונקציה מחזירה |
pageToken |
טוקן של דף שהתקבל מקריאה קודמת של כשמבצעים חלוקה לעמודים, כל הפרמטרים האחרים שסופקו ל- |
offset |
מספר שלם עם אינדקס 0 שמציין את ההיסט הנוכחי (כלומר, מיקום התוצאה הראשונה מתוך אם השדה הזה שלילי, הפונקציה מחזירה יכול להיות שערך אופסט גדול יוגבל לסף סביר. |
oneBoxPageSize |
המספר המקסימלי של תוצאות שיוחזרו ל-OneBox. ההגבלה הזו חלה על כל סוג של OneBox בנפרד. מספר ברירת המחדל הוא 10. |
dataStoreSpecs[] |
מפרטים שמגדירים את |
numResultsPerDataStore |
זה שינוי אופציונלי. המספר המקסימלי של תוצאות לאחזור מכל מאגר נתונים. אם לא מציינים ערך, המערכת משתמשת בערך |
filter |
תחביר המסנן מורכב משפת ביטויים לבניית פרדיקט משדה אחד או יותר של המסמכים שמסננים. ביטוי המסנן תלוי אותיות רישיות (case-sensitive). אם השדה לא מזוהה, מוחזר סינון ב-חיפוש מבוסס-Vertex AI מתבצע על ידי מיפוי של מפתח הסינון בצד ימין למאפיין מפתח שמוגדר בבק-אנד של חיפוש מבוסס-Vertex AI. הלקוח מגדיר את המיפוי הזה בסכימה שלו. לדוגמה, ללקוח בתחום המדיה יכול להיות שדה בשם 'name' בסכימה שלו. במקרה הזה, המסנן ייראה כך: filter --> name:'ANY("king kong")' מידע נוסף על סינון, כולל תחביר ואופרטורים של מסננים, זמין במאמר סינון. |
canonicalFilter |
מסנן ברירת המחדל שמוחל כשמשתמש מבצע חיפוש בלי לסמן אף מסנן בדף החיפוש. המסנן מוחל על כל בקשת חיפוש כשצריך לשפר את האיכות, למשל באמצעות הרחבת השאילתה. אם לשאילתה אין מספיק תוצאות, המסנן הזה ישמש כדי לקבוע אם להפעיל את תהליך הרחבת השאילתה. המסנן המקורי עדיין ישמש לחיפוש המורחב של השאילתה. מומלץ מאוד למלא את השדה הזה כדי להשיג איכות חיפוש גבוהה. מידע נוסף על תחביר המסננים זמין במאמר |
orderBy |
הסדר שבו המסמכים מוחזרים. אפשר להזמין מסמכים לפי שדה באובייקט מידע נוסף על סידור תוצאות החיפוש באתר זמין במאמר סידור תוצאות החיפוש באינטרנט. למידע נוסף על סידור תוצאות החיפוש של שירותי בריאות, אפשר לעיין במאמר סידור תוצאות החיפוש של שירותי בריאות. אם השדה לא מזוהה, מוחזר |
userInfo |
מידע על משתמש הקצה. מומלץ מאוד לניתוח נתונים ולהתאמה אישית. |
languageCode |
קוד השפה בפורמט BCP-47, כמו en-US או sr-Latn. מידע נוסף מופיע במאמר בנושא שדות רגילים. השדה הזה עוזר לפרש טוב יותר את השאילתה. אם לא מציינים ערך, קוד שפת השאילתה מזוהה באופן אוטומטי, אבל יכול להיות שהזיהוי לא יהיה מדויק. |
regionCode |
קוד המדינה/האזור של Unicode (CLDR) של מיקום, כמו US ו-419. מידע נוסף מופיע במאמר בנושא שדות רגילים. אם הערך מוגדר, התוצאות יקבלו דחיפה על סמך הערך של regionCode שסופק. |
facetSpecs[] |
מפרטים של היבטים לחיפוש עם היבטים. אם הוא ריק, לא מוחזרים היבטים. אפשר להזין עד 100 ערכים. אחרת, מוחזרת שגיאת |
boostSpec |
הגדרת חיזוק כדי להדגיש מסמכים מסוימים. מידע נוסף על קידום תוכן זמין במאמר בנושא קידום תוכן |
params |
פרמטרים נוספים לחיפוש. הערכים הנתמכים לחיפוש באתרים ציבוריים בלבד הם:
רשימת הקודים הזמינים מופיעה במאמר קודי מדינות
|
queryExpansionSpec |
מפרט הרחבת השאילתה שמציין את התנאים שבהם מתבצעת הרחבת השאילתה. |
spellCorrectionSpec |
המפרט של תיקון האיות שמציין את המצב שבו תיקון האיות נכנס לתוקף. |
userPseudoId |
זה שינוי אופציונלי. מזהה ייחודי למעקב אחרי מבקרים. לדוגמה, אפשר להטמיע את זה באמצעות קובץ Cookie של HTTP, שאמור להיות מסוגל לזהות מבקר באופן ייחודי במכשיר יחיד. המזהה הייחודי הזה לא אמור להשתנות אם המבקר נכנס לאתר או יוצא ממנו. בשדה הזה לא צריך להזין ערך קבוע כמו המזהה הזה צריך להיות זהה למזהה השדה חייב להיות מחרוזת בקידוד UTF-8, עם מגבלת אורך של 128 תווים. אחרת, מוחזרת שגיאת |
contentSearchSpec |
מפרט להגדרת אופן הפעולה של חיפוש התוכן. |
embeddingSpec |
משתמש בהטמעה שסופקה כדי לבצע אחזור סמנטי נוסף של מסמכים. האחזור מבוסס על המכפלה הסקלרית של אם לא מציינים את |
rankingExpression |
זה שינוי אופציונלי. ביטוי הדירוג קובע את הדירוג המותאם אישית של מסמכי האחזור. ההגדרה הזו מבטלת את אם לא מציינים את
פונקציות נתמכות:
משתני פונקציה:
ביטוי הדירוג לדוגמה: אם במסמך יש שדה הטמעה doc_embedding, ביטוי הדירוג יכול להיות אם הערך של
ריכזנו כאן כמה דוגמאות לנוסחאות דירוג שמשתמשות בסוגי הביטויים הנתמכים לדירוג:
יש תמיכה באותות הבאים:
|
rankingExpressionBackend |
זה שינוי אופציונלי. הקצה העורפי שמשמש להערכת ביטוי הדירוג. |
safeSearch |
האם להפעיל את החיפוש הבטוח. האפשרות הזו נתמכת רק בחיפוש באתר. |
userLabels |
התוויות של המשתמש שמוחלות על משאב צריכות לעמוד בדרישות הבאות:
פרטים נוספים מופיעים במאמר מסמך Google Cloud. |
naturalLanguageQueryUnderstandingSpec |
זה שינוי אופציונלי. הגדרות ליכולות של הבנת שאילתות בשפה טבעית, כמו שליפת מסנני שדות מובְנים מהשאילתה. מידע נוסף מופיע במאמר הזה. אם לא מציינים את |
searchAsYouTypeSpec |
הגדרה של חיפוש בזמן ההקלדה. התכונה הזו נתמכת רק בקטגוריה |
displaySpec |
זה שינוי אופציונלי. הגדרות לתכונות תצוגה, כמו הדגשת התאמות בתוצאות החיפוש. |
crowdingSpecs[] |
זה שינוי אופציונלי. הגדרות צפיפות לשיפור מגוון התוצאות. אם מציינים כמה CrowdingSpecs, הצפיפות תיבדק בכל שילוב ייחודי של ערכי |
session |
שם המשאב של הסשן. זה שינוי אופציונלי. הסשן מאפשר למשתמשים לבצע קריאות ל-API של חיפוש מרובה או תיאום בין קריאות ל-API של חיפוש וקריאות ל-API של תשובה. דוגמה מספר 1 (קריאות ל-API של חיפוש מרובות): שליחת קריאה ל-API של חיפוש עם מזהה הסשן שנוצר בקריאה הראשונה. כאן, שאילתת החיפוש הקודמת נלקחת בחשבון בסטטוס השאילתה. כלומר, אם השאילתה הראשונה היא "How did Alphabet do in 2022?" (מה היו הביצועים של אלפבית בשנת 2022?) והשאילתה הנוכחית היא "מה לגבי 2023?", השאילתה הנוכחית תפורש כ "מה היו הביצועים של Alphabet בשנת 2023?". דוגמה מספר 2 (תיאום בין קריאות ל-API של /search וקריאות ל-API של /answer): קריאה ל-API של /answer עם מזהה הסשן שנוצר בקריאה הראשונה. במקרה הזה, יצירת התשובה מתבצעת בהקשר של תוצאות החיפוש מהקריאה הראשונה לחיפוש. |
sessionSpec |
מפרט הסשן. אפשר להשתמש בו רק אם מוגדר |
relevanceThreshold |
ספי הרלוונטיות הגלובליים של תוצאות החיפוש. ברירת המחדל היא סף שמוגדר על ידי Google, שמאזן בין דיוק לבין היקף התוצאות כדי לספק תוצאות מדויקות מאוד וכיסוי מקיף של מידע רלוונטי. אם נדרש סינון רלוונטיות מפורט יותר, אפשר להשתמש במקום זאת בפונקציה התכונה הזו לא נתמכת בחיפוש מידע על שירותי בריאות. |
relevanceFilterSpec |
זה שינוי אופציונלי. המפרט של סינון רלוונטיות גרנולרי. אם לא מציינים את ההגדרה הזו, המערכת משתמשת בהגדרה הכללית התכונה הזו נתמכת כרגע רק בחיפוש מותאם אישית ובחיפוש באתר. |
personalizationSpec |
המפרט להתאמה אישית. שימו לב: אם גם |
relevanceScoreSpec |
זה שינוי אופציונלי. ההגדרה להחזרת ציון הרלוונטיות. |
searchAddonSpec |
זה שינוי אופציונלי. ה-SearchAddonSpec משמש להשבתת תוספים לחיפוש בהתאם למודל החדש של תמחור מחדש. השדה הזה נתמך רק בבקשות חיפוש. |
ImageQuery
מציינת את הקלט של שאילתת התמונה.
| ייצוג ב-JSON |
|---|
{ // Union field |
| שדות | |
|---|---|
שדה איחוד הערך |
|
imageBytes |
בייטים של תמונה בקידוד Base64. הפורמטים הנתמכים של תמונות: JPEG, PNG ו-BMP. |
DataStoreSpec
מבנה נתונים להגדרת מאגרי נתונים לסינון בקריאה לחיפוש, והגדרות למאגרי הנתונים האלה. אחרת, מוחזרת שגיאת INVALID_ARGUMENT.
| ייצוג ב-JSON |
|---|
{
"dataStore": string,
"filter": string,
"boostSpec": {
object ( |
| שדות | |
|---|---|
dataStore |
חובה. שם המשאב המלא של |
filter |
זה שינוי אופציונלי. מפרט המסנן לסינון מסמכים במאגר הנתונים שצוין בשדה dataStore. מידע נוסף על סינון זמין במאמר בנושא סינון. |
boostSpec |
זה שינוי אופציונלי. הגדרת חיזוק כדי להדגיש מסמכים מסוימים. מידע נוסף על קידום תוכן זמין במאמר בנושא קידום תוכן |
customSearchOperators |
זה שינוי אופציונלי. אופרטורים מותאמים אישית לחיפוש, שאם מציינים אותם, ישמשו לסינון תוצאות ממאגרי נתונים של סביבת העבודה. מידע נוסף על אופרטורים מותאמים אישית לחיפוש זמין במאמר SearchOperators. |
numResults |
זה שינוי אופציונלי. המספר המקסימלי של תוצאות לאחזור ממאגר הנתונים הזה. אם לא מציינים ערך, המערכת משתמשת בערך |
BoostSpec
הגדרת חיזוק כדי להדגיש מסמכים מסוימים.
| ייצוג ב-JSON |
|---|
{
"conditionBoostSpecs": [
{
object ( |
| שדות | |
|---|---|
conditionBoostSpecs[] |
מפרטים של שיפור התנאים. אם מסמך תואם לכמה תנאים במפרטים, כל הציון המשוקלל מהמפרטים האלה יחול וישולב בצורה לא לינארית. מספר המפרטים המקסימלי הוא 20. |
ConditionBoostSpec
ההגדרה 'הדגשה' חלה על מסמכים שעומדים בתנאי מסוים.
| ייצוג ב-JSON |
|---|
{
"condition": string,
"boost": number,
"boostControlSpec": {
object ( |
| שדות | |
|---|---|
condition |
ביטוי שמציין תנאי להגברת החשיפה. התחביר והשדות הנתמכים זהים לאלה של ביטוי מסנן. פרטים על התחביר והמגבלות מופיעים במאמר דוגמאות:
|
boost |
עוצמת ההגברה של התנאי, שצריכה להיות בטווח [-1, 1]. הגברה שלילית משמעותה הורדה בדרגה. ברירת המחדל היא 0.0. הגדרה של 1.0 מעניקה למסמך קידום משמעותי. עם זאת, זה לא אומר בהכרח שהמסמך המודגש יהיה התוצאה הראשונה בכל פעם, וגם לא שתוצאות אחרות לא יוצגו. יכול להיות שעדיין יוצגו תוצאות גם אם אף אחת מהן לא תואמת לתנאי. גם תוצאות שהרלוונטיות שלהן לשאילתת החיפוש גבוהה משמעותית יכולות להיות עדיפות על מסמכים לא רלוונטיים שקיבלו דירוג גבוה. הגדרה של -1.0 גורמת להורדה משמעותית של דירוג המסמך. עם זאת, יכול להיות שיוצגו תוצאות שרלוונטיות מאוד. המסמך יתקשה להגיע לדירוג גבוה יחסית, אבל הוא לא נחסם לחלוטין. הגדרה של 0.0 פירושה שלא מוחל שיפור. המערכת מתעלמת מתנאי ההגברה. רק אחד מהשילובים (תנאי, הגדלה) או מה-boostControlSpec שלמטה מוגדר. אם שני המאפיינים מוגדרים, המערכת מתעלמת מההגברה הגלובלית ומחילה את ההגדרה המפורטת יותר boostControlSpec. |
boostControlSpec |
מפרט מורכב לדירוג מותאם אישית על סמך ערך מאפיין שהוגדר על ידי הלקוח. |
BoostControlSpec
מפרט לדירוג מותאם אישית על סמך ערך מאפיין שצוין על ידי הלקוח. הוא מספק יותר אמצעי בקרה לדירוג מותאם אישית מאשר השילוב הפשוט (תנאי, העלאה) שלמעלה.
| ייצוג ב-JSON |
|---|
{ "fieldName": string, "attributeType": enum ( |
| שדות | |
|---|---|
fieldName |
השם של השדה שהערך שלו ישמש לקביעת סכום ההגדלה. |
attributeType |
סוג המאפיין שמשמש לקביעת סכום ההגדלה. אפשר לגזור את ערך המאפיין מערך השדה של fieldName שצוין. במקרה של ערך מספרי, זה פשוט: attributeValue = numerical_field_value. במקרה של טריות, לעומת זאת, attributeValue = (time.now() - datetime_field_value). |
interpolationType |
סוג האינטרפולציה שיש להחיל כדי לחבר את נקודות הבקרה שמפורטות בהמשך. |
controlPoints[] |
נקודות הבקרה שמשמשות להגדרת העקומה. הפונקציה המונוטונית (מוגדרת באמצעות interpolationType שלמעלה) עוברת דרך נקודות הבקרה שמפורטות כאן. |
AttributeType
המאפיין(או הפונקציה) שעליו יחול הדירוג המותאם אישית.
| טיפוסים בני מנייה (enum) | |
|---|---|
ATTRIBUTE_TYPE_UNSPECIFIED |
סוג מאפיין לא מזוהה. |
NUMERICAL |
הערך של השדה המספרי ישמש לעדכון דינמי של סכום ההגדלה. במקרה הזה, attributeValue (הערך x) של נקודת הבקרה יהיה הערך בפועל של השדה המספרי שעבורו צוין boostAmount. |
FRESHNESS |
בתרחיש לדוגמה של רעננות, ערך המאפיין יהיה משך הזמן שחלף בין השעה הנוכחית לבין התאריך בשדה של התאריך והשעה שצוינו. הערך צריך להיות בפורמט של ערך XSD dayTimeDuration (קבוצת משנה מוגבלת של ערך משך זמן לפי תקן ISO 8601). הדוגמה לכך היא: [nD][T[nH][nM][nS]]. לדוגמה, 5D, 3DT12H30M, T24H. |
InterpolationType
סוג האינטרפולציה שרוצים להחיל. ברירת המחדל תהיה לינארית (Piecewise Linear).
| טיפוסים בני מנייה (enum) | |
|---|---|
INTERPOLATION_TYPE_UNSPECIFIED |
לא צוין סוג האינטרפולציה. במקרה כזה, ברירת המחדל היא לינארית. |
LINEAR |
תופעל אינטרפולציה ליניארית מקטעית. |
ControlPoint
נקודות הבקרה שמשמשות להגדרת העקומה. העקומה שמוגדרת באמצעות נקודות הבקרה האלה יכולה להיות רק עולה או יורדת(ערכים קבועים הם אפשריים).
| ייצוג ב-JSON |
|---|
{ "attributeValue": string, "boostAmount": number } |
| שדות | |
|---|---|
attributeValue |
יכול להיות אחד מהערכים הבאים: 1. הערך המספרי של השדה. 2. מפרט משך הזמן של הטריות: הערך צריך להיות בפורמט של ערך XSD |
boostAmount |
הערך בין -1 ל-1 שבו יש להגדיל את הניקוד אם הערך של attributeValue שווה לערך שצוין למעלה. |
FacetSpec
מפרט של היבט לביצוע חיפוש עם היבטים.
| ייצוג ב-JSON |
|---|
{
"facetKey": {
object ( |
| שדות | |
|---|---|
facetKey |
חובה. המפרט של מפתח הפנים. |
limit |
מספר הערכים המקסימלי של פנים שמחזירים עבור הפן הזה. אם לא מציינים ערך, ברירת המחדל היא 20. הערך המקסימלי המותר הוא 300. ערכים מעל 300 משתנים ל-300. לצורך צבירה בחיפוש בתחום הבריאות, אם הערך של [FacetKey.key] הוא healthcare_aggregation_key, המגבלה תוחלף באופן פנימי ב-10,000, בלי קשר לערך שמוגדר כאן. אם השדה הזה שלילי, הפונקציה מחזירה |
excludedFilterKeys[] |
רשימת מפתחות להחרגה כשמצמצמים את התוצאות. כברירת מחדל, אם מזינים מפתח מאפיין בשדה הזה, הערכים שלו יכולים להופיע כתוצאות מאפיין, גם אם הם מסוננים מתוצאות החיפוש. השימוש בשדה הזה לא משפיע על תוצאות החיפוש שמוחזרות. לדוגמה, נניח שיש 100 מסמכים עם היבט הצבע 'אדום' ו-200 מסמכים עם היבט הצבע 'כחול'. שאילתה שמכילה את המסנן color:ANY("Red") והמאפיין color עם הערך אם 'color' מופיע ב-'excludedFilterKeys', השאילתה מחזירה את ערכי הפאסטה 'Red' עם ספירה של 100 ו-'Blue' עם ספירה של 200, כי המפתח 'color' מוחרג עכשיו מהמסנן. מכיוון שהשדה הזה לא משפיע על תוצאות החיפוש, תוצאות החיפוש עדיין מסוננות בצורה נכונה כך שיוחזרו רק מסמכים עם הערך 'אדום'. אפשר להזין עד 100 ערכים. אחרת, מוחזרת שגיאת |
enableDynamicPosition |
ההגדרה הזו מפעילה מיקום דינמי בפן הזה. אם הערך מוגדר כ-true, המיקום של ההיבט הזה בין כל ההיבטים בתגובה נקבע באופן אוטומטי. אם הפעלתם את התכונה 'היבטים דינמיים', ההיבטים יסודרו יחד. אם הערך הוא false, המיקום של ההיבט הזה בתשובה זהה למיקום שלו בבקשה, והוא מדורג לפני ההיבטים עם המיקום הדינמי המופעל וכל ההיבטים הדינמיים. לדוגמה, יכול להיות שתרצו שתמיד יוחזר בהודעת התגובה היבט של דירוג, אבל לא בהכרח שתרצו שתמיד יוצג בראש היבט הדירוג. במקרה כזה, אפשר להגדיר את הערך של enableDynamicPosition כ-true כדי שהמיקום של היבט הדירוג בתגובה ייקבע באופן אוטומטי. דוגמה נוספת, בהנחה שהבקשה כוללת את ההיבטים הבאים:
בנוסף, הפעלתם היבטים דינמיים, שיוצרים היבט |
FacetKey
מציינת איך מחשבים את הפן.
| ייצוג ב-JSON |
|---|
{
"key": string,
"intervals": [
{
object ( |
| שדות | |
|---|---|
key |
חובה. מפתחות נתמכים של פילטרים טקסטואליים ומספריים באובייקט |
intervals[] |
הגדרה נדרשת רק אם רוצים לחלק את הערכים לקטגוריות לפי טווחים. חובה להגדיר את המאפיין הזה עבור היבטים עם ערכים מספריים. אסור להגדיר את המאפיין הזה עבור היבט עם ערכי טקסט. המספר המקסימלי של מרווחי זמן הוא 30. |
restrictedValues[] |
מקבלים רק היבט עבור הערכים המוגבלים שצוינו. התכונה נתמכת רק בשדות טקסט. לדוגמה, נניח שלמאפיין 'קטגוריה' יש שלושה ערכים: 'פעולה > 2022', 'פעולה > 2021' ו'מדע בדיוני > 2022'. אם מגדירים את restrictedValues ל-Action > 2022, הפן category מכיל רק את הערך Action > 2022. התכונה נתמכת רק בשדות טקסט. המספר המקסימלי הוא 10. |
prefixes[] |
מקבלים רק ערכי פנים שמתחילים בקידומת המחרוזת שצוינה. לדוגמה, נניח שלמאפיין 'קטגוריה' יש שלושה ערכים: 'פעולה > 2022', 'פעולה > 2021' ו'מדע בדיוני > 2022'. אם מגדירים את 'קידומות' ל'פעולה', ההיבט 'קטגוריה' מכיל רק את הערכים 'פעולה > 2022' ו'פעולה > 2021'. התכונה נתמכת רק בשדות טקסט. המספר המקסימלי הוא 10. |
contains[] |
הפונקציה מחזירה רק ערכים של היבטים שמכילים את המחרוזות שצוינו. לדוגמה, נניח שלמאפיין 'קטגוריה' יש שלושה ערכים: 'פעולה > 2022', 'פעולה > 2021' ו'מדע בדיוני > 2022'. אם מגדירים את האפשרות 'מכיל' לערך '2022', הפן 'קטגוריה' מכיל רק את הערכים 'פעולה > 2022' ו'מדע בדיוני > 2022'. התכונה נתמכת רק בשדות טקסט. המספר המקסימלי הוא 10. |
caseInsensitive |
הערך True מציין שמפתחות הפנים לא תלויי-רישיות כשמקבלים ערכי פנים עם קידומות או עם האפשרות contains. אחרת, הערך הוא False. |
orderBy |
הסדר שבו המסמכים מוחזרים. הערכים המותרים הם:
אם לא מגדירים את המאפיין הזה, ערכים טקסטואליים ממוינים לפי סדר טבעי, ומרווחים מספריים ממוינים לפי הסדר שמוגדר ב- |
מרווח
מרווח של נקודה צפה.
| ייצוג ב-JSON |
|---|
{ // Union field |
| שדות | |
|---|---|
שדה איחוד הערך בשדה הזה לא יכול להיות גדול מהערך המקסימלי. אחרת, תוחזר השגיאה |
|
minimum |
הגבול התחתון כולל. |
exclusiveMinimum |
הגבול התחתון לא נכלל. |
שדה איחוד הערך בשדה הזה לא יכול להיות קטן מהערך המינימלי. אחרת, תוחזר שגיאה מסוג |
|
maximum |
הגבול העליון כולל. |
exclusiveMaximum |
הגבול העליון לא כולל. |
QueryExpansionSpec
הגדרה לקביעה של התנאים שבהם יתבצע הרחבת שאילתה.
| ייצוג ב-JSON |
|---|
{
"condition": enum ( |
| שדות | |
|---|---|
condition |
התנאי שבו תתבצע הרחבת השאילתה. ברירת המחדל היא |
pinUnexpandedResults |
האם להצמיד תוצאות לא מורחבות. אם השדה הזה מוגדר כ-True, המוצרים שלא הורחבו תמיד מופיעים בראש תוצאות החיפוש, ואחריהם התוצאות המורחבות. |
תנאי
סוג enum שמתאר את התנאים שבהם צריכה להתרחש הרחבת שאילתה.
| טיפוסים בני מנייה (enum) | |
|---|---|
CONDITION_UNSPECIFIED |
לא צוין תנאי להרחבת שאילתה. במקרה כזה, התנהגות השרת תהיה Condition.DISABLED כברירת מחדל. |
DISABLED |
הרחבת השאילתה הושבתה. המערכת משתמשת רק בשאילתת החיפוש המדויקת, גם אם הערך של SearchResponse.total_size הוא אפס. |
AUTO |
הרחבת שאילתות אוטומטית שנוצרה על ידי Search API. |
SpellCorrectionSpec
המפרט של תיקון איות בשאילתות.
| ייצוג ב-JSON |
|---|
{
"mode": enum ( |
| שדות | |
|---|---|
mode |
המצב שבו בדיקת האיות מחליפה את שאילתת החיפוש המקורית. ברירת המחדל היא |
מצב
סוג Enum שמתאר באיזה מצב צריך להתבצע תיקון שגיאות כתיב.
| טיפוסים בני מנייה (enum) | |
|---|---|
MODE_UNSPECIFIED |
מצב לא מוגדר של תיקון שגיאות איות. במקרה כזה, התנהגות השרת תהיה Mode.AUTO כברירת מחדל. |
SUGGESTION_ONLY |
Search API מנסה למצוא הצעה לתיקון איות. אם נמצאת הצעה, היא מוצגת ב-SearchResponse.corrected_query. ההצעה לתיקון האיות לא תשמש כשאילתת החיפוש. |
AUTO |
תיקון איות אוטומטי שנוצר על ידי Search API. אם נמצאה שאילתה מתוקנת, החיפוש יתבסס עליה. |
EmbeddingSpec
המפרט שמשתמש בווקטור הטמעה של שאילתה בהתאמה אישית כדי לבצע אחזור סמנטי של מסמכים.
| ייצוג ב-JSON |
|---|
{
"embeddingVectors": [
{
object ( |
| שדות | |
|---|---|
embeddingVectors[] |
וקטור ההטמעה שמשמש לאחזור. הגבלה ל-1. |
EmbeddingVector
וקטור הטמעה.
| ייצוג ב-JSON |
|---|
{ "fieldPath": string, "vector": [ number ] } |
| שדות | |
|---|---|
fieldPath |
הטמעת נתיב השדה בסכימה. |
vector[] |
וקטור הטמעה של השאילתה. |
RankingExpressionBackend
הקצה העורפי שמשמש להערכת ביטוי הדירוג.
| טיפוסים בני מנייה (enum) | |
|---|---|
RANKING_EXPRESSION_BACKEND_UNSPECIFIED |
אפשרות ברירת המחדל לערכים לא מוגדרים או לא ידועים. |
BYOE |
הוצא משימוש: במקומו צריך להשתמש ב- |
CLEARBOX |
הוצא משימוש: במקומו צריך להשתמש ב- |
RANK_BY_EMBEDDING |
דירוג לפי מודל הטמעה מותאם אישית, שיטת ברירת המחדל להערכת ביטוי הדירוג. |
RANK_BY_FORMULA |
דירוג לפי נוסחה בהתאמה אישית. |
NaturalLanguageQueryUnderstandingSpec
מפרט להפעלת יכולות של הבנת שפה טבעית (NLU) לבקשות חיפוש.
| ייצוג ב-JSON |
|---|
{ "filterExtractionCondition": enum ( |
| שדות | |
|---|---|
filterExtractionCondition |
התנאי שלפיו יתבצע חילוץ המסנן. התנהגות השרת היא |
geoSearchQueryDetectionFieldNames[] |
שמות השדות שמשמשים לסינון לפי מיקום, כשמסנני מיקום גיאוגרפי מזוהים בשאילתות חיפוש בשפה טבעית. המאפיין הזה תקף רק אם הערך של FilterExtractionCondition הוא אם השדה הזה מוגדר, הוא מבטל את שמות השדות שמוגדרים ב- |
extractedFilterBehavior |
זה שינוי אופציונלי. קובעת את אופן ההחלה של המסננים שחולצו על החיפוש. התנהגות ברירת המחדל תלויה בבקשה. בחיפוש מובנה במאגר נתונים יחיד, ברירת המחדל היא |
allowedFieldNames[] |
זה שינוי אופציונלי. רשימת ההיתרים של השדות שאפשר להשתמש בהם לחילוץ מסננים בשפה טבעית. כברירת מחדל, אם לא מציינים את זה, כל השדות שאפשר להוסיף לאינדקס יכולים לשמש לחילוץ מסננים בשפה טבעית (אבל אין ערובה לכך שהם ישמשו). אם מציינים שדות כלשהם ב-allowedFieldNames, רק השדות שמסומנים כניתנים להוספה לאינדקס בסכימה ומופיעים ברשימת ההיתרים יהיו כשירים לחילוץ של מסננים בשפה טבעית. הערה: אין עדיין תמיכה בחיפוש בכמה מאגרי נתונים, וההגדרה הזו תתעלם. |
FilterExtractionCondition
סוג Enum שמתאר את התנאי שבו צריך לבצע חילוץ של מסנן.
| טיפוסים בני מנייה (enum) | |
|---|---|
CONDITION_UNSPECIFIED |
התנהגות השרת היא DISABLED כברירת מחדל. |
DISABLED |
השבתה של חילוץ מסננים בשפה טבעית. |
ENABLED |
הפעלה של חילוץ מסננים בשפה טבעית. |
ExtractedFilterBehavior
סוג Enum שמתאר איך המסננים שחולצו מוחלים על החיפוש.
| טיפוסים בני מנייה (enum) | |
|---|---|
EXTRACTED_FILTER_BEHAVIOR_UNSPECIFIED |
EXTRACTED_FILTER_BEHAVIOR_UNSPECIFIED ישתמש בהתנהגות ברירת המחדל עבור מסננים שחולצו. בחיפוש במאגר נתונים יחיד, ברירת המחדל היא החלה של מסננים קשיחים. בחיפוש בכמה מאגרי נתונים, ברירת המחדל היא להחיל את ההגדרות כהגברות רכות. |
HARD_FILTER |
המערכת מחילה את כל המסננים שחולצו כמסננים קבועים על התוצאות. תוצאות שלא עומדות במסננים שחולצו לא יוחזרו בקבוצת התוצאות. |
SOFT_BOOST |
המערכת מחילה את כל המסננים שחולצו כהגברות קלות. התוצאות שעוברות את הסינון מקבלות דחיפה לדירוג גבוה יותר בסט התוצאות. |
SearchAsYouTypeSpec
הגדרה של חיפוש בזמן ההקלדה בבקשות חיפוש.
| ייצוג ב-JSON |
|---|
{
"condition": enum ( |
| שדות | |
|---|---|
condition |
התנאי שבו החיפוש בזמן ההקלדה צריך להתבצע. ברירת המחדל היא |
תנאי
סוג Enum שמתאר את התנאים שבהם החיפוש יתבצע בזמן ההקלדה.
| טיפוסים בני מנייה (enum) | |
|---|---|
CONDITION_UNSPECIFIED |
התנהגות השרת היא Condition.DISABLED כברירת מחדל. |
DISABLED |
השבתת החיפוש בזמן ההקלדה. |
ENABLED |
הפעלת החיפוש בזמן ההקלדה. |
AUTO |
מעבר אוטומטי בין מצב חיפוש תוך כדי הקלדה לבין מצב חיפוש רגיל, אידיאלי להטמעות של API יחיד (לדוגמה, ביטול כפילויות). |
DisplaySpec
מציינת תכונות לתצוגה, כמו הדגשה של התאמה.
| ייצוג ב-JSON |
|---|
{
"matchHighlightingCondition": enum ( |
| שדות | |
|---|---|
matchHighlightingCondition |
התנאי שבו יסומנו התאמות. |
MatchHighlightingCondition
סוג Enum שמתאר את התנאי שבו יסומן התאמה.
| טיפוסים בני מנייה (enum) | |
|---|---|
MATCH_HIGHLIGHTING_CONDITION_UNSPECIFIED |
התנהגות השרת זהה לזו של MATCH_HIGHLIGHTING_DISABLED. |
MATCH_HIGHLIGHTING_DISABLED |
ההגדרה משביתה את הדגשת ההתאמות בכל המסמכים. |
MATCH_HIGHLIGHTING_ENABLED |
ההגדרה הזו מאפשרת להדגיש התאמות בכל המסמכים. |
CrowdingSpec
מפרט לגבי צפיפות. הצפיפות משפרת את המגוון של תוצאות החיפוש על ידי הגבלת מספר התוצאות שמשתפות את אותו ערך שדה. לדוגמה, אם תגדירו את הפרמטר maxCount ל-3 ואת הפרמטר mode ל-DROP_CROWDED_RESULTS, תקבלו לכל היותר 3 תוצאות עם אותו צבע בכל הדפים.
| ייצוג ב-JSON |
|---|
{
"field": string,
"maxCount": integer,
"mode": enum ( |
| שדות | |
|---|---|
field |
השדה שמשמש לצפיפות. יכול להיות שיהיה קשה לקרוא מסמכים בגלל שדה באובייקט |
maxCount |
מספר המסמכים המקסימלי שיישארו לכל ערך של השדה. אחרי שיש לפחות maxCount תוצאות קודמות שמכילות את אותו ערך בשדה הנתון (בהתאם לסדר שצוין ב- |
mode |
המצב שבו משתמשים במסמכים שמוזזים הצידה. |
מצב
סוג Enum שמתאר את המצב שבו יש להשתמש במסמכים שמוסתרים. אפשר להעביר אותם או להוריד אותם למיקום נמוך יותר בדפים הבאים.
| טיפוסים בני מנייה (enum) | |
|---|---|
MODE_UNSPECIFIED |
מצב צפיפות לא מוגדר. במקרה כזה, התנהגות השרת תהיה Mode.DROP_CROWDED_RESULTS כברירת מחדל. |
DROP_CROWDED_RESULTS |
הסרת תוצאות צפופות. |
DEMOTE_CROWDED_RESULTS_TO_END |
הורדת תוצאות צפופות לדפים מאוחרים יותר. |
SessionSpec
מפרט הסשן.
| ייצוג ב-JSON |
|---|
{ "queryId": string, "searchResultPersistenceCount": integer } |
| שדות | |
|---|---|
queryId |
אם המזהה מוגדר, תוצאת החיפוש מאוחסנת ב'תור' שצוין על ידי מזהה השאילתה הזה. דוגמה: נניח שהסשן נראה כך: session { name: ".../sessions/xxx" turns { query { text: "What is foo?" queryId: ".../questions/yyy" } answer: "Foo is ..." } turns { query { text: "How about bar then?" queryId: ".../questions/zzz" } } } המשתמש יכול להפעיל את API /search עם בקשה כמו זו: session: ".../sessions/xxx" sessionSpec { queryId: ".../questions/zzz" } לאחר מכן, ה-API שומר את תוצאת החיפוש, שמשויכת לתור האחרון. אפשר להשתמש בתוצאת החיפוש שנשמרה בקריאה הבאה ל-API /answer (עם מזהה הסשן ומזהה השאילתה שצוינו). בנוסף, אפשר להתקשר אל /search ו- /answer במקביל עם אותו מזהה סשן ומזהה שאילתה. |
searchResultPersistenceCount |
מספר התוצאות העליונות בחיפוש שיוצגו. אפשר להשתמש בתוצאות החיפוש שנשמרו לקריאה הבאה ל-API /answer. השדה הזה דומה לשדה במצב מסמכים, מקסימום 10 תוצאות, ובמצב חלוקה לקטעים, מקסימום 50 תוצאות. |
RelevanceThreshold
ספי הרלוונטיות של תוצאות החיפוש. ככל שסף הרלוונטיות גבוה יותר, כך מוצגות יותר תוצאות רלוונטיות ומוחזרות פחות תוצאות.
| טיפוסים בני מנייה (enum) | |
|---|---|
RELEVANCE_THRESHOLD_UNSPECIFIED |
ערך ברירת המחדל. במקרה כזה, התנהגות השרת תהיה כברירת מחדל בהתאם לסף שמוגדר על ידי Google. |
LOWEST |
סף הרלוונטיות הנמוך ביותר. |
LOW |
סף רלוונטיות נמוך. |
MEDIUM |
סף רלוונטיות בינוני. |
HIGH |
סף רלוונטיות גבוה. |
RelevanceFilterSpec
מפרט של סינון לפי רלוונטיות.
| ייצוג ב-JSON |
|---|
{ "keywordSearchThreshold": { object ( |
| שדות | |
|---|---|
keywordSearchThreshold |
זה שינוי אופציונלי. הגדרה של סף סינון הרלוונטיות לחיפוש מילות מפתח. |
semanticSearchThreshold |
זה שינוי אופציונלי. הגדרה של סף סינון הרלוונטיות לחיפוש סמנטי. |
RelevanceThresholdSpec
הגדרה של סינון לפי רלוונטיות בחיפוש משנה ספציפי.
| ייצוג ב-JSON |
|---|
{ // Union field |
| שדות | |
|---|---|
שדה איחוד relevance_threshold_spec. הגדרה של אופן קביעת סף הרלוונטיות. הערך relevance_threshold_spec יכול להיות רק אחד מהבאים: |
|
relevanceThreshold |
סף רלוונטיות מוגדר מראש לחיפוש המשנה. |
semanticRelevanceThreshold |
ספי רלוונטיות מותאמים אישית לחיפוש המשני. הערך חייב להיות בין 0.0 ל-1.0 (כולל). |
RelevanceScoreSpec
ההגדרה של ציון הרלוונטיות של המסמך.
| ייצוג ב-JSON |
|---|
{ "returnRelevanceScore": boolean } |
| שדות | |
|---|---|
returnRelevanceScore |
זה שינוי אופציונלי. האם להחזיר את ציון הרלוונטיות של תוצאות החיפוש. ככל שהציון גבוה יותר, כך המסמך רלוונטי יותר לשאילתה. |
SearchAddonSpec
ה-SearchAddonSpec משמש להשבתת תוספים לחיפוש בהתאם למודל החדש של תמחור מחדש. כברירת מחדל, אם לא מצוין SearchAddonSpec, אנחנו מניחים שהלקוח רוצה להפעיל אותם בכל מקום שבו הם רלוונטיים.
| ייצוג ב-JSON |
|---|
{ "disableSemanticAddOn": boolean, "disableKpiPersonalizationAddOn": boolean, "disableGenerativeAnswerAddOn": boolean } |
| שדות | |
|---|---|
disableSemanticAddOn |
זה שינוי אופציונלי. אם הערך הוא True, התוסף הסמנטי מושבת. התוסף הסמנטי כולל הטמעות ו-Jetstream. |
disableKpiPersonalizationAddOn |
זה שינוי אופציונלי. אם הערך הוא True, המערכת משביתה את הדירוג מחדש של האירועים ואת ההתאמה האישית כדי לבצע אופטימיזציה של מדדי ה-KPI ולהתאים אישית את התוצאות. |
disableGenerativeAnswerAddOn |
זה שינוי אופציונלי. אם הערך הוא True, התוסף של תשובות גנרטיביות מושבת. התוסף 'תשובה גנרטיבית' כולל שפה טבעית לסינון ותשובות פשוטות. |
QuerySetSpec
תיאור המפרט של קבוצת השאילתות.
| ייצוג ב-JSON |
|---|
{ "sampleQuerySet": string } |
| שדות | |
|---|---|
sampleQuerySet |
זה שינוי אופציונלי. השם המלא של המשאב |
QualityMetrics
תיאור של המדדים שנוצרו בתהליך הבדיקה.
| ייצוג ב-JSON |
|---|
{ "docRecall": { object ( |
| שדות | |
|---|---|
docRecall |
החזרת תוצאות לכל מסמך, ברמות שונות של סף עליון k. ההחזרה היא השבר של המסמכים הרלוונטיים שאוחזרו מתוך כל המסמכים הרלוונטיים. דוגמה (5 המובילים): * עבור |
docPrecision |
רמת הדיוק לכל מסמך, ברמות שונות של סף עליון k. הדיוק הוא החלק של המסמכים שאוחזרו שרלוונטיים. דוגמה (5 המובילים): * עבור |
docNdcg |
הרווח המצטבר המנורמל והמוזל (NDCG) לכל מסמך, ברמות שונות של סף עליון k. המדד NDCG מודד את איכות הדירוג, ונותן משקל גבוה יותר לרלוונטיות של התוצאות העליונות. דוגמה (3 המובילים): נניח ש- התוצאות שהתקבלו: [D3 (0), D1 (1), D2 (1)] התוצאות האידיאליות: [D1 (1), D2 (1), D3 (0)] מחשבים את NDCG@3 לכל |
pageRecall |
החזרת תוצאות לכל דף, ברמות שונות של סף חיתוך top-k. המדד Recall הוא השבר של הדפים הרלוונטיים שאוחזרו מתוך כל הדפים הרלוונטיים. דוגמה (5 המובילות): * עבור שאילתה אחת |
pageNdcg |
רווח מצטבר מוזל מנורמל (NDCG) לכל דף, ברמות שונות של סף עליון k. המדד NDCG מודד את איכות הדירוג, ונותן משקל גבוה יותר לרלוונטיות של התוצאות העליונות. דוגמה (3 התוצאות הראשונות): נניח ש- הוחזרו: [P3 (0), P1 (1), P2 (1)] אידיאלי: [P1 (1), P2 (1), P3 (0)] חישוב NDCG@3 עבור |
TopkMetrics
המדד הזה מאחסן את ערכי המדדים ברמות ספציפיות של k המילים המובילות.
| ייצוג ב-JSON |
|---|
{ "top1": number, "top3": number, "top5": number, "top10": number } |
| שדות | |
|---|---|
top1 |
הערך הראשון. |
top3 |
הערך שנמצא במקום השלישי בין הערכים הגבוהים ביותר. |
top5 |
הערך שנמצא במקום החמישי. |
top10 |
הערך העשירי. |
מדינה
תיאור המצב של ההערכה.
| טיפוסים בני מנייה (enum) | |
|---|---|
STATE_UNSPECIFIED |
ההערכה לא צוינה. |
PENDING |
השירות מתכונן להפעלת ההערכה. |
RUNNING |
ההערכה מתבצעת. |
SUCCEEDED |
ההערכה הושלמה בהצלחה. |
FAILED |
ההערכה נכשלה. |
Methods |
|
|---|---|
|
יצירת Evaluation. |
|
הפונקציה מחזירה Evaluation. |
|
מקבל רשימה של Evaluation. |
|
מקבל רשימת תוצאות עבור Evaluation נתון. |