En esta página, se proporciona una descripción general de la integración de Vertex AI con Spanner. La integración de Spanner Vertex AI funciona con bases de datos de GoogleSQL y PostgreSQL.
La integración de Vertex AI en Spanner te ayuda a acceder a los modelos de AA de clasificación y regresión alojados en Vertex AI a través de las interfaces de GoogleSQL y PostgreSQL. Esto ayuda a integrar sin problemas la funcionalidad de publicación de predicciones de AA con las operaciones generales de acceso a datos de Spanner que se realizan con consultas de DQL/DML.
Beneficios de la integración de Vertex AI en Spanner
Generar predicciones de AA con la integración de Vertex AI en Spanner ofrece varios beneficios en comparación con el enfoque en el que el acceso a los datos de Spanner y el acceso al extremo de predicción de Vertex AI se realizan por separado:
- Rendimiento:
- Mejor latencia: La integración de Vertex AI en Spanner que se comunica directamente con el servicio de Vertex AI elimina los viajes de ida y vuelta adicionales entre un nodo de procesamiento que ejecuta un cliente de Spanner y el servicio de Vertex AI.
- Mejor capacidad de procesamiento y paralelismo: La integración de Vertex AI en Spanner se ejecuta sobre la infraestructura de procesamiento de consultas distribuidas de Spanner, que admite la ejecución de consultas altamente paralelizable.
- Experiencia del usuario:
- La capacidad de usar una interfaz SQL única, simple, coherente y familiar para facilitar tanto la transformación de datos como las situaciones de entrega de AA a nivel de la escala de Spanner reduce la barrera de entrada del AA y permite una experiencia del usuario mucho más fluida.
- Costos:
- La integración de Spanner Vertex AI usa la capacidad de procesamiento de Spanner para combinar los resultados de los cálculos de AA y la ejecución de consulta en SQL, lo que elimina la necesidad de aprovisionar un procesamiento adicional (por ejemplo, en Compute Engine o Google Kubernetes Engine) para ello.
¿Cómo funciona la integración de Vertex AI con Spanner?
La integración de Vertex AI en Spanner no aloja modelos de AA, sino que se basa en la infraestructura del servicio de Vertex AI. No es necesario que entrenes un modelo con Vertex AI para usarlo con la integración de Vertex AI de Spanner, pero debes implementarlo en un extremo de Vertex AI.
Para entrenar modelos con datos almacenados en Spanner, puedes usar lo siguiente:
Consultas federadas de BigQuery junto con BigQuery ML
Dataflow para exportar datos de Spanner en formato CSV y, luego, importar la fuente de datos CSV en Vertex AI.
La integración de Vertex AI de Spanner extiende las siguientes funciones para usar modelos de AA:
Genera predicciones de AA llamando a un modelo con SQL en tus datos de Spanner. Puedes usar un modelo de Vertex AI Model Garden o un modelo implementado en tu extremo de Vertex AI.
Genera incorporaciones de texto para que un LLM traduzca instrucciones de texto en números. Para obtener más información sobre las incorporaciones, consulta Obtén incorporaciones de texto.
Usa las funciones de integración de Vertex AI de Spanner
Se puede usar un modelo en la integración de Vertex AI de Spanner para generar predicciones o embeddings de texto en tu código SQL con las funciones de ML Predict. Estas funciones son las siguientes:
GoogleSQL
Puedes usar la siguiente función ML predict para GoogleSQL:
Debes registrar tu modelo con la instrucción DDL CREATE MODEL
antes de usarlo con la función ML.PREDICT
.
También puedes usar SAFE.ML.PREDICT
para devolver null
en lugar de un error en tus predicciones. Esto resulta útil en los casos en que se ejecutan consultas grandes en las que se toleran algunas predicciones fallidas.
PostgreSQL
Puedes usar la siguiente función ML predict para PostgreSQL:
Para usar las funciones, puedes seleccionar un modelo de Model Garden de Vertex AI o usar un modelo que hayas implementado en Vertex AI.
Para obtener más información sobre cómo implementar un modelo en un extremo de Vertex AI, consulta Implementa un modelo en un extremo.
Para obtener más información sobre cómo usar estas funciones para generar una predicción de AA, consulta Genera predicciones de AA con SQL.
Para obtener más información sobre cómo usar estas funciones para generar incorporaciones de texto, consulta Obtén incorporaciones de texto.
Precios
Spanner no cobra cargos adicionales cuando lo usas con la integración de Vertex AI de Spanner. Sin embargo, hay otros posibles cargos asociados con esta función:
Pagas las tarifas estándar por la predicción en línea de Vertex AI. El cargo total depende del tipo de modelo que uses. Algunos tipos de modelos tienen una tarifa plana por hora, según el tipo de máquina y la cantidad de nodos que uses. Algunos tipos de modelos tienen tarifas por llamada. Te recomendamos que implementes este último en un proyecto dedicado en el que hayas establecido cuotas de predicción explícitas.
Pagas las tarifas estándar por la transferencia de datos entre Spanner y Vertex AI. El cargo total depende de la región que aloja el servidor que ejecuta la consulta y la región que aloja el extremo llamado. Para minimizar los cargos, implementa tus extremos de Vertex AI en la misma región que tu instancia de Spanner. Cuando uses configuraciones de instancias multirregionales o varios extremos de Vertex AI, implementa tus extremos en el mismo continente.
ANS
Debido a que la disponibilidad de la predicción en línea de Vertex AI es menor, debes configurar correctamente los modelos de AA de Spanner para mantener la alta disponibilidad de Spanner mientras usas la integración de Vertex AI de Spanner:
- Los modelos de AA de Spanner deben usar varios extremos de Vertex AI en el backend para habilitar la conmutación por error.
- Los extremos de Vertex AI deben cumplir con el ANS de Vertex AI.
- Los extremos de Vertex AI deben aprovisionar capacidad suficiente para controlar el tráfico entrante.
- Los extremos de Vertex AI deben usar regiones separadas y cercanas a la base de datos de Spanner para evitar interrupciones regionales.
- Los extremos de Vertex AI deben usar proyectos separados para evitar problemas con las cuotas de predicción por proyecto.
La cantidad de extremos redundantes de Vertex AI depende de su ANS y de la cantidad de filas en las consultas de Spanner:
ANS de Spanner | SLA de Vertex AI | 1 fila | 10 filas | 100 filas | 1,000 filas |
---|---|---|---|---|---|
99.99% | 99.9% | 2 | 2 | 2 | 3 |
99.99% | 99.5% | 2 | 3 | 3 | 4 |
99.999% | 99.9% | 2 | 2 | 3 | 3 |
99.999% | 99.5% | 3 | 3 | 4 | 4 |
Los extremos de Vertex AI no necesitan alojar exactamente el mismo modelo. Te recomendamos que configures el modelo de AA de Spanner para que tenga un modelo principal, complejo y con uso intensivo de procesamiento como su primer extremo. Los extremos de conmutación por error posteriores pueden apuntar a modelos simplificados que requieren menos procesamiento, se ajustan mejor y pueden absorber los picos de tráfico.
Limitaciones
- La entrada y la salida del modelo deben ser un objeto JSON.
Cumplimiento
Assured Workloads no admite la API de Vertex AI Prediction. Habilitar una restricción de uso de recursos inhabilita la API de Vertex AI y, de hecho, la función de integración de Vertex AI en Spanner.
Además, te recomendamos que crees un perímetro de Controles del servicio de VPC para garantizar que tus bases de datos de producción no se puedan conectar a los extremos de Vertex AI en tus proyectos que no son de producción y que podrían no tener la configuración de cumplimiento adecuada.