Implementa il completamento automatico

Il completamento automatico di Cloud Search aiuta un utente suggerendo parole mentre digita una query di ricerca. Ad esempio, i suggerimenti potrebbero essere parole provenienti da titoli di documenti, operatori di ricerca, valori degli operatori di ricerca o nomi e indirizzi email dell'organizzazione Google Workspace.

Autocomplete estrae le frasi dai titoli dei documenti indicizzati e, utilizzando un modello n-grammi, determina i suggerimenti da mostrare utilizzando l'API Suggest. Per impostazione predefinita, le frasi dei titoli dei documenti vengono mostrate nel completamento automatico. Puoi anche contrassegnare le proprietà dello schema di testo e di enumerazione come is_suggestable per completare automaticamente il nome e i valori della proprietà corrispondente.

L'API Suggest esamina la query di ricerca per trovare suggerimenti sulla lingua della query, ad esempio inglese o spagnolo, e assegna la priorità ai risultati di conseguenza. Il campo languageCode di una richiesta viene utilizzato anche per migliorare i suggerimenti specifici per la lingua.

Scenario di esempio

Ad esempio, supponiamo di avere la seguente origine dati contenente dati sui film:

  • L'origine dati contiene due documenti.
  • Ogni documento ha un titolo (ItemMetadata.title) e due proprietà: genre e characters.
  • Il primo documento è intitolato "Avengers: Infinity War" con genre=science fiction e characters=Iron Man, Hulk
  • Il secondo documento si intitola "Harry Potter" con genre=Adventure, Fantasy andcharacters=Hermione, Harry Potter`

La Figura 1 mostra come vengono estratti i suggerimenti per il completamento automatico dai titoli, dalle proprietà e dai valori delle proprietà dei documenti.

Due documenti e l'ngramma risultante
Figura 1. Due documenti e l'n-gramma risultante utilizzato per il completamento automatico

Dal documento 1 estraiamo gli n-grammi (fino a trigrammi) "Avengers", "Infinity", "War", "Avengers Infinity", "Infinity War", "Avengers Infinity War". Allo stesso modo, dal documento 2 generiamo "Harry", "Potter", "Harry Potter".

Quando esegui una query su questa origine dati, supponiamo che l'utente inizi digitando "h". I suggerimenti mostrati all'utente saranno:

  • Qual è il colmo per uno specchio?
  • Hermione
  • Hulk
  • Harry Potter

Supponiamo che l'utente selezioni il suggerimento di completamento automatico "Hermione" e che il carattere successivo digitato sia "a". I suggerimenti di completamento automatico mostrati all'utente sarebbero:

  • Hermione Adventure
  • Azione di Hermione
  • Hermione Avengers

Il completamento automatico tenta di completare l'ultima parola (o ngramma) digitata. Nell'esempio precedente, "a" viene espanso in "avventura", "azione" e "avengers" poiché non esiste un testo che inizia con "hermione a". Questo suggerimento è chiamato suggerimento di coda: il completamento automatico riguarda solo l'ultima parola/n-gramma che viene digitata.

Il completamento automatico di Cloud Search restituisce un massimo di 5 suggerimenti dal contenuto del documento e 2 suggerimenti di persone.

Per impostazione predefinita, le frasi dei titoli dei documenti vengono mostrate nel completamento automatico. Le proprietà dello schema devono essere contrassegnate esplicitamente come is_suggestable affinché l'API Suggest completi automaticamente il nome e i valori della proprietà corrispondente.

Integrare l'API Autocomplete

Se utilizzi l'applicazione di ricerca predefinita o il widget di ricerca incorporabile, la funzionalità di completamento automatico di Cloud Search è supportata in modo nativo senza alcun lavoro aggiuntivo. Ricorda che, per impostazione predefinita, le frasi dei titoli dei documenti vengono visualizzate nel completamento automatico. Le proprietà dello schema devono essere contrassegnate esplicitamente come is_suggestable affinché l'API Suggest completi automaticamente il nome e i valori della proprietà corrispondente.

Se stai creando un'applicazione di ricerca personalizzata, il completamento automatico è disponibile eseguendo query sugli endpoint API /query/suggest.

Limitazioni

Il completamento automatico presenta le seguenti limitazioni:

  • La limitazione delle frasi di completamento automatico di Cloud Search utilizzando FilterOptions definito nello schema non è supportata, ad eccezione dei seguenti filtri integrati: objectype, mimetype e filtri per tipo.

  • I suggerimenti basati sulla cronologia delle query (ricerche eseguite in precedenza dall'utente in un'applicazione di ricerca) non sono supportati

  • È possibile contrassegnare un massimo di 20 proprietà come is_suggestable. Questo limite può essere aumentato contattando l'assistenza di Cloud Search.

  • Il completamento automatico degli operatori di ricerca non è disponibile per le proprietà con exact_match_with_operator.

  • Il completamento automatico di Cloud Search restituisce un massimo di 5 suggerimenti dal contenuto del documento e 2 suggerimenti di persone.

  • Il completamento automatico di Cloud Search suggerisce frasi solo dai documenti a cui un utente ha accesso.