Vector Search de Vertex AI permite a los usuarios buscar elementos similares desde el punto de vista semántico con embeddings de vectores. Con el flujo de trabajo de Spanner a la Búsqueda de vectores de Vertex AI, puedes integrar tu base de datos de Spanner con la Búsqueda de vectores para realizar una búsqueda de similitud de vectores en tus datos de Spanner.
En el siguiente diagrama, se muestra el flujo de trabajo de la aplicación de extremo a extremo para habilitar y usar la Búsqueda de vectores en tus datos de Spanner:
El flujo de trabajo general es el siguiente:
Generar y almacenar embeddings de vectores
Puedes generar embeddings de vectores de tus datos y, luego, almacenarlos y administrarlos en Spanner junto con tus datos operativos. Puedes generar embeddings con la función
ML.PREDICT
de SQL de Spanner para acceder al modelo de incorporación de texto de Vertex AI o usar otros modelos de incorporación implementados en Vertex AI.Sincroniza los embeddings con la Búsqueda de vectores.
Usa el flujo de trabajo de Spanner a la Búsqueda de vectores de Vertex AI, que se implementa con Workflows para exportar y subir incorporaciones a un índice de Vector Search. Puedes usar Cloud Scheduler para programar periódicamente este flujo de trabajo y mantener tu índice de la Búsqueda de vectores actualizado con los cambios más recientes en tus incorporaciones en Spanner.
Realiza una búsqueda de similitud de vectores con tu índice de Vector Search.
Consultar 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 a través del intercambio de tráfico entre VPCs.
Ejemplo de caso de uso
Un caso de uso ilustrativo de Vector Search es un minorista en línea que tiene un inventario de cientos de miles de artículos. En este caso, eres desarrollador de una tienda en línea y deseas usar la búsqueda de similitud de vectores en tu catálogo de productos en Spanner para ayudar a tus clientes a encontrar productos relevantes según sus búsquedas.
Sigue los pasos 1 y 2 que se presentan en el flujo de trabajo general para generar embeddings de vectores para tu catálogo de productos y sincronizar estos embeddings con la Búsqueda de Vectores.
Ahora imagina que un cliente que navega por tu aplicación realiza una búsqueda como "los mejores shorts deportivos de secado rápido que puedo usar en el agua". Cuando tu aplicación recibe esta búsqueda, debes generar un embedding de la solicitud para esta búsqueda con la función de SQL ML.PREDICT
de Spanner. Asegúrate de usar el mismo modelo de incorporación que se usó para generar las incorporaciones de tu catálogo de productos.
A continuación, consulta el índice de Vector Search para obtener los IDs de los productos cuyos embeddings correspondientes sean similares al embedding de la solicitud generado a partir de la solicitud de búsqueda de tu cliente. El índice de búsqueda puede recomendar IDs de productos para artículos similares semánticamente, como shorts de wakeboard, ropa de surf y trajes de baño.
Después de que Vector Search devuelva estos IDs de productos similares, puedes consultar Spanner para obtener las descripciones, el recuento de inventario, el precio y otros metadatos relevantes de los productos, y mostrárselos a tu cliente.
También puedes usar la IA generativa para procesar los resultados que devuelve Spanner antes de mostrárselos a tu cliente. Por ejemplo, puedes usar los grandes modelos 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?
- Aprende a generar embeddings con Spanner.
- Obtén más información sobre Multitool de Meet AI: Vector Embeddings
- Obtén más información sobre el aprendizaje automático y las incorporaciones en nuestro curso intensivo sobre incorporaciones.
- Para obtener más información sobre el flujo de trabajo de Spanner a la Búsqueda de vectores de Vertex AI, consulta el repositorio de GitHub.
- Obtén más información sobre el paquete de código abierto spanner-analytics, que facilita las operaciones comunes de análisis de datos en Python y que incluye integraciones con notebooks de Jupyter.