Información general sobre Spanner AI

Spanner y sus funciones multimodelos se integran con los servicios de IA deGoogle Cloudy LangChain, un framework de código abierto, para ayudarte a crear aplicaciones de IA generativa. Puedes mejorar las aplicaciones con funciones como la búsqueda de similitudes, la generación aumentada por recuperación (RAG) y los gráficos de conocimiento. Spanner desarrolla esta función sobre su base de escalabilidad, disponibilidad y coherencia.

Usa Spanner con Vector Search para implementar la búsqueda de similitudes en datos de texto no estructurados. Spanner se integra con servicios como Vertex AI para invocar la generación de incrustaciones de vectores a partir de datos de texto sin estructurar. Estas incrustaciones son representaciones numéricas que reflejan el significado semántico del texto. Para encontrar elementos conceptualmente similares, se usan funciones de distancia de vectores para encontrar los vectores de inserción más similares a la inserción de la solicitud de búsqueda. Este proceso te permite crear funciones como recomendaciones de productos o de contenido.

Para empezar, genera y rellena inserciones de vectores de Vertex AI en bloque para los datos de texto que ya tengas. Para ello, puedes usar SQL y un modelo de inserciones de Vertex AI, como el modelo text-embedding, que se describe en la documentación de la API de inserciones de texto. Spanner admite el uso de vecinos más cercanos aproximados (ANN) y K vecinos más cercanos (KNN) con inserciones de vectores de consulta. ANN usa un índice vectorial para realizar búsquedas rápidas y escalables que devuelven resultados aproximados. KNN realiza una búsqueda exhaustiva que devuelve resultados más precisos, pero puede ser lenta en conjuntos de datos grandes. Puedes usar varias funciones de distancia de vectores para medir la similitud, como las siguientes:

  • Distancia del coseno: mide el coseno del ángulo entre dos vectores, lo que resulta útil para encontrar elementos con una orientación similar, independientemente de la magnitud.

  • Distancia euclidiana: mide la distancia en línea recta entre dos vectores.

  • Producto escalar: calcula el producto de las magnitudes de los vectores y el coseno del ángulo entre ellos. Esta puede ser la opción más eficiente desde el punto de vista computacional para los vectores normalizados.

Para obtener más información, consulta los siguientes temas:

Generar predicciones de aprendizaje automático con SQL

Puedes usar consultas de SQL en Spanner para invocar modelos de lenguaje extensos (LLMs) que se hayan desplegado en Vertex AI. El acceso directo a LLMs te permite ejecutar predicciones para tareas como el análisis de sentimiento, la clasificación de texto y la traducción en datos almacenados en Spanner.

Si usas la función ML.PREDICT (GoogleSQL) o la función spanner.ML_PREDICT_ROW (PostgreSQL), puedes generar predicciones de aprendizaje automático (AA) sin tener que mover tus datos ni escribir código de aplicación personalizado para interactuar con el LLM. De esta forma, se simplifica la arquitectura de tu aplicación y se acercan las funciones de aprendizaje automático a tus datos. Para obtener más información, consulta Generar predicciones de aprendizaje automático con SQL.

Usar Model Context Protocol (MCP) para conectarse a agentes LLM

Puedes conectar tu instancia de Spanner a IDEs que admitan Model Context Protocol (MCP). MCP es un protocolo abierto que puedes usar para conectar LLMs a tus datos en Spanner. Una vez que se haya establecido la conexión, tus agentes LLM podrán consultar e interactuar con tu instancia de Spanner. Para obtener más información, consulta Conectar tu IDE a Spanner.

Descubrir información valiosa con los gráficos de Spanner

Para casos prácticos de RAG más avanzados, Spanner Graph integra las funciones de base de datos gráfica con los puntos fuertes principales de Spanner. Spanner Graph te permite modelar, almacenar y consultar datos altamente conectados.

Integra Spanner Graph con LangChain para crear aplicaciones GraphRAG. Esta integración puede mejorar los RAG tradicionales. GraphRAG te permite crear aplicaciones que capturen relaciones complejas entre entidades, como un gráfico de conocimiento. La integración usa consultas de gráficos además de la búsqueda vectorial para registrar relaciones complejas e implícitas en sus datos. Si usas las consultas de gráficos y la búsqueda de vectores juntas, puedes obtener respuestas más precisas y relevantes de tu LLM que si usas la búsqueda de vectores por sí sola.

Para obtener más información, consulta Infraestructura de GraphRAG para la IA generativa con Vertex AI y Spanner Graph.

Desarrollar aplicaciones basadas en LLM con LangChain

Spanner proporciona varias clases para trabajar de forma programática con LangChain. LangChain es un framework de orquestación de LLMs que proporciona la estructura, las herramientas y los componentes necesarios para optimizar flujos de trabajo complejos de LLMs. Usa LangChain para crear aplicaciones de IA generativa y flujos de trabajo de RAG. Las clases de LangChain disponibles para Spanner son las siguientes:

  • SpannerVectorStore: Almacena y busca inserciones de vectores para habilitar la búsqueda de similitud en tu aplicación con la clase.

  • SpannerLoader: Carga datos de Spanner para usarlos en las inserciones o para proporcionar contexto específico a las cadenas de LLMs con la clase.

  • SpannerChatMessageHistory: Habilita las aplicaciones de IA conversacional almacenando el historial de conversaciones en una base de datos de Spanner.

Para obtener más información, consulta Crear aplicaciones basadas en LLMs con LangChain y Biblioteca de cliente de Spanner para LangChain.

Consulta casos prácticos

Usa las funciones de IA de Spanner para crear aplicaciones inteligentes para casos prácticos como los siguientes:

  • Motores de recomendaciones de comercio electrónico: genera inserciones de vectores para descripciones de productos con el fin de potenciar un motor de recomendaciones. Este motor puede sugerir artículos similares a los clientes, lo que mejora su experiencia de compra y aumenta las ventas. Para obtener más información, consulta Usar la IA generativa para obtener recomendaciones personalizadas en una aplicación de comercio electrónico.

  • Gestionar el historial de mensajes de chat: usa Spanner y LangChain para almacenar y recuperar el historial de conversaciones. Spanner almacena estos datos en una base de datos y proporciona la clase SpannerChatMessageHistory. Esta clase amplía una clase base de LangChain para guardar y recuperar mensajes de una base de datos. Para obtener más información, consulta Historial de mensajes de chat con Spanner.

  • Detección de fraude financiero: usa Spanner Graph para analizar las complejas relaciones entre usuarios, cuentas y transacciones, e identificar patrones y anomalías sospechosos que son difíciles de detectar con bases de datos relacionales tradicionales.

  • Vista de 360° de los clientes: con Spanner Graph, obtén una vista completa de los clientes monitorizando sus relaciones, preferencias e historiales de compras. De esta forma, se pueden ofrecer recomendaciones personalizadas, campañas de marketing segmentadas y experiencias de servicio de atención al cliente mejoradas.

  • Redes sociales: modeliza las actividades e interacciones de los usuarios con Spanner Graph para ofrecer recomendaciones de amigos y descubrir contenido en redes sociales.

Siguientes pasos

Para obtener más información sobre cómo implementar funciones de IA en Spanner, consulta los siguientes temas: