La navigazione è una ricerca di navigazione senza query. La navigazione utilizza metodi di navigazione per visualizzare i risultati di ricerca che corrispondono alle categorie o ai filtri selezionati dall'utente finale. Se utilizzato in collaborazione con il coinvolgimento degli utenti, puoi offrire ai tuoi utenti una navigazione personalizzata. La navigazione personalizzata fornisce feed in tempo reale specifici per l'utente in base alla cronologia delle interazioni e alle funzionalità dei contenuti. Il suo scopo è ottimizzare i risultati di ricerca per gli indicatori chiave di rendimento definiti, rispettando al contempo i controlli strategici. Ad esempio, un sito web immobiliare può avere home page diverse per i suoi utenti di Londra, Regno Unito, e di Sydney, Australia; un sito web di shopping può offrire risultati personalizzati a seconda del profilo utente.
Questa pagina descrive come ottenere risultati di navigazione per i datastore di ricerca personalizzata e alcune best practice per configurare l'app di ricerca.
Informazioni sulla navigazione personalizzata
La navigazione personalizzata di Vertex AI Search utilizza reti neurali per classificare i documenti in base al coinvolgimento e alla conversione degli utenti previsti. Ad esempio, con la navigazione personalizzata, puoi mostrare voci classificate in un catalogo di hotel o articoli in un sito web e restituirli agli utenti in base alla probabilità prevista di clic o richieste.
Al suo interno, la navigazione personalizzata è un modello sofisticato che apprende le complesse relazioni tra i pattern di navigazione degli utenti, i contenuti e le funzionalità dei tuoi documenti e gli eventi di conversione degli utenti. Di seguito sono riportate alcune funzionalità importanti:
Ranking: il modello classifica gli elementi in base al rendimento previsto rispetto all'obiettivo definito, che è soggetto ai parametri di ricerca configurati, come filtri, ranking personalizzato e controlli di pubblicazione (ad esempio boost, promozione o sinonimi).
Addestramento e perfezionamento: dopo l'addestramento iniziale, il modello viene perfezionato continuamente utilizzando flussi di eventi utente in tempo reale. Il modello si adatta e migliora nel tempo.
Diversità: il modello apprende implicitamente la diversità perché registra segnali negativi di non interazione, come link ignorati, tempo trascorso su una pagina e tassi di salto.
Differenze tra navigazione e ricerca
La seguente tabella mostra le differenze tra ricerca e navigazione.
Funzionalità | Cerca | Sfoglia |
---|---|---|
Finalità | Trovare informazioni specifiche | Esplorare e scoprire contenuti |
Esempio | Ricerca di "migliori ristoranti coreani a Vancouver" su Ricerca Google | Ricerca di un ristorante in base alle categorie a cui potrebbe appartenere, ad esempio "Ristoranti > Coreano > Vancouver > 4 stelle e superiori" |
User Intent | In genere orientati agli obiettivi | Esplorativo |
Punto di partenza | Una query o una parola chiave in genere in una barra di ricerca | Un sito web o una piattaforma specifici in genere utilizzando un menu, breadcrumb, link o altri metodi di navigazione come i filtri |
Metodo | Inserimento di parole chiave o frasi e applicazione della configurazione di ricerca e pubblicazione | Ricerca con una query vuota, applicazione della configurazione di ricerca e pubblicazione |
Risultati | Un elenco di risultati pertinenti | Tutti i documenti nel datastore che corrispondono ai filtri |
Flusso di lavoro e best practice
La navigazione personalizzata è un servizio gestito da Google e Google gestisce i modelli di deep learning e le pipeline di dati sottostanti. Per ottenere il massimo da questo servizio, quando sviluppi la tua app di ricerca, le tue principali responsabilità tecniche includono quanto segue:
- Provisioning dei dati: raccogli e fornisci un datastore completo di documenti ed eventi utente.
- Definizione dell'obiettivo: specifica i KPI per l'ottimizzazione, ad esempio la percentuale di clic (CTR), le azioni di alto valore e le entrate per sessione con gli eventi utente forniti. Assicurati che i tipi di eventi utente che raccogli supportino gli obiettivi.
- Parametri di ricerca: definisci e configura i parametri di ricerca e i controlli di pubblicazione nella richiesta di ricerca. Ad esempio, intervalli di date per filtrare gli elenchi o gli articoli consentiti o controlli di boost per riordinare i blog in base alle loro valutazioni.
In un'app di ricerca di app AI, sfogliare significa cercare senza
query o con una query vuota. Per ottenere i risultati di navigazione, in un archivio
di dati di ricerca personalizzata, puoi chiamare il metodo
search
lasciando vuota la query.
In generale, ecco i passaggi per ottenere i migliori risultati per la navigazione personalizzata:
Disporre di dati corretti e coerenti:
- Timestamp accurato per ogni evento utente.
- ID utente coerenti in tutti gli eventi utente.
- ID documento corrispondenti tra gli eventi utente e il datastore. Se utilizzi una Sitemap, i relativi URL devono corrispondere a quelli degli eventi utente.
- Filtri per pubblicare i contenuti esatti nelle pagine che hai visitato. Per saperne di più, vedi Filtrare la ricerca sul sito web e Filtrare la ricerca personalizzata per dati strutturati e non strutturati.
Prepara e importa i documenti:
- Definisci lo schema con il maggior numero possibile di attributi. Più attributi ci sono, migliore è la personalizzazione.
- Se esegui la scansione dei tuoi siti web, attiva l'indicizzazione avanzata e arricchisci le tue pagine web con dati strutturati.
- Prepara i dati per l'importazione seguendo le istruzioni riportate in Preparare i dati per l'importazione.
- Crea un datastore di ricerca per importare i tuoi dati. In alternativa, crea e aggiorna documenti che possono gestire i dati da cercare o sfogliare.
- Se utilizzi le Sitemap per i dati del tuo sito web, mantienile per indicizzare le pagine web più aggiornate. In alternativa o in aggiunta, esegui un aggiornamento manuale per le pagine specifiche aggiornate di recente. Mantenere aggiornato l'indice produce risultati migliori.
Prepara e importa gli eventi utente:
- Prepara almeno 30 giorni di eventi utente per l'addestramento iniziale del modello. Puoi utilizzare gli eventi utente storici e/o gli eventi utente in tempo reale. Gli eventi in tempo reale producono risultati di personalizzazione migliori.
- Registra e condividi l'evento
search
(utilizzato per acquisire i dati di navigazione), l'eventoview-item
e l'eventoconversion
. - Tutti gli eventi utente devono includere quanto segue:
eventType
comesearch
per la ricerca e la navigazione,view-item
econversion
.userPseudoId
, che è un identificatore utente pseudonimizzato coerente.eventTime
, che è un timestamp ISO 8601 (UTC) per la registrazione dell'evento.documents.id
mostrati nell'ordine in cui vengono visualizzati dall'utente che corrispondono agli ID documento.searchInfo.searchQuery
per registrare la query di ricerca dell'utente.pageInfo.pageCategory
che aggiunge un contesto, ad esempio "HomepageCarousel", "Properties > VIC > Richmond".filter
che descrive la logica di filtro utilizzata per generare l'elenco delle impressioni. Questo valore viene spesso acquisito dal campopageCategory
o tramite la comprensione del sistema.
Per ulteriori informazioni, vedi
userEvents
.Abilita l'addestramento del modello e la pipeline del modello:
Dopo aver preparato i dati e raccolto gli eventi utente, contatta il tuo Customer Engineer (CE) di Google. Il CE può esaminare i tuoi dati e attivare il modello di personalizzazione per la tua app.
Visualizzare risultati di navigazione personalizzati
Aggiungi altri campi alla richiesta di ricerca, come filtri e aggiustamenti del ranking, ad esempio il boost o il ranking personalizzato.
Gestisci e mantieni aggiornati i tuoi dati:
Nel tempo, mantieni aggiornati i documenti nel datastore e continua a caricare nuovi eventi utente. In questo modo, il modello può accedere ai documenti e alle interazioni degli utenti più recenti per fornire risultati personalizzati.
Ottenere risultati di navigazione per un'app con dati di un sito web
Per utilizzare l'API per ottenere i risultati di navigazione per un'app con dati del sito web:
Trova l'ID app. Se hai già l'ID app, vai al passaggio successivo.
Nella Google Cloud console, vai alla pagina AI Applications.
Nella pagina App, trova il nome della tua app e recupera il relativo ID dalla colonna ID.
Chiama il metodo
engines.servingConfigs.search
con una query vuota o senza query come segue:REST
curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/collections/default_collection/engines/APP_ID/servingConfigs/default_search:search" \ -d '{ "servingConfig": "projects/PROJECT_ID/locations/global/collections/default_collection/engines/APP_ID/servingConfigs/default_search", "orderBy": "ORDER_BY", "params": { "searchType": "0" }, "filter": "FILTER", "boostSpec": "BOOST_SPEC", }'
Sostituisci quanto segue:
PROJECT_ID
: l'ID del tuo Google Cloud progetto.APP_ID
: l'ID dell'app Vertex AI Search per cui vuoi eseguire query.ORDER_BY
: facoltativo. L'ordine in cui sono disposti i risultati. L'attributo in base al quale ordinare deve avere un'interpretazione numerica, ad esempiodate
. Per saperne di più, consulta Ordinare i risultati della ricerca web.FILTER
: facoltativo, ma consigliato. Un campo di testo per filtrare la ricerca utilizzando un'espressione di filtro. Il valore predefinito è una stringa vuota. Per ulteriori informazioni sull'utilizzo del campofilter
, vedi Filtrare la ricerca generica per dati strutturati o non strutturati e Filtrare la ricerca sui siti web.BOOST_SPEC
: facoltativo. Una specifica per promuovere o nascondere i documenti. Valori:BOOST
: un numero in virgola mobile nell'intervallo [-1,1]. Quando il valore è negativo, i risultati vengono declassati (vengono visualizzati più in basso nei risultati). Quando il valore è positivo, i risultati vengono promossi (vengono visualizzati più in alto nei risultati).CONDITION
: un'espressione di filtro di testo per selezionare i documenti a cui viene applicato l'incremento. Il filtro deve restituire un valore booleano. Per scoprire di più sul boost per la ricerca strutturata, consulta Migliorare i risultati di ricerca.
Dovresti ricevere una risposta JSON simile alla seguente risposta troncata. La risposta contiene risultati di ricerca dettagliati elencati nell'ordine determinato dai campi impostati nella richiesta di ricerca.