Elige un índice vectorial en AlloyDB AI

En esta página, se describen las estrategias de búsqueda de vectores de IA de AlloyDB y se explica cuándo usar cada una. De forma predeterminada, AlloyDB usa la búsqueda de k-vecinos más cercanos (KNN) para encontrar vectores que sean 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, la IA de AlloyDB usa ANN, que proporciona un mejor rendimiento que KNN. Ten en cuenta que, cuando seleccionas un índice vectorial, debes equilibrar la latencia de la consulta y el recuerdo.

La recuperación mide la eficacia con la que una búsqueda recupera todos los elementos relevantes 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 incorporaciones 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 elige un índice de búsqueda de vectores. Cuando creas un índice vectorial en AlloyDB para PostgreSQL, por lo general, se usa ANN, que podría particionar los vectores según la similitud para facilitar una recuperación más rápida. Como resultado, con el NNA, es posible que los 10 vectores que se muestran 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 consulta, el porcentaje de recuperación es del 80%.

La latencia de la consulta 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 dedicado a una búsqueda para mostrar 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) Un algoritmo que encuentra los datos de los k vecinos más cercanos a un dato 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 más cercanas exactas.
  • Tienes menos de 100,000 vectores.
Vecino más cercano aproximado (ANN) Un algoritmo que encuentra aproximadamente los datos más cercanos. El NNA divide los datos de clientes existentes 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 consultas de búsqueda de vectores. Para obtener más información sobre cómo se usa el índice de ANN en las búsquedas de similitud, consulta Crea índices y consulta vectores con ScaNN.

¿Qué sigue?