Condividi tramite


Ricerca vettoriale in Azure Cosmos DB

La ricerca vettoriale è un metodo che consente di trovare elementi simili in base alle caratteristiche dei dati anziché in base alle corrispondenze esatte in un campo di proprietà. Questa tecnica è utile nelle applicazioni come la ricerca di testi simili o di immagini correlate, la creazione di elementi consigliati o anche il rilevamento di anomalie. Funziona prendendo gli Incorporamenti vettoriali dei dati e delle query e quindi misurando la distanza tra i vettori di dati e il vettore di query. I vettori di dati più vicini al vettore di query sono quelli che risultano più simili dal punto di vista semantico.

Esempi

Questa visualizzazione interattiva mostra alcuni esempi di vicinanza e distanza tra vettori.

Algoritmi

Due tipi principali di algoritmi di ricerca vettoriale sono k-nearest neighbors (kNN) e approximate nearest neighbor (ANN). Tra kNN e ANN, quest'ultimo offre un equilibrio tra accuratezza ed efficienza, rendendolo più adatto ad applicazioni su larga scala. Alcuni algoritmi ANN noti includono IVF (Inverted File), Hierarchical Navigable Small World (HNSW) e DiskANN all'avanguardia.

L'uso di una funzionalità di ricerca vettoriale integrata in un database completo (anziché un database vettoriale puro) offre un modo efficiente per archiviare, indicizzare e cercare dati vettoriali ad alta dimensionalità, in modo diretto e insieme ad altri dati dell'applicazione. Tale approccio elimina la necessità di migrare i dati a database vettoriali alternativi più costosi e offre una perfetta integrazione delle applicazioni basate su IA.