Knowledge Graph: potenziamento della ricerca intelligente e sensibile al contesto

Knowledge Graph migliora Gemini Enterprise collegando i dati in tre pilastri fondamentali: persone, contenuti e interazioni. Knowledge Graph migliora la qualità e l'esperienza di ricerca comprendendo la relazione tra le diverse istanze ed entità nel tuo corpus, fornendo una ricerca più approfondita e sensibile al contesto.

Knowledge Graph migliora le funzionalità di ricerca:

  • Arricchimento dei dati relativi alle persone con il contesto organizzativo, incluse le linee di reporting e le relazioni con altre entità.
  • Miglioramento del riconoscimento di entità, relazioni e comprensione dell'intento per scoprire più insight dalle query degli utenti.
  • Migliorare le risposte della ricerca con dati precisi e basati sul contesto, in modo che gli utenti possano trovare più facilmente persone e informazioni organizzative pertinenti.

Origini dati supportate per il Knowledge Graph

Knowledge Graph è disponibile per le app che hanno le seguenti origini dati:

Prima di iniziare

Per utilizzare le funzionalità di Knowledge Graph, devi prima collegare i dati delle persone al Knowledge Graph configurando un connettore Persone. Senza collegare i dati delle persone, queste funzionalità non funzionano correttamente.

I dati delle persone supportano le funzionalità chiave del Knowledge Graph, tra cui:

  • Risoluzione delle entità
  • Comprensione del contesto
  • Personalizzazione
  • Completamento automatico
  • Consigli

Origini supportate per i dati delle persone

Ogni app può avere un solo connettore di persone. Tuttavia, puoi configurare connettori di persone diversi per app diverse. Scegli un'origine dati in base al tuo sistema di identità:

Gemini Enterprise supporta le seguenti opzioni per l'importazione dei dati delle persone nel Knowledge Graph:

  • Origini Workspace

    Il connettore Advanced Google Identity sincronizza i dati personali da Google Workspace, copiandoli direttamente nell'indice di Vertex AI Search. Copiando i dati nell'indice, questo connettore consente la funzionalità completa di Knowledge Graph, inclusa l'elaborazione del linguaggio naturale (NLP). Il connettore Google Identity avanzato è cloud-native e si comporta in modo simile al connettore Google Drive avanzato mantenendo i dati nell'indice.

    Quando il connettore è attivo, devi:

    1. Scollega il datastore People Search esistente, se in uso.
    2. Aggiungi il nuovo datastore al motore.
  • Origini native

    Il connettore personalizzato per le persone consente di caricare i dati personali da BigQuery o Cloud Storage utilizzando uno schema specificato da Google. Questa opzione è ideale per le organizzazioni con origini identità personalizzate o ibride.

  • Origini di terze parti

    Gemini Enterprise supporta i seguenti provider di identità di terze parti per l'importazione dei dati delle persone:

Informazioni sull'annotazione delle query con Knowledge Graph

L'annotazione delle query con Knowledge Graph migliora la comprensione delle query di ricerca associando i dati strutturati ai termini di ricerca. Questo processo migliora l'accuratezza e la pertinenza dei risultati di ricerca sfruttando gli approfondimenti contestuali del Knowledge Graph.

A differenza dei riquadri informativi autonomi, l'annotazione delle query funziona in modo indipendente arricchendo le query di ricerca con metadati, consentendo un rilevamento più preciso delle entità, il collegamento delle entità e la comprensione del contesto dell'utente. Quando inserisci un termine di ricerca, il Knowledge Graph aiuta a classificare e interpretare la query in base alla sua relazione con persone, organizzazioni, problemi o altre entità.

I componenti chiave dell'annotazione delle query includono:

  • Rilevamento delle menzioni: identifica le entità chiave (ad esempio persone) e le relazioni (ad esempio il responsabile) in una query di ricerca e le associa ai dati strutturati.

  • Comprensione del contesto dell'utente: analizza il contesto dell'utente e recupera indicatori utente correlati (ad esempio, i colleghi più importanti) per perfezionare la pertinenza della ricerca.

  • Collegamento di entità: risolve le ambiguità collegando i termini alle entità più pertinenti (ad esempio, distingue tra "Apple" come azienda e come frutto).

Pannelli del Knowledge Graph

Una volta attivato il Knowledge Graph, il motore di ricerca integra i riquadri arricchiti nei risultati di ricerca, fornendo informazioni più precise e basate sul contesto per aiutare gli utenti a trovare rapidamente persone, ruoli e organizzazioni pertinenti. Quando esegui una ricerca, l'API search risponde con riquadri dettagliati che forniscono contesto e approfondimenti aggiuntivi relativi alla query di ricerca.

Nella pagina dei risultati di ricerca vengono visualizzati i seguenti tipi di riquadro, che migliorano la tua capacità di identificare le entità pertinenti.

  • Pannello Persone: questo pannello include informazioni quali la posizione lavorativa, il reparto e i rapporti con altre persone (ad esempio, la catena di gestione, i dipendenti subordinati e i colleghi). Ti aiuta a trovare rapidamente le persone pertinenti e i loro ruoli all'interno dell'organizzazione. Il riquadro Persone è migliorato con il Knowledge Graph e le persone vengono visualizzate come schede di formato lungo, fornendo una visione completa del ruolo e delle relazioni della persona all'interno dell'organizzazione. La risposta dell'API Knowledge Graph Search include riquadri di dati arricchiti in un formato di ricerca unificato in una sola casella. Il riquadro Persone contiene informazioni su qualifica, reparto e persone correlate (ad esempio catena di gestione, dipendenti subordinati o colleghi con gli stessi responsabili). I campi derivati dal Knowledge Graph vengono restituiti in derived_struct_data all'interno del risultato del riquadro Persone.

  • Riquadro dell'organizzazione: questo riquadro fornisce i dettagli principali dell'organizzazione, come nome, descrizione e informazioni sul sito web. La risposta dell'API di ricerca Knowledge Graph include riquadri di dati arricchiti in un formato di ricerca unificato e in un'unica casella. Il pannello Organizzazione mostra il nome, la descrizione e le informazioni sul sito web dell'organizzazione.I risultati dell'organizzazione vengono restituiti nel campo knowledge_graph_results all'interno del risultato del pannello Organizzazione.

Configurazioni Knowledge Graph

Knowledge Graph migliora i risultati di ricerca integrando riquadri arricchiti con informazioni precise e basate sul contesto provenienti da origini dati interne ed esterne.

Tipi di Knowledge Graph

Esistono due tipi di grafici della conoscenza:

  • Google Cloud Knowledge Graph: espande i risultati di ricerca incorporando origini dati esterne. In questo modo, si amplia l'ambito dei risultati di ricerca e si migliora la pertinenza con insight aggiuntivi. Google Cloud Knowledge Graph è disponibile solo nelle app impostate sulla posizione Globale.

  • Knowledge Graph privato: sfrutta i dati interni dell'organizzazione per generare risultati di ricerca estesi. Migliora la pertinenza incorporando conoscenze proprietarie, come relazioni, ruoli e titoli di lavoro, e fornisce annotazioni sulle query più accurate dal punto di vista contestuale.

Modificare le configurazioni di Knowledge Graph

Le configurazioni di Knowledge Graph sono attive per tutte le app Gemini Enterprise. Prima di apportare modifiche, puoi visualizzare l'impatto sui risultati di ricerca nel seguente modo:

Configurazione Abilitato Disabilitato
Google Cloud Knowledge Graph Espande la ricerca con dati esterni. Limita la ricerca ai dati interni.
Knowledge Graph privato Migliora la ricerca con i dati interni. Rimuove i dati derivati interni.

Per modificare le configurazioni di Knowledge Graph, consulta la sezione Gestire la configurazione di Knowledge Graph.

Struttura e mappatura del Knowledge Graph privato

Il Knowledge Graph privato utilizza un modello dei dati del grafico delle proprietà. È progettato per casi d'uso aziendali e supporta tipi specifici di entità e relazioni. Puoi recuperare i dati dai documenti importati tramite i connettori supportati. Il Knowledge Graph privato utilizza regole interne per:

  1. Mappa i dati dello schema dell'datastore originale alle proprietà delle entità.
  2. Crea relazioni tra le entità collegando gli identificatori.

Il motore Knowledge Graph costruisce il grafico applicando queste regole interne a tutti i documenti dei connettori supportati.

Tipi di entità e relazioni del Knowledge Graph

Tipi di entità Knowledge Graph Tipi di relazioni Knowledge Graph Connettori supportati
Persona Gestore Origini Workspace → People Search
Report con linea tratteggiata Persone che utilizzano il connettore personalizzato

Mappatura dallo schema dell'origine dati alle proprietà delle entità

Campo del documento di origine Note
name.familyName, name.givenName, name.displayName Una concatenazione di givenName e familyName. Se il campo è vuoto, utilizza displayName.
personId Utilizzato per identificare in modo univoco una persona.
employeeId -
employmentStatus -
organizations[0].jobTitle Il titolo di lavoro nel primo elemento delle organizzazioni (array).
websites[0].value Il primo valore dei siti web (array).
topCoworkers -

Ciclo di vita del Knowledge Graph

Il Knowledge Graph per il tuo motore passa attraverso diversi stati durante l'attivazione, l'aggiornamento e la gestione. Comprendere i seguenti stati ti aiuta a sapere cosa aspettarti e quali azioni sono disponibili.

  • unspecified

    Il Knowledge Graph non è attivato per il motore o è in attesa di inizializzazione. Per abilitarlo, devi configurare l'impostazione knowledge_graph_config.enable_private_knowledge_graph su true.

  • initialization

    È in corso la costruzione iniziale del Knowledge Graph. In questo stato, il Knowledge Graph non è disponibile per l'elaborazione.

    Nello stato initialization:

    • Non puoi attivare o disattivare il Knowledge Graph.
    • Non puoi eliminare il motore.
    • Le modifiche apportate al collegamento o allo scollegamento degli archivi dati supportati da Knowledge Graph non vengono immediatamente applicate al grafico. Per ulteriori informazioni, consulta le origini dati supportate per Knowledge Graph.
  • active

    Knowledge Graph è affidabile e in pubblicazione. Questo è lo stato selezionato per un Knowledge Graph funzionale.

  • batch_update

    Il Knowledge Graph è in fase di aggiornamento per incorporare le recenti modifiche ai dati di origine. Questa azione viene attivata da una modifica dell'origine dati supportata per il Knowledge Graph o da una sincronizzazione periodica tra il Knowledge Graph e l'origine dati supportata. Il Knowledge Graph rimane attivo, ma potrebbe non essere sincronizzato con i dati di origine modificati perché gli aggiornamenti sono ancora in corso.

    Nello stato batch_update:

    • Non puoi attivare o disattivare il Knowledge Graph.
    • Non puoi eliminare il motore.
    • Le modifiche apportate al collegamento o allo scollegamento dei datastore supportati da Knowledge Graph vengono applicate al grafico con un ritardo. Per ulteriori informazioni, consulta le origini dati supportate per Knowledge Graph.
  • deleting

    Il Knowledge Graph è disattivato per il motore ed è in fase di eliminazione. Il Knowledge Graph non è disponibile per l'elaborazione.

    Nello stato deleting:

    • Non puoi attivare o disattivare il Knowledge Graph.
    • Non puoi eliminare il motore.

Gestire la configurazione di Knowledge Graph

Puoi gestire le configurazioni utilizzando la console o l'API.

Prima di iniziare:

  1. Devi aver creato un'app Gemini Enterprise.
  2. Consulta la sezione Modifica delle configurazioni di Knowledge Graph per vedere l'impatto della modifica delle configurazioni sulle app esistenti.

Per aggiornare le configurazioni di Knowledge Graph nella console, segui questa procedura:

Console

Per utilizzare la console Google Cloud per gestire le configurazioni di Knowledge Graph, segui questi passaggi:

  1. Nella console Google Cloud , vai alla pagina Gemini Enterprise.

    Gemini Enterprise

  2. Nella pagina App, fai clic sull'app di cui vuoi aggiornare le configurazioni del Knowledge Graph.

  3. Vai alla scheda Configurazioni > Knowledge Graph.

  4. Attiva/disattiva Google Cloud Knowledge Graph o Knowledge Graph privato in base alle tue esigenze.

  5. Fai clic sul pulsante Salva dopo aver confermato eventuali prompt o avvisi.

Gli effetti dell'attivazione e della disattivazione del Knowledge Graph sono i seguenti:

  1. Google Cloud Knowledge Graph:

    • L'attivazione di Google Cloud Knowledge Graph concede l'accesso a dati arricchiti provenienti da fonti esterne, ampliando il contesto di ricerca.
    • Se lo disattivi, i risultati di ricerca saranno limitati ai dati interni e l'accesso al contesto esterno verrà rimosso.
  2. Knowledge Graph privato:

    • L'attivazione del Knowledge Graph privato rigenera i dati derivati interni e le annotazioni delle query vengono restituite dopo un massimo di un giorno.
    • Se lo disattivi, i dati derivati interni vengono eliminati e le annotazioni delle query vengono rimosse, riducendo l'accuratezza e la ricchezza della ricerca.

API

Puoi modificare le impostazioni di Knowledge Graph utilizzando l'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"
    }
  }

Visualizzare le schede informative nei risultati di ricerca

Puoi visualizzare come vengono visualizzati i risultati di ricerca arricchiti dal Knowledge Graph nella tua applicazione di ricerca. Per le interfacce di ricerca basate su riquadri, il riquadro di Knowledge Graph viene visualizzato come una casella di informazioni arricchite accanto ai normali risultati di ricerca. Integra dettagli pertinenti delle entità, come nomi, descrizioni, immagini e relazioni, fornendo un'esperienza di ricerca più informativa e pertinente al contesto. Questi risultati migliorati ti aiutano a trovare rapidamente approfondimenti chiave correlati alla tua query.

Il seguente esempio JSON mostra come viene visualizzato un riquadro Persone in una risposta 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"
                                    }
                                  }
                                ]
                              }
                            }
                          ]
                        }
                      }
                    }
                  ]
                }
              }
            }
          ]
        }
      ]

Il seguente esempio JSON mostra come viene visualizzato un riquadro Organizzazione in una risposta 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/"
                                }
                              }
                            ]
                          }
                        }
                      }
                    ]
                  }
                }
              ]
            }
          }
        ]
      }

Passaggi successivi

Utilizzare gli incorporamenti personalizzati.