La Búsqueda de vectores de Agent Platform permite a los usuarios buscar elementos semánticamente similares con embeddings de vectores. Con el flujo de trabajo de Spanner a la Búsqueda de vectores de Agent Platform , 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:
Genera y almacena embeddings de vectores.
Puedes generar embeddings de vectores de tus datos y, luego, almacenarlos y administrarlos en Spanner con tus datos operativos. Puedes generar embeddings con la función
ML.PREDICTSQL de Spanner para acceder al modelo de embedding de texto de Agent Platform o usar otros modelos de embedding implementados en Agent Platform.Sincroniza los embeddings con la Búsqueda de vectores.
Usa el flujo de trabajo de Spanner a la Búsqueda de vectores de Agent Platform, que se implementa con Workflows para exportar y subir embeddings a un índice de la Búsqueda de vectores. Puedes usar Cloud Scheduler para programar este flujo de trabajo de forma periódica y mantener actualizado el índice de la Búsqueda de vectores con los cambios más recientes en tus embeddings de Spanner.
Realiza una búsqueda de similitud de vectores con tu índice de la 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 a través del intercambio de tráfico de VPC.
Ejemplo de caso de uso
Un caso de uso ilustrativo para la Búsqueda de vectores 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 de vectores en tu catálogo de productos en Spanner para ayudar a tus clientes a encontrar productos relevantes según sus consultas de búsqueda.
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 consulta, debes generar un embedding de solicitud para
esta solicitud de búsqueda con la función ML.PREDICT
de SQL de Spanner. Asegúrate de usar el mismo modelo de embedding que se usó para generar los embeddings de tu catálogo de productos.
A continuación, consulta el índice de la Búsqueda de vectores para obtener los IDs de productos cuyos embeddings correspondientes sean similares al embedding de solicitud generado a partir de la solicitud de búsqueda de tu cliente. El índice de búsqueda podría recomendar IDs de productos para elementos semánticamente similares, como shorts de wakeboard, ropa de surf y trajes de baño.
Después de que la Búsqueda de vectores muestre 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 IA generativa para procesar los resultados que muestra 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 la multitool de IA: Embeddings de vectores
- Obtén más información sobre el aprendizaje automático y los embeddings en nuestro curso intensivo sobre embeddings.
- Para obtener más información sobre el flujo de trabajo de Spanner a la Búsqueda de vectores de Agent Platform, 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 Jupyter Notebooks.