Esportare gli embedding da Spanner a Vertex AI Vector Search

Vertex AI Vector Search consente agli utenti di cercare elementi semanticamente simili utilizzando gli embedding vettoriali. Utilizzando il flusso di lavoro Spanner to Vertex AI Vector Search, puoi integrare il tuo database Spanner con Vector Search per eseguire una ricerca di somiglianza vettoriale sui tuoi dati Spanner.

Il seguente diagramma mostra il flusso di lavoro dell'applicazione end-to-end su come attivare e utilizzare la ricerca di vettori nei tuoi dati Spanner:

Flusso di lavoro da Spanner a Vector Search.

Il flusso di lavoro generale è il seguente:

  1. Genera e memorizza gli incorporamenti vettoriali.

    Puoi generare incorporamenti vettoriali dei tuoi dati, quindi archiviarli e gestirli in Spanner con i tuoi dati operativi. Puoi generare embedding con la funzione SQL ML.PREDICT di Spanner per accedere al modello textembedding-gecko di Vertex AI o utilizzare altri modelli di embedding di cui è stato eseguito il deployment in Vertex AI.

  2. Sincronizza gli embedding con la ricerca vettoriale.

    Utilizza il flusso di lavoro Spanner to Vertex AI Vector Search, che viene eseguito utilizzando Workflows per esportare e caricare gli incorporamenti in un indice di ricerca vettoriale. Puoi utilizzare Cloud Scheduler per pianificare periodicamente questo flusso di lavoro in modo da mantenere aggiornato l'indice di ricerca di vettori con le ultime modifiche agli embedding in Spanner.

  3. Esegui la ricerca di somiglianza vettoriale utilizzando l'indice Vector Search.

    Esegui query sull'indice di Vector Search per cercare e trovare risultati per elementi semanticamente simili. Puoi eseguire query utilizzando un endpoint pubblico o tramite il peering VPC.

Caso d'uso di esempio

Un caso d'uso illustrativo di Ricerca vettoriale è un rivenditore online con un inventario di centinaia di migliaia di articoli. In questo scenario, sei uno sviluppatore per un rivenditore online e vorresti utilizzare la ricerca di somiglianza di vettori nel tuo catalogo di prodotti in Spanner per aiutare i tuoi clienti a trovare prodotti pertinenti in base alle loro query di ricerca.

Segui i passaggi 1 e 2 descritti nel flusso di lavoro generale per generare gli incorporamenti vettoriali per il tuo catalogo di prodotti e sincronizzarli con la ricerca vettoriale.

Ora immagina che un cliente che naviga nella tua applicazione esegua una ricerca come "i migliori pantaloncini sportivi ad asciugatura rapida che posso indossare in acqua". Quando la tua applicazione riceve questa query, devi generare un'evidenziazione della richiesta per questa richiesta di ricerca utilizzando la funzione SQL ML.PREDICT di Spanner. Assicurati di utilizzare lo stesso modello di embedding utilizzato per generare gli embedding per il tuo catalogo di prodotti.

A questo punto, esegui una query sull'indice di ricerca vettoriale per trovare gli ID prodotto i cui incorporamenti corrispondenti sono simili all'incorporamento della richiesta generato dalla richiesta di ricerca del tuo cliente. L'indice di ricerca potrebbe consigliare ID prodotto per articoli semanticamente simili, come pantaloncini da wakeboard, abbigliamento da surf e slip da bagno.

Dopo che la ricerca vettoriale ha restituito questi ID prodotto simili, puoi eseguire query su Spanner per recuperare le descrizioni, il numero di inventario, il prezzo e altri metadati pertinenti dei prodotti e mostrarli al cliente.

Puoi anche utilizzare l'IA generativa per elaborare i risultati restituiti da Spanner prima di mostrarli al cliente. Ad esempio, potresti utilizzare i grandi modelli di IA generativa di Google per generare un riepilogo conciso dei prodotti consigliati. Per ulteriori informazioni, consulta questo tutorial su come utilizzare l'IA generativa per ricevere consigli personalizzati in un'applicazione di e-commerce.

Passaggi successivi