Descripción y creación de puntos de conexión por lotes
Para obtener un modelo para generar predicciones por lotes, puede implementar el modelo en un punto de conexión por lotes.
Aprenderá a usar puntos de conexión por lotes para la puntuación por lotes asincrónica.
Predicciones por lotes
Para obtener predicciones por lotes, puede implementar un modelo en un punto de conexión. Un punto de conexión es un punto de conexión HTTPS al que puede llamar para desencadenar un trabajo de puntuación por lotes. La ventaja de este punto de conexión es que puede desencadenar el trabajo de puntuación por lotes desde otro servicio, como Azure Synapse Analytics o Azure Databricks. Un punto de conexión por lotes permite integrar la puntuación por lotes con una canalización de ingesta y transformación de datos existente.
Cada vez que se invoca el punto de conexión, se envía un trabajo de puntuación por lotes al área de trabajo de Azure Machine Learning. Normalmente, el trabajo usa un clúster de proceso para puntuar varias entradas. Los resultados se pueden almacenar en un almacén de datos, conectado al área de trabajo de Azure Machine Learning.
Creación de un punto de conexión por lotes
Para implementar un modelo en un punto de conexión por lotes, primero tendrá que crear el punto de conexión por lotes.
Para crear un punto de conexión por lotes, usará la clase BatchEndpoint
. Los nombres de punto de conexión deben ser únicos dentro de una región de Azure.
Para crear un punto de conexión, use el siguiente comando:
# create a batch endpoint
endpoint = BatchEndpoint(
name="endpoint-example",
description="A batch endpoint",
)
ml_client.batch_endpoints.begin_create_or_update(endpoint)
Sugerencia
Explore la documentación de referencia para crear un punto de conexión por lotes con el SDK v2 de Python.
Implementación de un modelo en un punto de conexión por lotes
Puede implementar varios modelos en un punto de conexión por lotes. Siempre que llame al punto de conexión por lotes, que desencadena un trabajo de puntuación por lotes, se usará la implementación predeterminada, a menos que se especifique lo contrario.
Uso de clústeres de proceso para implementaciones por lotes
El proceso ideal para usar para las implementaciones por lotes es el clúster de proceso de Azure Machine Learning. Si desea que el trabajo de puntuación por lotes procese los nuevos datos en lotes paralelos, debe aprovisionar un clúster de proceso con más de una instancia máxima.
Para crear un clúster de proceso, puede usar la clase AMLCompute
.
from azure.ai.ml.entities import AmlCompute
cpu_cluster = AmlCompute(
name="aml-cluster",
type="amlcompute",
size="STANDARD_DS11_V2",
min_instances=0,
max_instances=4,
idle_time_before_scale_down=120,
tier="Dedicated",
)
cpu_cluster = ml_client.compute.begin_create_or_update(cpu_cluster)