Panoramica di Vertex AI Vector Search

La ricerca vettoriale è basata sulla tecnologia di ricerca vettoriale sviluppata dalla ricerca di Google. Con Vector Search puoi sfruttare la stessa infrastruttura che fornisce la base per prodotti Google come Ricerca Google, YouTube e Play.

Introduzione

La ricerca vettoriale è in grado di eseguire ricerche da miliardi di elementi semanticamente simili o semanticamente correlati. Un servizio di corrispondenza di somiglianze vettoriali ha molti casi d'uso come l'implementazione di motori per suggerimenti, motori di ricerca, chatbot e classificazione del testo.

Query sull'abbigliamento

Un possibile caso d'uso di Vector Search è un rivenditore online con un inventario di centinaia di migliaia di articoli di abbigliamento. In questo scenario, l'API di incorporamento multimodale potrebbe aiutare a creare incorporamenti di questi elementi e utilizzare Vector Search per abbinarli a query di testo alle immagini più semanticamente simili. Ad esempio, potrebbero cercare "abito estivo giallo" e poi Vector Search restituisce e mostra gli articoli più simili. Vector Search può eseguire ricerche su larga scala, con un elevato numero di query al secondo (QPS), elevato richiamo, bassa latenza ed efficienza in termini di costi.

L'uso degli incorporamenti non è limitato a parole o testo. Puoi generare incorporamenti semantici per molti tipi di dati, tra cui immagini, audio, video e preferenze dell'utente. Per generare un incorporamento multimodale con Vertex AI, consulta Ottenere incorporamenti multimodali.

Come utilizzare Vector Search per la corrispondenza semantica

La corrispondenza semantica può essere semplificata in pochi passaggi. In primo luogo devi generare rappresentazioni di incorporamento di molti elementi (al di fuori di Vector Search). In secondo luogo, carichi gli incorporamenti su Google Cloud e poi colleghi i tuoi dati a Vector Search. Dopo aver aggiunto gli incorporamenti a Vector Search, puoi creare un indice per eseguire query e ottenere suggerimenti o risultati.

Genera un incorporamento

Genera un incorporamento per il tuo set di dati. Ciò comporta la pre-elaborazione dei dati in modo da rendere efficiente la ricerca del vicino più prossimo approssimato (ANN). Puoi farlo al di fuori di Vertex AI oppure puoi utilizzare l'IA generativa su Vertex AI per creare un incorporamento. Con l'IA generativa su Vertex AI, puoi creare incorporamenti sia di testo che multimodali.

Aggiungi il tuo incorporamento in Cloud Storage

Carica il tuo incorporamento in Cloud Storage in modo da poterlo chiamare dal servizio Vector Search.

Carica su Vector Search

Collega i tuoi incorporamenti a Vector Search per eseguire la ricerca del vicino più prossimo. Puoi creare un indice dall'incorporamento, di cui puoi eseguire il deployment su un endpoint indice per eseguire una query. La query restituisce i vicini più prossimi approssimativi. Per creare un indice, consulta Gestire gli indici. Per eseguire il deployment dell'indice in un endpoint, consulta Eseguire il deployment e gestire gli endpoint indice.

Valutare i risultati

Dopo aver ottenuto i risultati approssimativi del vicino più prossimo, puoi valutarli per vedere quanto soddisfano le tue esigenze. Se i risultati non sono sufficientemente precisi, puoi regolare i parametri dell'algoritmo o abilitare la scalabilità per supportare più query al secondo. Per farlo, devi aggiornare il file di configurazione, che configura l'indice. Per saperne di più, consulta Configurare i parametri indice.

Terminologia della ricerca vettoriale

Questo elenco contiene alcuni termini importanti che è necessario comprendere per utilizzare Vector Search:

  • Vettore: un vettore è un elenco di valori in virgola mobile con magnitudo e direzione. Può essere utilizzato per rappresentare qualsiasi tipo di dati, come numeri, punti nello spazio e direzioni.
  • Incorporamento: un incorporamento è un tipo di vettore utilizzato per rappresentare i dati in un modo che ne acquisisce il significato semantico. Gli incorporamenti vengono in genere creati utilizzando tecniche di machine learning e spesso sono utilizzati nell'elaborazione del linguaggio naturale (NLP) e in altre applicazioni di machine learning.
    • Incorporamenti densi: gli incorporamenti densi rappresentano il significato semantico del testo, utilizzando array che contengono principalmente valori diversi da zero. Con gli incorporamenti densi, risultati di ricerca simili possono essere restituiti in base alla similitudine semantica.
    • Incorporamenti sparsi: gli incorporamenti sparsi rappresentano la sintassi del testo, utilizzando array ad alta dimensionalità che contengono pochissimi valori diversi da zero rispetto agli incorporamenti densi. Per le ricerche di parole chiave si utilizzano spesso gli incorporamenti sparsi.
  • Ricerca ibrida: la ricerca ibrida utilizza incorporamenti sia densi che sparsi, che consentono di eseguire ricerche in base a una combinazione di ricerca per parole chiave e ricerca semantica. La ricerca vettoriale supporta la ricerca basata su incorporamenti densi. In anteprima pubblica, Vector Search supporta gli incorporamenti sparsi e la ricerca ibrida.
  • Indice: una raccolta di vettori distribuiti insieme per la ricerca di analogie. I vettori possono essere aggiunti o rimossi da un indice. Le query di ricerca di analogie vengono inviate a un indice specifico e cercano i vettori al suo interno.
  • Dati empirici reali: un termine che si riferisce alla verifica dell'accuratezza del machine learning rispetto al mondo reale, come un set di dati di dati empirici reali.
  • Richiamo: la percentuale di vicini più prossimi restituiti dall'indice che sono effettivamente vicini più prossimi veri. Ad esempio, se una query sul vicino più prossimo per 20 vicini più prossimi ha restituito 19 dei vicini più prossimi basati su dati empirici reali, il richiamo sarà 19/20x100 = 95%.

  • Limita: funzionalità che limita le ricerche a un sottoinsieme dell'indice mediante le regole booleane. La limitazione è nota anche come "filtro". Con la ricerca vettoriale, puoi utilizzare i filtri numerici e di attributi di testo.

Passaggi successivi