Exporta incorporaciones de Spanner a Vector Search de Vertex AI

Vertex AI Vector Search permite a los usuarios buscar elementos semánticos similares mediante incorporaciones vectoriales. Mediante el flujo de trabajo de Spanner a Vertex AI Vector Search, puedes integrar la base de datos de Spanner a la búsqueda de vectores para realizar una búsqueda de similitud vectorial en tus datos de Spanner.

En el siguiente diagrama, se muestra el flujo de trabajo de extremo a extremo de la aplicación sobre cómo puedes habilitar y usar la búsqueda de vectores en tus datos de Spanner:

Flujo de trabajo de Spanner a Vector Search

El flujo de trabajo general es el siguiente:

  1. Genera y almacena incorporaciones vectoriales.

    Puedes generar incorporaciones vectoriales de tus datos y, luego, almacenarlas y administrarlas en Spanner con tus datos operativos. Puedes generar incorporaciones con la función SQL ML.PREDICT de Spanner para acceder al modelo textembedding-gecko de Vertex AI o usar otros modelos de incorporación implementados en Vertex AI.

  2. Sincronización de incorporaciones con Vector Search.

    Usa el flujo de trabajo de Spanner a Vertex AI Vector Search, que se implementa mediante Workflows para exportar y subir incorporaciones a un índice de Vector Search. Puedes usar Cloud Scheduler para programar este flujo de trabajo de forma periódica y mantener el índice de la Búsqueda de vectores actualizado con los cambios más recientes en tus incorporaciones en Spanner.

  3. Realizar una búsqueda de similitud vectorial con el índice de búsqueda de vectores

    Consulta el índice de la Búsqueda de vectores para buscar y encontrar resultados de elementos semánticamente similares. Puedes realizar consultas con un extremo público o mediante el intercambio de tráfico de VPC.

Ejemplo de caso de uso

Un caso de uso ilustrativo para Vector Search es un minorista en línea que tiene un inventario de cientos de miles de artículos. En esta situación, eres desarrollador de un minorista en línea y te gustaría usar la búsqueda de similitud vectorial en tu catálogo de productos en Spanner para ayudar a los clientes a encontrar productos relevantes en función de sus búsquedas.

Sigue los pasos 1 y 2 presentados en el flujo de trabajo general a fin de generar incorporaciones vectoriales para tu catálogo de productos y sincronizar estas incorporaciones con la búsqueda de vectores.

Ahora imagina que un cliente que navega por tu aplicación realiza una búsqueda como “mejores pantalones cortos deportivos de secado rápido que puedo usar en el agua”. Cuando la aplicación recibe esta consulta, debes generar una incorporación de solicitud para esta solicitud de búsqueda con la función de SQL ML.PREDICT de Spanner. Asegúrate de usar el mismo modelo de incorporación que usaste para generar las incorporaciones para tu catálogo de productos.

A continuación, consulta el índice de la Búsqueda de vectores para obtener IDs de productos cuyas incorporaciones correspondientes sean similares a la incorporación de solicitud generada a partir de la solicitud de búsqueda de tu cliente. Es posible que el índice de búsqueda recomiende ID de productos para artículos con una semántica similar, como pantalones cortos para wakeboard, ropa de surf y baúles de natación.

Después de que la búsqueda de vectores muestre estos IDs de productos similares, puedes consultar a Spanner para obtener las descripciones, el recuento de inventario, el precio y otros metadatos de los productos que sean relevantes, y mostrárselos a tu cliente.

También puedes usar la IA generativa para procesar los resultados que muestra Spanner antes de mostrarlos al cliente. Por ejemplo, puedes usar modelos grandes de IA generativa de Google para generar un resumen conciso de los productos recomendados. Para obtener más información, consulta este instructivo sobre cómo usar la IA generativa para obtener recomendaciones personalizadas en una aplicación de comercio electrónico.

¿Qué sigue?