Questa pagina descrive la funzionalità di completamento automatico di base di Vertex AI Search. Il completamento automatico genera suggerimenti per le query in base ai primi caratteri inserito per la query.
I suggerimenti generati dal completamento automatico variano a seconda del tipo di dati utilizzati dall'app di ricerca:
Dati strutturati e non strutturati. Per impostazione predefinita, il completamento automatico genera suggerimenti basati sui contenuti dei documenti nel datastore. Dopo l'importazione dei documenti, per impostazione predefinita, il completamento automatico non inizia a generare suggerimenti finché non sono disponibili dati di qualità sufficiente, in genere un paio di giorni. Se effettui richieste di completamento automatico tramite l'API, generare suggerimenti basati sulla cronologia delle ricerche o sugli eventi utente.
Dati dei siti web. Per impostazione predefinita, il completamento automatico genera suggerimenti dalla cronologia delle ricerche. Il completamento automatico richiede traffico di ricerca reale. Dopo che il traffico di ricerca è iniziato, il completamento automatico impiega uno o due giorni prima di generare suggerimenti. I suggerimenti possono essere generati dai dati sottoposti a scansione del web provenienti da siti pubblici con il modello di dati dei documenti avanzati sperimentale.
Dati sanitari. Per impostazione predefinita, una fonte di dati medici canonica viene utilizzata generare suggerimenti di completamento automatico per gli archivi dei dati sanitari. Per la ricerca sanitaria, il completamento automatico è una funzionalità in anteprima.
Il modello dei dati con completamento automatico determina il tipo di dati utilizzato dal completamento automatico generare suggerimenti. Esistono quattro modelli di completamento automatico:
Documento. Il modello di documento genera suggerimenti dai documenti importati dall'utente. Questo modello non è disponibile per i dati dei siti web o per i dati sanitari.
Campi configurabili. Il modello di campi compilabili suggerisce il testo preso direttamente dai campi di dati strutturati. Solo i campi annotati con
completable
vengono utilizzati per i suggerimenti di completamento automatico. Questo modello è disponibile solo per i dati strutturati.Cronologia delle ricerche. Il modello della cronologia delle ricerche genera suggerimenti dalla cronologia delle chiamate all'API
SearchService.search
. Non utilizzare questo modello se non è disponibile traffico per il metodoservingConfigs.search
. Questo modello non è disponibile per i dati sanitari.Evento utente. Il modello di eventi utente genera suggerimenti eventi di ricerca importati dall'utente. Questo modello non è disponibile per i dati sanitari.
Le richieste di completamento automatico vengono inviate utilizzando il metodo
dataStores.completeQuery
.
La tabella seguente mostra i tipi di modelli con completamento automatico disponibili per ogni tipo di dati.
Modello di dati del completamento automatico |
Origine dati |
Dati del sito web |
Strutturato dati |
Non strutturati dati |
---|---|---|---|---|
Documento | Importato dall'utente | ✔* (predefinita) | ✔ (opzione predefinita) | |
Completabile campi | Importato dall'utente | ✔ | ||
Cronologia delle ricerche | Automaticamente raccolti | ✔ (predefinita) | ✔ | ✔ |
Eventi dell'utente | Importato dall'utente o automaticamente raccolti per widget | ✔ | ✔ | ✔ |
Scansionati dal web contenuti | Acquisiti tramite scansione da contenuti di siti web pubblici specificati dall'utente | ✔† |
* : lo schema del documento deve contenere campi title
o description
oppure
devono essere campi specificati come chiave title
o description
proprietà. Consulta
Aggiornare uno schema per i dati strutturati.
† : i contenuti derivanti da scansione del web possono essere utilizzati come origine dati solo se il modello sperimentale avanzato dei dati dei documenti per il completamento automatico è abilitato. Consulta: Modello avanzato di dati dei documenti.
Se non vuoi utilizzare il modello predefinito per il tuo tipo di dati, puoi
specificare un modello diverso quando invii la richiesta di completamento automatico. Le richieste di completamento automatico vengono inviate utilizzando il metodo dataStores.completeQuery
. Per informazioni, consulta le istruzioni dell'API: invia una richiesta di completamento automatico per scegliere un modello diverso.
Funzionalità di completamento automatico
Vertex AI Search supporta le seguenti funzionalità di completamento automatico per mostrare le previsioni più utili durante una ricerca:
Funzionalità | Descrizione | Esempio o ulteriori informazioni |
---|---|---|
Rimuovere i caratteri speciali | Rimuovi i caratteri non standard sia dai dati dei suggerimenti sia dalle query digitate. Il trattino - è l'unico carattere standard
contenuti nei dati dei suggerimenti e nelle query digitate.
|
Mt. Everest & Mt. Kilimanjaro → Mt Everest Mt Kilimanjaro . |
Correggi gli errori di battitura | Correggi l'ortografia delle parole che sono errori di battitura. | Milc → Milk .
|
Rimuovi termini non sicuri |
|
Testo offensivo, ad esempio pornografico, osceno, volgare, violento. |
Lista bloccata |
|
Per ulteriori informazioni, consulta Utilizzare una lista bloccata per il completamento automatico. |
Termini deduplicati |
|
Shoes for Women , Womens Shoes e Womans Shoes sono deduplicati,
e viene suggerito solo il più popolare. |
Suggerimenti per la corrispondenza finale |
|
Per ulteriori informazioni, consulta Suggerimenti di corrispondenza finale. |
Suggerimenti per la corrispondenza finale
I suggerimenti di corrispondenza in coda vengono creati utilizzando la corrispondenza esatta del prefisso rispetto all'ultimo in una stringa di query.
Ad esempio, pronuncia la query "canzoni con lui" viene inviato in una richiesta di completamento automatico. Quando la corrispondenza della coda è abilitata, il completamento automatico potrebbe rilevare che il prefisso completo "canzoni con lui" non ha corrispondenze. Tuttavia, l'ultima parola della query, "lui", ha una corrispondenza esatta del prefisso con "ciao mondo" e "ciao gattino". In questo caso, i suggerimenti restituiti sono "canzoni con hello world" e "canzoni con hello kitty" perché non sono disponibili suggerimenti con corrispondenza completa.
Puoi utilizzare questa funzionalità per ridurre i risultati vuoti dei suggerimenti e aumentare la loro diversità, il che è particolarmente utile nei casi in cui le origini dati (conteggio degli eventi utente, cronologia della ricerca e copertura degli argomenti dei documenti) sono limitate. Tuttavia, l'attivazione dei suggerimenti di corrispondenza finale può ridurre la qualità complessiva dei suggerimenti. Poiché la corrispondenza finale corrisponde solo alla parola finale del prefisso, alcuni suggerimenti restituiti potrebbero non avere senso. Ad esempio, una query come "canzoni con lui" potrebbe ricevere un suggerimento di corrispondenza in coda, come "brani con aiutanti" guide".
I suggerimenti di corrispondenza della coda vengono restituiti solo se:
include_tail_suggestions
è impostato sutrue
nella richiestadataStores.completeQuery
.Non sono disponibili suggerimenti di corrispondenza completa dei prefissi per la query.
Attivare o disattivare il completamento automatico per un widget
Per attivare o disattivare il completamento automatico per un widget:
Console
Nella console Google Cloud, vai alla pagina Agent Builder.
Fai clic sul nome dell'app da modificare.
Fai clic su Configurations (Configurazione).
Fai clic sulla scheda UI.
Attiva o disattiva l'opzione Mostra suggerimenti di completamento automatico per attivare o disattivare i suggerimenti di completamento automatico per il widget. Quando attivi il completamento automatico, tieni presente che potrebbero essere necessari uno o due giorni prima che i suggerimenti vengano visualizzati. Per le ricerche nel campo della salute, il completamento automatico è una funzionalità in anteprima.
Aggiornare le impostazioni di completamento automatico
Per configurare le impostazioni di completamento automatico:
Console
Nella console Google Cloud, vai alla pagina Agent Builder.
Fai clic sul nome dell'app che vuoi modificare.
Fai clic su Configurations (Configurazione).
Fai clic sulla scheda Completamento automatico.
Inserisci o seleziona nuovi valori per le impostazioni di completamento automatico che vuoi aggiornare:
- Numero massimo di suggerimenti: il numero massimo di suggerimenti di completamento automatico che possono essere offerti per una query.
- Lunghezza minima per l'attivazione: il numero minimo di caratteri che possono essere digitati prima che vengano offerti i suggerimenti di completamento automatico.
- Ordine corrispondente: la posizione in una stringa di query che il completamento automatico può iniziare ad associare i suoi suggerimenti.
- Modello di completamento automatico: il modello dei dati a completamento automatico utilizzato per generare.
i suggerimenti recuperati. Questa opzione può essere ignorata nel
dataStores.completeQuery
tramitequeryModel
. Attiva completamento automatico: per impostazione predefinita, il completamento automatico non inizia ad apportare modifiche. fino a quando non avrà dati di qualità sufficienti, in genere un paio di giorni. Se vuoi eseguire l'override di questa impostazione predefinita e iniziare a ricevere per i suggerimenti di completamento automatico in anticipo, seleziona Ora.
Anche se selezioni Ora, potrebbe trascorrere un giorno prima che i suggerimenti vengano generati e mancano comunque alcuni suggerimenti di completamento automatico o di scarsa qualità finché i dati non saranno sufficienti.
Fai clic su Salva e pubblica. Le modifiche vengono applicate entro pochi minuti per i motori in cui il completamento automatico è già attivo.
Aggiorna le annotazioni dei campi completabili nello schema
Per attivare il completamento automatico per i campi nello schema dei dati strutturati: passaggi:
Console
Nella console Google Cloud, vai alla pagina Agent Builder.
Fai clic sul nome dell'app che vuoi modificare. Deve utilizzare i dati strutturati.
Fai clic su Dati.
Fai clic sulla scheda Schema.
Fai clic su Modifica per selezionare i campi dello schema da contrassegnare come
completable
.Fai clic su Salva per salvare le configurazioni dei campi aggiornate. La generazione e la restituzione di questi suggerimenti richiede circa un giorno.
Invia richieste di completamento automatico
I seguenti esempi mostrano come inviare richieste di completamento automatico.
REST
Per inviare una richiesta di completamento automatico utilizzando l'API:
Trova l'ID del tuo datastore. Se hai già l'ID del tuo data store, vai al passaggio successivo.
Nella console Google Cloud, vai alla pagina Agent Builder e nel menu di navigazione fai clic su Data Store.
Fai clic sul nome del datastore.
Nella pagina Dati del tuo datastore, ottieni l'ID del datastore.
Chiama il metodo
dataStores.completeQuery
.curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/collections/default_collection/dataStores/DATA_STORE_ID:completeQuery?query=QUERY_STRING"
PROJECT_ID: il numero del progetto o l'ID del tuo progetto Google Cloud.
LOCATION: la posizione del datastore:
us
,eu
oppureglobal
.DATA_STORE_ID: l'ID del datastore associato con la tua app.
QUERY_STRING: l'input typeahead utilizzato per suggerimenti per il recupero.
Invia una richiesta di completamento automatico a un modello diverso
Per inviare una richiesta di completamento automatico con un modello di dati di completamento automatico diverso, segui questi passaggi:
Trova l'ID del tuo datastore. Se hai già un datastore ID, vai al passaggio successivo.
Nella console Google Cloud, vai alla pagina Agent Builder e nel menu di navigazione fai clic su Data Store.
Fai clic sul nome del tuo datastore.
Individua l'ID datastore nella pagina Dati del datastore.
Chiama il
dataStores.completeQuery
.curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/collections/default_collection/dataStores/DATA_STORE_ID:completeQuery?query=QUERY_STRING&query_model=AUTOCOMPLETE_MODEL"
- PROJECT_ID: il numero del progetto o l'ID del tuo progetto Google Cloud.
- LOCATION: la posizione del datastore:
us
,eu
oppureglobal
. - DATA_STORE_ID: l'ID univoco dello spazio dati associato alla tua app.
- QUERY_STRING: l'input di tipoahead utilizzato per recuperare i suggerimenti.
- AUTOCOMPLETE_MODEL: il modello di dati per il completamento automatico da utilizzare per la richiesta:
document
,document-completable
,search-history
ouser-event
. Per i dati sanitari, utilizzahealthcare-default
.
C#
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API C# Vertex AI Agent Builder.
Per autenticarti in Vertex AI Agent Builder, configura le credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Go
Per ulteriori informazioni, consulta API Go di Vertex AI Agent Builder documentazione di riferimento.
Per eseguire l'autenticazione su Vertex AI Agent Builder, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Java
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Java Vertex AI Agent Builder.
Per autenticarti in Vertex AI Agent Builder, configura le credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Node.js
Per ulteriori informazioni, consulta API Node.js di Vertex AI Agent Builder documentazione di riferimento.
Per autenticarti in Vertex AI Agent Builder, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Python
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Python Vertex AI Agent Builder.
Per eseguire l'autenticazione su Vertex AI Agent Builder, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Ruby
Per ulteriori informazioni, consulta API Ruby di Vertex AI Agent Builder documentazione di riferimento.
Per autenticarti in Vertex AI Agent Builder, configura le credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Usa una lista bloccata a completamento automatico
Puoi utilizzare una lista bloccata per evitare che termini specifici appaiano come suggerimenti di completamento automatico.
Prendiamo ad esempio un'azienda farmaceutica. Se un farmaco non è più approvato dalla FDA, ma è menzionato nei documenti nel proprio data store, l'utente potrebbe voler impedire che venga visualizzato come query suggerita. L'azienda potrebbe aggiungere il nome del farmaco a una lista negativa per impedirne la proposta.
I limiti sono i seguenti:
- Una lista bloccata per ogni datastore
- Il caricamento di una lista bloccata sovrascrive qualsiasi lista bloccata esistente per quel datastore
- Fino a 1000 termini per lista bloccata
- I termini non fanno distinzione tra maiuscole e minuscole
- Dopo l'importazione di una lista bloccata, saranno necessari 1-2 giorni prima che le modifiche diventino effettive
Ogni voce della lista bloccata è composta da blockPhrase
e matchOperator
:
blockPhrase
: inserisci una stringa come termine della lista bloccata. I termini sono senza distinzione tra maiuscole e minuscole.matchOperator
: accetta i seguenti valori:EXACT_MATCH
: impedisce la visualizzazione di una corrispondenza esatta del termine della lista bloccata come query suggerita.CONTAINS
: impedisce la visualizzazione di qualsiasi suggerimento contenente il termine della lista nera.
Di seguito è riportato un esempio di lista negativa con quattro voci:
{ "entries": [ {"blockPhrase":"Oranges","matchOperator":"CONTAINS"}, {"blockPhrase":"bAd apples","matchOperator":"EXACT_MATCH"}, {"blockPhrase":"Cool as A Cucumber","matchOperator":"EXACT_MATCH"}, {"blockPhrase":"cherry pick","matchOperator":"CONTAINS"} ] }
Prima di importare una lista bloccata, verifica che siano necessari i controlli di accesso necessari sono impostate per l'accesso in modifica a Discovery Engine.
Le liste di blocco possono essere importate da dati JSON locali o da Cloud Storage. Per rimuovere una lista negativa da un data store, eliminala.
Importa una lista bloccata dai dati JSON locali
Per importare una lista negativa da un file JSON locale contenente la lista negativa, procedi nel seguente modo:
Crea la tua lista bloccata in un file JSON locale con il formato seguente. Assicurati che ogni voce della lista di blocco sia in una nuova riga senza interruzioni di riga.
{ "inlineSource": { "entries": [ { "blockPhrase":"TERM_1","matchOperator":"MATCH_OPERATOR_1" }, { "blockPhrase":"TERM_2","matchOperator":"MATCH_OPERATOR_2" } ] } }
Effettua una richiesta POST alla
suggestionDenyListEntries:import
, fornendo il nome del tuo JSON .curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ --data @DENYLIST_FILE \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataStores/DATA_STORE_ID/suggestionDenyListEntries:import"
- DENYLIST_FILE: il percorso locale del file JSON che contiene i termini della lista bloccata.
- PROJECT_ID: il numero o l'ID del tuo progetto Google Cloud.
- LOCATION: la posizione del datastore:
us
,eu
oppureglobal
. - DATA_STORE_ID: l'ID del datastore associato alla tua app.
Dopo aver importato la lista negativa, sono necessari 1-2 giorni per iniziare a filtrare i suggerimenti.
Importa una lista bloccata da Cloud Storage
Per importare una lista bloccata da un file JSON in Cloud Storage, segui questi passaggi:
Crea la lista di esclusione in un file JSON con il seguente formato e importalo in un bucket Cloud Storage. Assicurati che ogni voce della lista di blocco sia in una nuova riga senza interruzioni di riga.
{ "blockPhrase":"TERM_1","matchOperator":"MATCH_OPERATOR_1" } { "blockPhrase":"TERM_2","matchOperator":"MATCH_OPERATOR_2" }
Crea un file JSON locale contenente l'oggetto
gcsSource
. Utilizza le funzionalità di in modo da puntare alla posizione del file della lista Cloud Storage in un di sincronizzare la directory di una VM con un bucket.{ "gcsSource": { "inputUris": [ "DENYLIST_STORAGE_LOCATION" ] } }
- DENYLIST_STORAGE_LOCATION: la posizione della lista bloccata in
di archiviazione ideale in Cloud Storage. Puoi inserire un solo URI. L'URI deve essere inserito in questo formato:
gs://BUCKET/FILE_PATH
.
- DENYLIST_STORAGE_LOCATION: la posizione della lista bloccata in
di archiviazione ideale in Cloud Storage. Puoi inserire un solo URI. L'URI deve essere inserito in questo formato:
Effettua una richiesta POST alla
suggestionDenyListEntries:import
, incluso l'oggettogcsSource
.curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ --data @GCS_SOURCE_FILE \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataStores/DATA_STORE_ID/suggestionDenyListEntries:import"
- GCS_SOURCE_FILE: il percorso locale del file contenente
l'oggetto
gcsSource
che punta alla lista bloccata. - PROJECT_ID: il numero o l'ID del tuo progetto Google Cloud.
- LOCATION: la posizione del datastore:
us
,eu
oppureglobal
. - DATA_STORE_ID: l'ID del datastore associato alla tua app.
- GCS_SOURCE_FILE: il percorso locale del file contenente
l'oggetto
Dopo aver importato la lista negativa, sono necessari 1-2 giorni per iniziare a filtrare i suggerimenti.
Elimina definitivamente una lista bloccata
Per eliminare definitivamente una lista bloccata dal datastore:
Esegui una richiesta POST al metodo
suggestionDenyListEntries:purge
.curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataStores/DATA_STORE_ID/suggestionDenyListEntries:purge"
- PROJECT_ID: il numero o l'ID del tuo progetto Google Cloud.
- LOCATION: la posizione del datastore:
us
,eu
oppureglobal
. - DATA_STORE_ID: l'ID del datastore associati alla tua app.
Modello dei dati dei documenti avanzato
Vertex AI Agent Builder fornisce un modello di dati avanzato per il completamento automatico. In base ai documenti che importi, questo modello di dati genera suggerimenti di completamento automatico di alta qualità sfruttando i modelli linguistici di grandi dimensioni (LLM) di Google.
Questa funzionalità è sperimentale. Se sei interessato a utilizzare questa funzionalità, contatta il team degli account Google Cloud e richiedi di essere aggiunto alla lista consentita.
Questa funzionalità non è disponibile per la ricerca di servizi sanitari o nelle regioni multiple degli Stati Uniti e dell'UE.