Knowledge Graph: Intelligente und kontextsensitive Suchanfragen ermöglichen

Der Knowledge Graph verbessert Gemini Enterprise, indem er Daten aus drei Kernbereichen verknüpft: Personen, Inhalte und Interaktionen. Der Knowledge Graph verbessert die Qualität und Benutzerfreundlichkeit der Suche, indem er die Beziehung zwischen verschiedenen Instanzen und Entitäten in Ihrem Korpus versteht und eine tiefere, kontextbezogene Suche ermöglicht.

Der Knowledge Graph verbessert die Suchfunktionen durch:

  • Anreichern personenbezogener Daten mit Organisationskontext, einschließlich abgeleiteter Berichtslinien und Beziehungen zu anderen Einheiten.
  • Wir haben die Erkennung von Einheiten und Beziehungen sowie das Verständnis von Nutzerabsichten verbessert, um mehr Informationen aus Nutzeranfragen zu gewinnen.
  • Suchantworten werden durch präzise, kontextbezogene Daten verbessert, sodass Nutzer relevante Personen- und Organisationsinformationen leichter finden können.

Unterstützte Datenquellen für Knowledge Graph

Der Knowledge Graph ist für Apps mit den folgenden Datenquellen verfügbar:

Hinweise

Wenn Sie Knowledge Graph-Funktionen verwenden möchten, müssen Sie zuerst Personendaten mit dem Knowledge Graph verknüpfen, indem Sie einen People-Connector konfigurieren. Ohne die Verbindung von Personendaten funktionieren diese Funktionen nicht richtig.

Personenbezogene Daten sind die Grundlage für wichtige Knowledge Graph-Funktionen, darunter:

  • Entitätsauflösung
  • Kontextverständnis
  • Personalisierung
  • Automatische Vervollständigung
  • Empfehlungen

Unterstützte Quellen für Personendaten

Jede App kann nur einen Personen-Connector haben. Sie können jedoch verschiedene Personen-Connectors für verschiedene Apps einrichten. Wählen Sie eine Datenquelle basierend auf Ihrem Identitätssystem aus:

Gemini Enterprise unterstützt die folgenden Optionen zum Aufnehmen von Personendaten in den Knowledge Graph:

  • Workspace-Quellen

    Der Advanced Google Identity-Connector synchronisiert Personendaten aus Google Workspace und kopiert sie direkt in den Vertex AI Search-Index. Durch das Kopieren von Daten in den Index ermöglicht dieser Connector die vollständige Knowledge Graph-Funktionalität, einschließlich der Verarbeitung natürlicher Sprache (Natural Language Processing, NLP). Der Advanced Google Identity-Connector ist cloudnativ und verhält sich ähnlich wie der Advanced Drive-Connector, indem Daten im Index gespeichert werden.

    Wenn der Connector aktiv ist, müssen Sie Folgendes tun:

    1. Heben Sie die Verknüpfung des vorhandenen People Search-Datenspeichers auf, falls er verwendet wird.
    2. Fügen Sie der Engine den neuen Datenspeicher hinzu.
  • Native Quellen

    Mit einem benutzerdefinierten Personen-Connector können Sie Personendaten aus BigQuery oder Cloud Storage mit einem von Google angegebenen Schema hochladen. Das ist ideal für Organisationen mit benutzerdefinierten oder hybriden Identitätsquellen.

  • Drittanbieterquellen

    Gemini Enterprise unterstützt die folgenden Drittanbieter von Identitäten für die Aufnahme von Personendaten:

Abfrageanmerkungen mit Knowledge Graph

Durch die Anmerkung von Suchanfragen mit dem Knowledge Graph wird die Interpretation von Suchanfragen verbessert, indem strukturierte Daten mit Suchbegriffen verknüpft werden. Dadurch werden die Genauigkeit und Relevanz der Suchergebnisse verbessert, da kontextbezogene Informationen aus dem Knowledge Graph genutzt werden.

Im Gegensatz zu eigenständigen Infofeldern funktioniert die Anmerkung von Suchanfragen unabhängig, indem Suchanfragen mit Metadaten angereichert werden. So können Entitäten präziser erkannt und verknüpft werden und der Nutzerkontext wird besser verstanden. Wenn Sie einen Suchbegriff eingeben, hilft der Knowledge Graph dabei, die Anfrage anhand ihrer Beziehung zu Personen, Organisationen, Problemen oder anderen Entitäten zu kategorisieren und zu interpretieren.

Zu den wichtigsten Komponenten der Anmerkung von Anfragen gehören:

  • Erkennung von Erwähnungen: Identifiziert wichtige Entitäten (z. B. Personen) und Beziehungen (z. B. Manager) in einer Suchanfrage und ordnet sie strukturierten Daten zu.

  • Nutzerkontext verstehen: Der Kontext des Nutzers wird analysiert und zugehörige Nutzersignale (z. B. die wichtigsten Kollegen) werden abgerufen, um die Suchrelevanz zu optimieren.

  • Verknüpfung von Begriffen mit Entitäten: Mehrdeutigkeiten werden aufgelöst, indem Begriffe mit den relevantesten Entitäten verknüpft werden. So wird beispielsweise zwischen „Apple“ als Unternehmen und als Frucht unterschieden.

Knowledge Graph-Panels

Nachdem der Knowledge Graph aktiviert wurde, werden die angereicherten Bereiche in die Suchergebnisse eingebunden. So erhalten Nutzer präzisere, kontextbezogene Informationen, mit denen sie schnell relevante Personen, Rollen und Organisationen finden können. Wenn Sie eine Suche durchführen, antwortet die search API mit detaillierten Bereichen, die zusätzlichen Kontext und Statistiken zur Suchanfrage enthalten.

Die folgenden Arten von Infofeldern werden auf der Suchergebnisseite angezeigt, damit Sie relevante Objekte leichter identifizieren können.

  • Personenfeld: Dieses Feld enthält Informationen wie die Berufsbezeichnung, die Abteilung und die Beziehungen der Person zu anderen Personen (z. B. Führungsebene, unterstellte Mitarbeiter und Teammitglieder). So können Sie schnell relevante Personen und ihre Rollen in der Organisation finden. Der Bereich „Personen“ wurde mit dem Knowledge Graph erweitert. Personen werden als Langformkarten angezeigt, die einen umfassenden Überblick über die Rolle und die Beziehungen der Person innerhalb der Organisation bieten. Die Antwort der Knowledge Graph Search API enthält angereicherte Datenbereiche in einem einheitlichen One-Box-Suchformat. Das Feld „Personen“ enthält Informationen zu Berufsbezeichnung, Abteilung und zugehörigen Personen (z. B. Führungskräfte, direkt unterstellte Mitarbeiter oder Teammitglieder mit denselben Vorgesetzten). Die aus dem Knowledge Graph abgeleiteten Felder werden im Ergebnis des Personen-Panels in derived_struct_data zurückgegeben.

  • Organisationsbereich: In diesem Bereich finden Sie wichtige Details zur Organisation, z. B. Name, Beschreibung und Websiteinformationen. Die Antwort der Knowledge Graph Search API enthält angereicherte Datenbereiche in einem einheitlichen One-Box-Suchformat. Im Bereich „Organisation“ werden der Name, die Beschreibung und die Websiteinformationen der Organisation angezeigt.Die Organisationsergebnisse werden im Feld knowledge_graph_results im Ergebnis des Bereichs „Organisation“ zurückgegeben.

Knowledge Graph-Konfigurationen

Der Knowledge Graph verbessert die Suchergebnisse durch die Einbindung angereicherter Bereiche mit präzisen, kontextbezogenen Informationen aus internen und externen Datenquellen.

Arten von Knowledge Graphs

Es gibt zwei Arten von Knowledge Graphs:

  • Google Cloud Knowledge Graph: Erweitert die Suchergebnisse durch die Einbeziehung externer Datenquellen. Dadurch wird der Umfang der Suchergebnisse erweitert und die Relevanz durch zusätzliche Informationen erhöht. Google Cloud Der Knowledge Graph ist nur für Apps verfügbar, die auf den Standort Global festgelegt sind.

  • Privater Knowledge Graph: Nutzt interne Organisationsdaten, um angereicherte Suchergebnisse zu generieren. Die Relevanz wird verbessert, indem unternehmenseigenes Wissen wie Beziehungen, Rollen und Jobtitel berücksichtigt wird. Außerdem werden kontextuell genauere Anmerkungen für Anfragen bereitgestellt.

Knowledge Graph-Konfigurationen ändern

Knowledge Graph-Konfigurationen sind für alle Gemini Enterprise-Apps aktiviert. So sehen Sie sich die Auswirkungen auf die Suchergebnisse an, bevor Sie Änderungen vornehmen:

Konfiguration Aktiviert Deaktiviert
Google Cloud Knowledge Graph Erweitert die Suche mit externen Daten. Beschränkt die Suche auf interne Daten.
Privater Knowledge Graph Die Suche wird durch interne Daten verbessert. Entfernt interne abgeleitete Daten.

Informationen zum Ändern von Knowledge Graph-Konfigurationen finden Sie im Abschnitt Knowledge Graph-Konfiguration verwalten.

Struktur und Zuordnung des privaten Knowledge Graph

Für den privaten Knowledge Graph wird ein Property Graph-Datenmodell verwendet. Sie wurde für Anwendungsfälle in Unternehmen entwickelt und unterstützt bestimmte Arten von Einheiten und Beziehungen. Sie können die Daten aus Dokumenten abrufen, die über unterstützte Connectors importiert wurden. Für den privaten Knowledge Graph gelten interne Regeln, um:

  1. Ordnen Sie Daten aus dem ursprünglichen Datenspeicherschema Entitätseigenschaften zu.
  2. Beziehungen zwischen Entitäten erstellen, indem Sie Kennungen verknüpfen.

Die Knowledge Graph-Engine erstellt den Graph, indem sie diese internen Regeln auf alle Dokumente aus den unterstützten Connectors anwendet.

Knowledge Graph-Entitätstypen und ‑Beziehungen

Knowledge Graph-Objekttypen Knowledge Graph-Beziehungstypen Unterstützte Connectors
Person Manager Workspace-Quellen → Personensuche
Dotted-Line-Bericht Personen, die einen benutzerdefinierten Connector verwenden

Zuordnung von Datenquellenschema zu Attributen von Rechtssubjekten

Quellfeld Hinweise
name.familyName, name.givenName, name.displayName Eine Verkettung von givenName und familyName. Wenn leer, verwenden Sie displayName.
personId Wird verwendet, um eine Person eindeutig zu identifizieren.
employeeId -
employmentStatus -
organizations[0].jobTitle Die Berufsbezeichnung im ersten Element von „organizations“ (Array).
websites[0].value Der erste Wert der Websites (Array).
topCoworkers -

Lebenszyklus des Knowledge Graph

Der Knowledge Graph für Ihre Engine durchläuft mehrere Status, während er aktiviert, aktualisiert und verwaltet wird. Wenn Sie die folgenden Status kennen, wissen Sie, was Sie erwartet und welche Aktionen Ihnen zur Verfügung stehen.

  • unspecified

    Der Knowledge Graph ist für die Engine nicht aktiviert oder die Initialisierung steht noch aus. Dazu müssen Sie die Einstellung knowledge_graph_config.enable_private_knowledge_graph auf true konfigurieren.

  • initialization

    Der erste Knowledge Graph wird erstellt. In diesem Status ist der Knowledge Graph nicht für die Verarbeitung verfügbar.

    Im Status initialization:

  • active

    Der Knowledge Graph ist zuverlässig und wird aktiv bereitgestellt. Dies ist der ausgewählte Status für einen funktionalen Knowledge Graph.

  • batch_update

    Der Knowledge Graph wird aktualisiert, um die letzten Änderungen aus den Quelldaten zu berücksichtigen. Diese Aktion wird durch eine Änderung der unterstützten Datenquelle für den Knowledge Graph oder durch eine regelmäßige Synchronisierung zwischen dem Knowledge Graph und der unterstützten Datenquelle ausgelöst. Der Knowledge Graph bleibt aktiv, ist aber möglicherweise nicht mit den geänderten Quelldaten synchronisiert, da die Aktualisierungen noch laufen.

    Im Status batch_update:

  • deleting

    Der Knowledge Graph ist für die Engine deaktiviert und wird gelöscht. Der Knowledge Graph ist nicht für die Verarbeitung verfügbar.

    Im Status deleting:

    • Sie können den Knowledge Graph nicht aktivieren oder deaktivieren.
    • Sie können die Suchmaschine nicht löschen.

Knowledge Graph-Konfiguration verwalten

Sie können Konfigurationen über die Console oder die API verwalten.

Hinweise:

  1. Sie müssen eine Gemini Enterprise-App erstellt haben.
  2. Unter Knowledge Graph-Konfigurationen ändern finden Sie Informationen zu den Auswirkungen von Änderungen an Konfigurationen auf vorhandene Apps.

Gehen Sie so vor, um Knowledge Graph-Konfigurationen in der Console zu aktualisieren:

Console

So verwenden Sie die Google Cloud Konsole zum Verwalten von Knowledge Graph-Konfigurationen:

  1. Rufen Sie in der Google Cloud Console die Seite Gemini Enterprise auf.

    Gemini Enterprise

  2. Klicken Sie auf der Seite Apps auf die App, deren Knowledge Graph-Konfigurationen Sie aktualisieren möchten.

  3. Rufen Sie den Tab Konfigurationen > Wissensgraph auf.

  4. Aktivieren oder deaktivieren Sie je nach Bedarf Google Cloud Knowledge Graph oder Privater Knowledge Graph.

  5. Klicken Sie auf die Schaltfläche Speichern, nachdem Sie alle Aufforderungen oder Warnungen bestätigt haben.

Das Aktivieren und Deaktivieren des Knowledge Graph hat folgende Auswirkungen:

  1. Google Cloud Knowledge Graph:

    • Wenn Sie den Google Cloud Knowledge Graph aktivieren, erhalten Sie Zugriff auf angereicherte Daten aus externen Quellen, wodurch der Suchkontext erweitert wird.
    • Wenn Sie diese Option deaktivieren, werden die Suchergebnisse auf interne Daten beschränkt und der Zugriff auf externen Kontext wird entfernt.
  2. Privater Knowledge Graph:

    • Wenn Sie den privaten Knowledge Graph aktivieren, werden interne abgeleitete Daten neu generiert. Es kann bis zu einem Tag dauern, bis Abfrageanmerkungen wieder angezeigt werden.
    • Wenn Sie die Funktion deaktivieren, werden interne abgeleitete Daten gelöscht und Anmerkungen zu Anfragen entfernt. Dadurch wird die Genauigkeit und Fülle der Suchergebnisse verringert.

API

Sie können Knowledge Graph-Einstellungen über die API ändern:

  {
    "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 Panels in den Suchergebnissen ansehen

Sie können sich ansehen, wie die mit dem Knowledge Graph angereicherten Suchergebnisse in Ihrer Suchanwendung dargestellt werden. Bei panelbasierten Suchoberflächen wird das Knowledge Graph-Panel als angereicherter Infobereich neben den regulären Suchergebnissen angezeigt. Es werden relevante Details zu Entitäten wie Namen, Beschreibungen, Bilder und Beziehungen eingebunden, um eine informativere und kontextbezogenere Suche zu ermöglichen. Mithilfe dieser hervorgehobenen Ergebnisse können Sie schnell wichtige Erkenntnisse zu Ihrer Anfrage finden.

Das folgende JSON-Beispiel zeigt, wie ein Personenfeld in einer API-Antwort aussieht:


      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"
                                    }
                                  }
                                ]
                              }
                            }
                          ]
                        }
                      }
                    }
                  ]
                }
              }
            }
          ]
        }
      ]

Das folgende JSON-Beispiel zeigt, wie ein Organisationsfeld in einer API-Antwort aussieht:

      {
        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/"
                                }
                              }
                            ]
                          }
                        }
                      }
                    ]
                  }
                }
              ]
            }
          }
        ]
      }

Nächste Schritte

Benutzerdefinierte Einbettungen verwenden