Ricerca durante la digitazione

La moderna barra di ricerca per l'e-commerce è molto più di un semplice campo di input. Si tratta di un assistente interattivo e dinamico che guida gli utenti verso i prodotti giusti prima ancora che finiscano di inserire il testo. Questa esperienza di ricerca durante la digitazione (SAYT), che mostra suggerimenti per le query, brand popolari, categorie pertinenti e persino i risultati dei prodotti più importanti in tempo reale, aumenta il coinvolgimento degli utenti e la probabilità di conversione.

Sebbene Vertex AI Search for Commerce fornisca API distinte per il completamento automatico delle query e la ricerca di prodotti, lascia intenzionalmente aperta l'implementazione finale di un'esperienza utente SAYT.

Questa guida alla creazione con Vertex AI Search for Commerce esplora due pattern di progettazione principali per l'implementazione di un widget SAYT solido utilizzando le API Vertex AI Search for Commerce, descrivendo in dettaglio i compromessi di ogni approccio.

Comprendere i componenti principali

Per creare una funzionalità SAYT completa, devi comprendere le due API fondamentali fornite da Vertex AI Search for Commerce:

  1. API CompleteQuery: è il cervello dietro i suggerimenti di completamento automatico.

    • Funzione: per una determinata stringa di input, ad esempio lipst, restituisce un elenco di completamenti delle query suggeriti, tra cui rossetto e lucidalabbra, brand popolari associati e categorie pertinenti.
    • Costo: questa API è inclusa nei prezzi del pacchetto Vertex AI Search for Commerce.
    • Rendimento: è un'API ad alto throughput progettata per le risposte rapide e a bassa latenza richieste per un'esperienza di digitazione tasto per tasto. Sfrutta le funzionalità di apprendimento automatico, tra cui la correzione ortografica e i suggerimenti progettati per produrre risultati, tutti addestrati sugli eventi di ricerca giornalieri del tuo negozio.
  2. API Search:questo è il tuo motore principale di scoperta dei prodotti.

    • Funzione:per una determinata query, restituisce un elenco classificato di risultati di prodotto pertinenti.
    • Costo:si tratta di un'API a pagamento e il suo utilizzo influisce direttamente sui costi operativi.
    • Eventi: per l'addestramento del modello e l'analisi, ogni chiamata API Search deve essere idealmente associata a un evento di ricerca per monitorare il comportamento degli utenti e migliorare i modelli di pertinenza nel tempo.

Per creare l'esperienza SAYT, devi scrivere un'API wrapper o una logica frontend che chiami entrambe queste API e combini i loro risultati in un'unica interfaccia utente coesa.

Modello di implementazione 1: approccio diretto ma più costoso

Questo è il metodo più semplice da implementare. La logica prevede che per ogni pressione di tasto vengano effettuate chiamate parallele alle API CompleteQuery e Search.

Flow

Il flusso segue questo percorso sequenziale:

  1. Un utente inserisce un carattere, ad esempio l.
  2. La tua applicazione invia l all'API CompleteQuery.
  3. Contemporaneamente, la tua applicazione invia l all'API Search.
  4. I risultati vengono combinati e visualizzati.
  5. L'utente inserisce un altro carattere (l), rendendo la query li.
  6. La procedura si ripete per la nuova query li.

alt_text

Vantaggi

I vantaggi includono l'implementazione rapida, che ti consente di scrivere ed eseguire il deployment del log in modo rapido.

Svantaggi

  • Volume elevato di API Search: questo approccio aumenta notevolmente il numero di chiamate API Search. Una query come rossetto attiverebbe otto richieste di ricerca separate, con un conseguente aumento significativo del volume.
  • Costo maggiore: poiché l'API Search è un servizio a pagamento, questo volume elevato si traduce direttamente in costi operativi più elevati, rendendo difficile ottenere un ritorno sull'investimento (ROI) positivo.
  • Complessità della gestione degli eventi: ogni chiamata API Search deve essere registrata con un evento di ricerca corrispondente per un addestramento e una misurazione accurati del modello. L'elevato volume di chiamate rende difficile garantire l'acquisizione di ogni evento, il che potrebbe comportare la perdita di dati e analisi distorte.
  • Risultati di qualità potenzialmente inferiore: le ricerche di uno o due caratteri, ad esempio l, li, possono restituire risultati rumorosi o eccessivamente ampi, con conseguente esperienza iniziale meno pertinente.

Questo pattern ottimizza costi, prestazioni e pertinenza utilizzando l'API CompleteQuery per decidere in modo intelligente quando chiamare l'API Search.

Flow

Il flusso segue questo percorso sequenziale:

  1. Un utente inserisce una query di testo parziale, ad esempio labbra.
  2. La tua applicazione invia lip all'API CompleteQuery.
  3. L'API restituisce un elenco di suggerimenti, con rossetto probabilmente come primo risultato.
  4. La tua applicazione prende il primo suggerimento (rossetto) ed effettua una singola chiamata all'API Search con questo termine.
  5. Vengono visualizzati i suggerimenti di completamento automatico e i risultati dei prodotti per rossetto.
  6. Man mano che l'utente continua a digitare lips, lipst, ..., puoi aggiungere una logica per effettuare una nuova chiamata di ricerca solo se il primo suggerimento di completamento automatico cambia.

Vantaggi

  • Riduzione significativa dei costi: riducendo drasticamente il numero di chiamate API Search, questo metodo mantiene i costi sotto controllo.
  • Volume controllato di API ed eventi: i volumi di API ed eventi sono gestibili e prevedibili, garantendo dati più affidabili per l'addestramento e l'analisi dei modelli.
  • Maggiore pertinenza: stai cercando termini più completi e probabili, il che fornisce risultati di prodotto di qualità superiore nel widget Digita e trova.
  • ROI migliore: costi inferiori e una migliore esperienza utente contribuiscono a un ritorno sull'investimento più elevato.

alt_text

Gestione dei casi limite

Questo approccio è superiore, ma richiede la gestione di alcuni casi limite:

  • Nessun suggerimento: se l'API CompleteQuery non restituisce suggerimenti, la logica deve ripiegare sulla chiamata dell'API Search con l'input non elaborato dell'utente.
  • Query parziale e query suggerita: in rari casi, un utente potrebbe voler visualizzare i risultati per il termine parziale, ad esempio occhio anziché il suggerimento principale, ombretto. Sebbene si tratti di un piccolo compromesso, l'approccio ottimizzato dà la priorità all'intenzione più probabile dell'utente.

Misurare il successo con gli ID esperimento

Indipendentemente dall'implementazione scelta, è importante misurare il rendimento del widget SAYT indipendentemente dalla pagina principale dei risultati di ricerca. Se utilizzi lo stesso monitoraggio per entrambi, non potrai determinare se la funzionalità SAYT sta effettivamente migliorando i tassi di clickthrough e le conversioni.

La soluzione per misurare i tassi di conversione e clickthrough del widget SAYT consiste nell'utilizzare experimentIds distinti negli eventi di ricerca che differenziano queste metriche da quelle degli eventi di ricerca principali.

  • Eventi SAYT: assegna un ID specifico, ad esempio "experimentId": "sayt-widget", a tutti gli eventi di ricerca provenienti dalla funzionalità di ricerca in tempo reale.
  • Eventi di ricerca principali: utilizza un ID diverso (o nessun ID) per le ricerche avviate quando un utente preme Invio o fa clic su Cerca per andare alla pagina principale dei risultati di ricerca.

Se segmenti gli eventi in questo modo, puoi utilizzare i dashboard di analisi nella console Vertex AI per filtrare e confrontare il rendimento del widget SAYT con l'esperienza di ricerca standard, ottenendo informazioni chiare e utili.

Conclusione

Vertex AI Search per il commercio fornisce i componenti per creare un'esperienza di ricerca durante la digitazione. Agendo come l'architetto che progetta l'interazione tra le API CompleteQuery e Search, puoi creare una funzionalità di ricerca che fa da ponte tra l'esperienza utente e il rendimento. Per la maggior parte dei casi d'uso, l'approccio ottimizzato offre un'esperienza pertinente per l'utente, evitando operazioni che richiedono molte risorse di calcolo.