Elige un índice vectorial

Selecciona una versión de la documentación:

En esta página, se describen las estrategias de búsqueda de vectores de AlloyDB AI y se explica cuándo usar cada una de ellas. De forma predeterminada, AlloyDB usa la búsqueda de k-vecinos más cercanos (KNN) para encontrar vectores similares a una consulta. Los índices vectoriales implementan una estrategia de búsqueda llamada vecino más cercano aproximado (ANN). Cuando creas un índice de vectores, AlloyDB AI usa ANN, que proporciona un mejor rendimiento que KNN. Ten en cuenta que, cuando seleccionas un índice vectorial, debes equilibrar la latencia de la búsqueda y la recuperación.

La recuperación mide la eficacia con la que una búsqueda recupera todos los elementos pertinentes para una consulta determinada. Por ejemplo, imagina que tienes 100 incorporaciones, cada una de las cuales representa una entidad en tu base de datos. Consultas tus embeddings con un vector objetivo y lo limitas a 10 resultados. Una búsqueda de vectores de KNN encuentra los 10 vectores más cercanos exactos con un método de cálculo de fuerza bruta, lo que genera un 100% de recuperación. AlloyDB AI usa este método de forma predeterminada si no se crea ni se elige ningún índice de búsqueda de vectores. Cuando creas un índice de vectores en AlloyDB para PostgreSQL, por lo general, se usa ANN, que puede particionar vectores según la similitud para facilitar una recuperación más rápida. Como resultado, con el uso de ANN, es posible que los 10 vectores que se devolvieron en el ejemplo anterior no sean exactamente los 10 vectores más cercanos en distancia. Si solo 8 de los 10 vectores recuperados son los más cercanos en el espacio a tu vector de búsqueda, tu recuperación será del 80%.

La latencia de la búsqueda define la rapidez con la que se generan los resultados de la búsqueda. Por ejemplo, la latencia se calcula en función del tiempo que se dedica a una búsqueda para devolver los vectores después de que envías una consulta.

Elige tu estrategia de búsqueda

Cuando realices una búsqueda de vectores en AlloyDB, elige una de las siguientes estrategias de búsqueda:

Estrategia de búsqueda Descripción Casos de uso
K-vecinos más cercanos (KNN) Es un algoritmo que encuentra los k vecinos más cercanos a un punto de datos de consulta determinado. Cuando realizas una búsqueda de vectores sin crear un índice, se realiza una búsqueda de KNN de forma predeterminada.
  • Tu aplicación es muy sensible a la precisión y necesitas las coincidencias exactas más cercanas.
  • Tienes menos de 100,000 vectores.
Vecinos más cercanos aproximados (ANN) Es un algoritmo que encuentra aproximadamente los puntos de datos más cercanos. La ANN divide los datos existentes de los clientes en grupos pequeños según las similitudes.
  • Tu aplicación requiere una latencia baja.
  • Tienes más de 100,000 vectores.

Google recomienda que crees un índice de vectores para optimizar el rendimiento de tus búsquedas de vectores. Para obtener más información sobre cómo se usa el índice de ANN para las búsquedas de similitud, consulta Crea índices y consulta vectores con ScaNN.

¿Qué sigue?