Knowledge Graph: חיפוש חכם ומודע-הקשר

‫Knowledge Graph משפר את Gemini Enterprise על ידי קישור נתונים בשלושה תחומים מרכזיים: אנשים, תוכן ואינטראקציות. גרף הידע משפר את איכות החיפוש וחוויית המשתמש בכך שהוא מבין את הקשר בין מופעים וישויות שונים במאגר המידע, ומספק חיפוש מעמיק יותר שמתחשב בהקשר.

‫Knowledge Graph משפר את יכולות החיפוש באמצעות:

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

מקורות נתונים נתמכים ל-Knowledge Graph

‫Knowledge Graph זמין לאפליקציות עם מקורות הנתונים הבאים:

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

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

נתוני אנשים מפעילים יכולות מרכזיות של Knowledge Graph, כולל:

  • זיהוי ישויות
  • הבנת ההקשר
  • התאמה אישית
  • השלמה אוטומטית
  • המלצות

מקורות נתמכים לנתוני אנשים

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

‫Gemini Enterprise תומך באפשרויות הבאות להזנת נתונים של אנשים ל-Knowledge Graph:

  • מקורות מ-Workspace

    המחבר המתקדם של Google Identity מסנכרן נתוני אנשים מ-Google Workspace, ומעתיק אותם ישירות לאינדקס של Gemini Enterprise. המחבר הזה מאפשר להעתיק נתונים לאינדקס, וכך להשתמש בכל הפונקציות של Knowledge Graph, כולל עיבוד שפה טבעית (NLP). המחבר המתקדם של Google Identity הוא מקומי לענן וההתנהגות שלו דומה לזו של המחבר המתקדם של Drive, כי הוא שומר את הנתונים באינדקס.

    כשהמחבר פעיל, צריך:

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

    מחבר אנשים בהתאמה אישית מאפשר להעלות נתוני אנשים מ-BigQuery או מ-Cloud Storage באמצעות סכימה שצוינה על ידי Google. האפשרות הזו מתאימה לארגונים עם מקורות זהויות מותאמים אישית או היברידיים.

  • מקורות של צד שלישי

    ‫Gemini Enterprise תומך בספקי זהויות של צד שלישי לצורך הטמעה של נתוני אנשים. מידע נוסף זמין במאמר איחוד שירותי אימות הזהות של כוח עבודה עבור ספקי זהויות של צד שלישי.

מידע על הערות לשאילתות באמצעות Knowledge Graph

הערות לשאילתות באמצעות Knowledge Graph משפרות את ההבנה של שאילתות החיפוש על ידי שיוך של נתונים מובְנים למונחי חיפוש. התהליך הזה משפר את הדיוק והרלוונטיות של תוצאות החיפוש באמצעות תובנות הקשריות מתרשים הידע.

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

הרכיבים העיקריים של הערות לשאילתות כוללים:

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

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

  • קישור ישויות: פותר את הבעיות של דו-משמעות על ידי קישור מונחים לישויות הכי רלוונטיות שלהם (לדוגמה, הבחנה בין 'Apple' כחברה לבין 'Apple' כפרי).

כרטיסי מידע של Knowledge Graph

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

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

  • החלונית 'אנשים': החלונית הזו כוללת מידע כמו התפקיד של האדם, המחלקה והקשרים שלו עם אנשים אחרים (לדוגמה, שרשרת הניהול, עובדים ישירים וחברי צוות). הוא עוזר לכם למצוא במהירות אנשים רלוונטיים ואת התפקידים שלהם בארגון. הפאנל 'אנשים' משופר באמצעות Knowledge Graph, והאנשים מוצגים ככרטיסים ארוכים, שמספקים תצוגה מקיפה של התפקיד והקשרים של האדם בארגון. התשובה של Knowledge Graph Search API כוללת לוחות נתונים מועשרים בפורמט חיפוש מאוחד של תיבה אחת. בחלונית 'אנשים' מופיעים תיאור המשרה, המחלקה ומידע על אנשים שקשורים לאותו אדם (כמו שרשרת הניהול, עובדים ישירים או חברי צוות עם אותם מנהלים). השדות שנובעים מ-Knowledge Graph מוחזרים ב-derived_struct_data בתוצאה של חלונית האנשים.

  • החלונית 'ארגון': בחלונית הזו מופיעים פרטים חשובים על הארגון, כמו השם, התיאור ופרטי האתר. התשובה של Knowledge Graph Search API כוללת חלוניות נתונים מועשרות בפורמט חיפוש מאוחד של תיבה אחת. בחלונית Organization מוצגים שם הארגון, תיאור ופרטי האתר.התוצאות של הארגון מוחזרות בשדה knowledge_graph_results בתוצאה של החלונית Organization.

הגדרות של Knowledge Graph

ה-Knowledge Graph משפר את תוצאות החיפוש על ידי שילוב של חלוניות מועשרות עם מידע מדויק שמבוסס על הקשר ממקורות נתונים פנימיים וחיצוניים.

סוגים של Knowledge Graph

יש שני סוגים של תרשימי ידע:

  • Google Cloud Knowledge Graph: מרחיב את תוצאות החיפוש באמצעות שילוב של מקורות נתונים חיצוניים. השימוש ב-Knowledge Graph מרחיב את היקף תוצאות החיפוש ומשפר את הרלוונטיות שלהן באמצעות תובנות נוספות. Google Cloud Knowledge Graph זמין רק באפליקציות שהמיקום שלהן מוגדר כגלובלי.

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

שינוי ההגדרות של Knowledge Graph

ההגדרות של Knowledge Graph מופעלות בכל האפליקציות של Gemini Enterprise. לפני שמבצעים שינויים, אפשר לראות את ההשפעה על תוצאות החיפוש באופן הבא:

הגדרות אישיות מופעל מושבת
Google Cloud Knowledge Graph הרחבת החיפוש באמצעות נתונים חיצוניים. מגביל את החיפוש לנתונים פנימיים.
Knowledge Graph פרטי משפר את החיפוש באמצעות נתונים פנימיים. הסרת נתונים פנימיים נגזרים.

כדי לשנות את ההגדרות של Knowledge Graph, אפשר לעיין בקטע ניהול ההגדרות של Knowledge Graph.

מבנה ומיפוי של Private Knowledge Graph

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

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

מנוע Knowledge Graph בונה את הגרף שלו על ידי החלת הכללים הפנימיים האלה על כל המסמכים מהמחברים הנתמכים.

סוגי ישויות וקשרים ב-Knowledge Graph

סוגי ישויות ב-Knowledge Graph סוגי קשרים ב-Knowledge Graph מחברים נתמכים
אדם מנהל מקורות מ-Workspace → חיפוש אנשים
דוח מקווקו אנשים שמשתמשים במחבר מותאם אישית

מיפוי מסכימת מקור הנתונים למאפייני הישות

שדה מסמך המקור הערות
name.familyName, name.givenName, name.displayName שרשור של givenName ושל familyName. אם השדה ריק, המערכת תשתמש בערך displayName.
personId משמש לזיהוי ייחודי של אדם.
employeeId -
employmentStatus -
organizations[0].jobTitle התפקיד ברכיב הראשון של הארגונים (מערך).
websites[0].value הערך הראשון של האתרים (מערך).
topCoworkers -

מחזור החיים של Knowledge Graph

Knowledge Graph של המנוע עובר כמה מצבים בזמן שהוא מופעל, מתעדכן ומנוהל. ההסברים על המצבים הבאים יעזרו לכם להבין למה לצפות ואילו פעולות זמינות לכם.

  • unspecified

    התכונה Knowledge Graph לא מופעלת במנוע או שההפעלה שלה בהמתנה. כדי להפעיל אותה, צריך להגדיר את ההגדרה knowledge_graph_config.enable_private_knowledge_graph לערך true.

  • initialization

    תהליך הבנייה הראשוני של Knowledge Graph פועל. במהלך המצב הזה, Knowledge Graph לא זמין לעיבוד.

    במצב initialization:

    • אי אפשר להפעיל או להשבית את Knowledge Graph.
    • אי אפשר למחוק את המנוע.
    • שינויים שמתבצעים בעקבות קישור או ביטול קישור של מאגרי נתונים שנתמכים על ידי Knowledge Graph לא משתקפים מיד בתרשים. מידע נוסף זמין במאמר בנושא מקורות נתונים נתמכים ל-Knowledge Graph.
  • active

    ה-Knowledge Graph מהימן ופעיל. זה המצב שנבחר ל-Knowledge Graph פונקציונלי.

  • batch_update

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

    במצב batch_update:

    • אי אפשר להפעיל או להשבית את Knowledge Graph.
    • אי אפשר למחוק את המנוע.
    • שינויים שנובעים מקישור או מביטול הקישור של מאגרי נתונים שנתמכים על ידי Knowledge Graph יבואו לידי ביטוי בתרשים באיחור. מידע נוסף זמין במאמר בנושא מקורות נתונים נתמכים ל-Knowledge Graph.
  • deleting

    ה-Knowledge Graph מושבת במנוע החיפוש ונמצא בתהליך מחיקה. תרשים הידע לא זמין לעיבוד.

    במצב deleting:

    • אי אפשר להפעיל או להשבית את Knowledge Graph.
    • אי אפשר למחוק את המנוע.

ניהול ההגדרות של Knowledge Graph

אפשר לנהל את ההגדרות באמצעות המסוף או ה-API.

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

  1. אתם צריכים ליצור אפליקציית Gemini Enterprise.
  2. כדאי לעיין במאמר בנושא שינוי ההגדרות של Knowledge Graph כדי להבין איך שינוי ההגדרות משפיע על אפליקציות קיימות.

כדי לעדכן את ההגדרות של Knowledge Graph במסוף:

המסוף

כדי להשתמש במסוף Google Cloud לניהול הגדרות של גרף הידע, פועלים לפי השלבים הבאים:

  1. נכנסים לדף Gemini Enterprise במסוף Google Cloud .

    Gemini Enterprise

  2. בדף אפליקציות, לוחצים על האפליקציה שרוצים לעדכן את ההגדרות שלה ב-Knowledge Graph.

  3. עוברים לכרטיסייה Knowledge Graph (גרף הידע) בConfigurations (הגדרות).

  4. מעבירים את המתג Google Cloud Knowledge Graph או Private Knowledge Graph בהתאם לצורך.

  5. אחרי שמאשרים את ההנחיות או האזהרות, לוחצים על הלחצן שמירה.

ההשפעות של הפעלה והשבתה של Knowledge Graph הן כדלקמן:

  1. Google Cloud Knowledge Graph:

    • הפעלת Google Cloud Knowledge Graph מעניקה גישה לנתונים מועשרים ממקורות חיצוניים, ומרחיבה את הקשר החיפוש.
    • השבתת ההגדרה הזו מגבילה את תוצאות החיפוש לנתונים פנימיים, ומסירה את הגישה להקשר חיצוני.
  2. Knowledge Graph פרטי:

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

API

אפשר לשנות את ההגדרות של Knowledge Graph באמצעות ה-API:

  {
    "engine": {
      "name": "projects/<project_id>/locations/<location>/collections/<collection_id>/engines/<engine_id>",
      "knowledge_graph_config": {
        "enable_cloud_knowledge_graph": true,
        "enable_private_knowledge_graph": true
      }
    },
    "update_mask": {
      "paths": "knowledge_graph_config"
    }
  }

הצגת כרטיסי מידע בתוצאות החיפוש

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

בדוגמה הבאה של JSON אפשר לראות איך חלונית האנשים מופיעה בתגובת API:


      one_box_results: [
        {
          one_box_type: PEOPLE
          search_results: [
            {
              document: {
                name: "projects/<pii data>/locations/global/collections/default_collection/dataStores/people-v17-df-sprint_1731449540556/branches/0/documents/<name>"
                derived_struct_data: {
                  fields: [
                    {
                      key: "management_chain"
                      value: {
                        list_value: {
                          values: [
                            {
                              struct_value: {
                                fields: [
                                  {
                                    key: "person_id"
                                    value: {

                                      string_value: "<persons name>"
                                    }
                                  },
                                  {
                                    key: "job_title"
                                    value: {
                                      string_value: "Account Executive"
                                    }
                                  },
                                  {
                                    key: "name"
                                    value: {
                                      string_value: "<persons name>"
                                    }
                                  }
                                ]
                              }
                            },
                            {
                              struct_value: {
                                fields: [
                                  {
                                    key: "name"
                                    value: {
                                      string_value: "<persons name>"
                                    }
                                  },
                                  {
                                    key: "job_title"
                                    value: {

                                      string_value: "Account Executive"
                                    }
                                  },
                                  {
                                    key: "person_id"
                                    value: {

                                      string_value: "<persons name>"
                                    }
                                  }
                                ]
                              }
                            }

                          ]
                        }
                      }
                    },
                    {

                      key: "teammates_with_same_manager"
                      value: {

                        list_value: {

                          values: [
                            {

                              struct_value: {

                                fields: [
                                  {

                                    key: "person_id"
                                    value: {

                                      string_value: "<persons name>"
                                    }
                                  },
                                  {

                                    key: "job_title"
                                    value: {

                                      string_value: "Account Executive"
                                    }
                                  },
                                  {

                                    key: "name"
                                    value: {

                                      string_value: "<persons name>"
                                    }
                                  }
                                ]
                              }
                            }
                          ]
                        }
                      }
                    },
                    {
                      key: "direct_reports"
                      value: {
                        list_value: {
                          values: [
                            {
                              struct_value: {
                                fields: [
                                  {
                                    key: "job_title"
                                    value: {
                                      string_value: "Account Strategist, Lead Generation"
                                    }
                                  },
                                  {
                                    key: "name"
                                    value: {
                                      string_value: "<persons name>"
                                    }
                                  },
                                  {
                                    key: "person_id"
                                    value: {
                                      string_value: "<persons name>"
                                    }
                                  }
                                ]
                              }
                            },
                            {
                              struct_value: {
                                fields: [
                                  {
                                    key: "person_id"
                                    value: {
                                      string_value: "<persons name>"
                                    }
                                  },
                                  {
                                    key: "name"
                                    value: {
                                      string_value: "<persons name>"
                                    }
                                  },
                                  {
                                    key: "job_title"
                                    value: {

                                      string_value: "Account Strategist, Mid-Market Sales, Google Customer Solutions"
                                    }
                                  }
                                ]
                              }
                            }
                          ]
                        }
                      }
                    }
                  ]
                }
              }
            }
          ]
        }
      ]

בדוגמה הבאה של JSON אפשר לראות איך חלונית הארגון מופיעה בתגובה ל-API:

      {
        one_box_type: ORGANIZATION
        knowledge_graph_results: [
          {
            knowledge_graph_source_type: CLOUD_KG
            context: {
              struct_value: {
                fields: [
                  {
                    key: "@vocab"
                    value: {
                      string_value: "http://schema.org/"
                    }
                  }
                ]
              }
            }
            type: {
              string_value: "ItemList"
            }
            item_list_element: {
              values: [
                {
                  struct_value: {
                    fields: [
                      {
                        key: "result"
                        value: {
                          struct_value: {
                            fields: [
                              {
                                key: "@id"
                                value: {
                                  string_value: "c-025prnpgp"
                                }
                              },
                              {
                                key: "identifier"
                                value: {
                                  list_value: {
                                    values: [
                                      {
                                        struct_value: {
                                          fields: [
                                            {
                                              key: "name"
                                              value: {
                                                string_value: "googleKgMID"
                                              }
                                            },
                                            {
                                              key: "value"
                                              value: {
                                                string_value: "/m/0k8z"
                                              }
                                            },
                                            {
                                              key: "@type"
                                              value: {
                                                string_value: "PropertyValue"
                                              }
                                            }
                                          ]
                                        }
                                      },
                                      {
                                        struct_value: {
                                          fields: [
                                            {
                                              key: "value"
                                              value: {

                                                string_value: "Q312"
                                              }
                                            },
                                            {
                                              key: "@type"
                                              value: {
                                                string_value: "PropertyValue"
                                              }
                                            },
                                            {
                                              key: "name"
                                              value: {

                                                string_value: "wikidataQID"
                                              }
                                            }
                                          ]
                                        }
                                      }
                                    ]
                                  }
                                }
                              },
                              {
                                key: "@type"
                                value: {
                                  list_value: {
                                    values: [
                                      {
                                        string_value: "Corporation"
                                      },
                                      {
                                        string_value: "Thing"
                                      },
                                      {
                                        string_value: "Organization"
                                      }
                                    ]
                                  }
                                }
                              },
                              {
                                key: "name"
                                value: {
                                  string_value: "Apple"
                                }
                              },
                              {
                                key: "detailedDescription"
                                value: {
                                  struct_value: {
                                    fields: [
                                      {
                                        key: "url"
                                        value: {
                                          string_value: "https://en.wikipedia.org/wiki/Apple_Inc."
                                        }
                                      },
                                      {
                                        key: "articleBody"
                                        value: {
                                          string_value: "Apple Inc. is an American multinational corporation and technology company headquartered and incorporated in Cupertino, California, in Silicon Valley. It is best known for its consumer electronics, software, and services. "
                                        }
                                      },
                                      {
                                        key: "license"
                                        value: {

                                          string_value: "https://en.wikipedia.org/wiki/Wikipedia:Text_of_Creative_Commons_Attribution-ShareAlike_3.0_Unported_License"
                                        }
                                      }
                                    ]
                                  }
                                }
                              },
                              {
                                key: "description"
                                value: {
                                  string_value: "Technology company"
                                }
                              },
                              {
                                key: "image"
                                value: {
                                  struct_value: {
                                    fields: [
                                      {
                                        key: "contentUrl"
                                        value: {
                                          string_value: "https://encrypted-tbn1.gstatic.com/images?q=tbn:ANd9GcTMHrvLPmr_8yVjoTYsyxhRGtPMcA90bcJl9_RehtJU0tr64KNR"
                                        }
                                      },
                                      {
                                        key: "url"
                                        value: {

                                          string_value: "https://commons.wikimedia.org/wiki/File:Apple_logo_black.svg"
                                        }
                                      }
                                    ]
                                  }
                                }
                              },
                              {
                                key: "url"
                                value: {

                                  string_value: "http://www.apple.com/"
                                }
                              }
                            ]
                          }
                        }
                      }
                    ]
                  }
                }
              ]
            }
          }
        ]
      }