Introducción a la búsqueda vectorial

Para enviar comentarios o solicitar asistencia para esta función, envía un correo electrónico a bq-vector-search@google.com.

En este documento, se proporciona una descripción general de la búsqueda vectorial en BigQuery. La búsqueda vectorial te permite buscar incorporaciones para identificar entidades semánticamente similares.

Las incorporaciones son vectores numéricos de alta dimensión que representan una entidad determinada, como un fragmento de texto o un archivo de audio. Los modelos de aprendizaje automático (AA) usan incorporaciones para codificar la semántica de esas entidades a fin de facilitar el razonamiento y la comparación. Por ejemplo, una operación común en los modelos de agrupamiento en clústeres, clasificación y recomendación es medir la distancia entre vectores en un espacio de incorporaciones para encontrar elementos que sean más semánticamente similares.

Para realizar una búsqueda vectorial, usa la función VECTOR_SEARCH y, de forma opcional, un índice vectorial. Cuando se usa un índice vectorial, VECTOR_SEARCH usa la técnica de búsqueda vecino más cercano aproximado para ayudar a mejorar el rendimiento de la búsqueda vectorial, con la compensación de reducir la recuperación y mostrar resultados más aproximados. La fuerza bruta se usa para mostrar resultados exactos cuando un índice vectorial no está disponible, y puedes optar por usar la fuerza bruta para obtener resultados exactos, incluso cuando un índice vectorial está disponible.

Precios

La sentencia CREATE VECTOR INDEX y la función VECTOR_SEARCH usan los precios de procesamiento de BigQuery. Para la declaración CREATE VECTOR INDEX, solo la columna indexada se considera en los bytes procesados.

No se aplican cargos por el procesamiento necesario para compilar y actualizar tus índices vectoriales cuando el tamaño total de los datos de tablas indexadas en tu organización es inferior al límite de 20 TB. A fin de admitir la indexación más allá de este límite, debes proporcionar tu propia reserva para controlar los trabajos de administración de índices. Los índices vectoriales generan costos de almacenamiento cuando están activos. Puedes encontrar el tamaño del almacenamiento de índices en la vista INFORMATION_SCHEMA.VECTOR_INDEXES. Si el índice vectorial aún no tiene una cobertura del 100%, se te cobra por todo el almacenamiento de índices que se informa en la vista INFORMATION_SCHEMA.VECTOR_INDEXES.

Cuotas y límites

Para obtener más información, consulta Límites de los índices vectoriales.

Limitaciones

  • BigQuery BI Engine no acelera las consultas que contienen la función VECTOR_SEARCH.
  • Las reglas de administración y seguridad de los datos de BigQuery se aplican al uso de VECTOR_SEARCH. Para obtener más información, consulta la sección Limitaciones en VECTOR_SEARCH. Estas reglas no se aplican a la generación de índices vectoriales.

Problemas conocidos

Para algunas consultas de búsqueda vectorial emitidas desde un proyecto que está en una reserva, no se puede usar el índice vectorial. Hasta que una corrección esté disponible, comunícate con bq-vector-search@google.com si necesitas ayuda con este problema.

¿Qué sigue?

  • Obtén más información sobre cómo crear un índice vectorial.
  • Prueba el instructivo Busca incorporaciones con búsqueda vectorial para aprender a crear un índice vectorial y, luego, realiza una búsqueda vectorial para incorporaciones con y sin el índice.
  • Prueba el instructivo Genera y usa incorporaciones de texto para aprender a hacer las siguientes tareas:

    • Generar incorporaciones de texto.
    • Crear un índice vectorial en las incorporaciones.
    • Realizar una búsqueda vectorial con las incorporaciones para buscar texto similar.
    • Realizar la generación de aumento de recuperación (RAG) con los resultados de la búsqueda vectorial para aumentar la entrada de instrucciones y mejorar los resultados.