Para obtener inferencias online de un modelo entrenado, primero debes desplegarlo en un endpoint. Para ello, puedes usar la Google Cloud consola, la CLI de Google Cloud o la API de Vertex AI.
En este documento se describe el proceso para desplegar modelos en endpoints.
Qué ocurre cuando implementas un modelo
Al desplegar un modelo, se asocian recursos físicos al modelo para que pueda ofrecer inferencias online con baja latencia.
Puede desplegar varios modelos en un endpoint o desplegar el mismo modelo en varios endpoints. Para obtener más información, consulta Motivos para implementar más de un modelo en el mismo endpoint.
Preparar el despliegue de un modelo en un endpoint
Durante la implementación del modelo, debes tomar las siguientes decisiones importantes sobre cómo ejecutar la inferencia online:
Recurso creado | Ajuste especificado al crear el recurso |
---|---|
Endpoint | Ubicación en la que se van a ejecutar las inferencias |
Modelo | Contenedor que se va a usar (ModelContainerSpec ) |
DeployedModel | Recursos de computación que se pueden usar para la inferencia online |
Una vez que el modelo se haya desplegado en el endpoint, estos ajustes de despliegue no se podrán cambiar. Para cambiarlos, debes volver a desplegar el modelo.
El primer paso del proceso de implementación es decidir qué tipo de endpoint se va a usar. Para obtener más información, consulta Elegir un tipo de endpoint.
A continuación, comprueba que el modelo se muestre en el registro de modelos de Vertex AI. Es necesario para que el modelo se pueda desplegar. Para obtener información sobre Model Registry, incluido cómo importar artefactos de modelos o crearlos directamente en Model Registry, consulta la introducción a Vertex AI Model Registry.
El siguiente paso es decidir qué recursos de computación se van a usar para publicar el modelo.
El tipo de entrenamiento del modelo (AutoML o personalizado) y el tipo de datos (AutoML) determinan los tipos de recursos físicos disponibles para el modelo. Después de implementar un modelo, puedes mutate
algunos de esos recursos sin crear una nueva implementación.
El recurso de endpoint proporciona el endpoint de servicio (URL) que se usa para solicitar la inferencia. Por ejemplo:
https://us-central1-aiplatform.googleapis.com/v1/projects/{project}/locations/{location}/endpoints/{endpoint}:predict
Desplegar un modelo en un endpoint
Puedes desplegar un modelo en un endpoint con la consola Google Cloud o con la CLI de gcloud o la API de Vertex AI.
Desplegar un modelo en un endpoint público con la Google Cloud consola
En la Google Cloud consola, puede desplegar un modelo en un punto final público dedicado o compartido, o bien crear un punto final durante el proceso de despliegue. Para obtener más información, consulta Desplegar un modelo con la consola Google Cloud .
Desplegar un modelo en un endpoint público mediante la CLI de gcloud o la API de Vertex AI
Cuando despliegues un modelo con la CLI de gcloud o la API de Vertex AI, primero debes crear un endpoint dedicado o compartido y, a continuación, desplegar el modelo en él. Para obtener información detallada, consulta estos enlaces:
- Crear un endpoint público dedicado o compartido
- Desplegar un modelo con la CLI de gcloud o la API de Vertex AI
Desplegar un modelo en un endpoint de Private Service Connect
Para obtener más información, consulta Usar puntos finales de Private Service Connect para la inferencia online.
Usar un despliegue continuo para actualizar un modelo desplegado
Puedes usar una implementación gradual para sustituir un modelo implementado por una versión nueva del mismo modelo. El nuevo modelo reutiliza los recursos de computación del anterior. Para obtener más información, consulta Usar una implementación gradual para sustituir un modelo implementado.
Anular el despliegue de un modelo y eliminar el endpoint
Puedes anular el despliegue de un modelo y eliminar el endpoint. Para obtener más información, consulta Retirar un modelo y eliminar el endpoint.
Motivos para desplegar más de un modelo en el mismo endpoint
Si despliegas dos modelos en el mismo endpoint, podrás sustituir uno por otro de forma gradual. Por ejemplo, supongamos que estás usando un modelo y encuentras una forma de aumentar la precisión de ese modelo con nuevos datos de entrenamiento. Sin embargo, no quieres actualizar tu aplicación para que apunte a una nueva URL de endpoint ni quieres crear cambios repentinos en tu aplicación. Puedes añadir el nuevo modelo al mismo endpoint, que sirva un pequeño porcentaje del tráfico, y aumentar gradualmente la división del tráfico del nuevo modelo hasta que sirva el 100% del tráfico.
Como los recursos están asociados al modelo en lugar de al endpoint, puedes implementar modelos de diferentes tipos en el mismo endpoint. Sin embargo, la práctica recomendada es desplegar modelos de un tipo específico (por ejemplo, tabulares de AutoML o entrenados de forma personalizada) en un endpoint. Esta configuración es más fácil de gestionar.
Motivos para desplegar un modelo en más de un endpoint
Puede que quieras desplegar tus modelos con diferentes recursos para distintos entornos de aplicaciones, como los de pruebas y producción. También puede que quieras admitir diferentes SLOs para tus solicitudes de inferencia. Puede que una de tus aplicaciones tenga necesidades de rendimiento mucho mayores que las demás. En este caso, puedes implementar ese modelo en un endpoint de mayor rendimiento con más recursos de máquina. Para optimizar los costes, también puedes implementar el modelo en un endpoint de menor rendimiento con menos recursos de máquina.
Comportamiento de escalado
El autoescalado de la inferencia de Vertex AI escala el número de nodos de inferencia en función del número de solicitudes simultáneas. De esta forma, puedes adaptarte de forma dinámica a los cambios en las cargas de solicitudes y, al mismo tiempo, gestionar los costes. Para obtener más información, consulta Escalar nodos de inferencia para Vertex AI Inference.
Siguientes pasos
- Elige un tipo de endpoint.
- Despliega un modelo con la Google Cloud consola.
- Consulta información sobre el registro de solicitudes y respuestas de inferencia para endpoints dedicados y endpoints de Private Service Connect.
- Consulta cómo obtener una inferencia online.
- Consulta cómo cambiar la configuración predeterminada del registro de inferencias.