Nasazení modelu MLflow do spravovaného online koncového bodu
Nejjednodušší způsob, jak nasadit model do online koncového bodu, je použít model MLflow a nasadit ho do spravovaného online koncového bodu. Azure Machine Učení automaticky vygeneruje bodovací skript a prostředí pro modely MLflow.
Pokud chcete nasadit model MLflow, musíte mít vytvořený koncový bod. Pak můžete model nasadit do koncového bodu.
Nasazení modelu MLflow do koncového bodu
Když nasadíte model MLflow do spravovaného online koncového bodu, nemusíte mít bodovací skript a prostředí.
Pokud chcete nasadit model MLflow, musíte mít soubory modelu uložené v místní cestě nebo s registrovaným modelem. Soubory modelu můžete protokolovat při trénování modelu pomocí sledování MLflow.
V tomto příkladu přebíráme soubory modelu z místní cesty. Všechny soubory jsou uloženy v místní složce s názvem model
. Složka musí obsahovat MLmodel
soubor, který popisuje, jak lze model načíst a použít.
Tip
Přečtěte si další informace o formátu MLmodel.
Vedle modelu musíte také zadat výpočetní konfiguraci pro nasazení:
instance_type
: Velikost virtuálního počítače, která se má použít. Projděte si seznam podporovaných velikostí.instance_count
: Počet instancí, které se mají použít.
Pokud chcete model nasadit (a automaticky zaregistrovat), spusťte následující příkaz:
from azure.ai.ml.entities import Model, ManagedOnlineDeployment
from azure.ai.ml.constants import AssetTypes
# create a blue deployment
model = Model(
path="./model",
type=AssetTypes.MLFLOW_MODEL,
description="my sample mlflow model",
)
blue_deployment = ManagedOnlineDeployment(
name="blue",
endpoint_name="endpoint-example",
model=model,
instance_type="Standard_F4s_v2",
instance_count=1,
)
ml_client.online_deployments.begin_create_or_update(blue_deployment).result()
Tip
Projděte si referenční dokumentaci k vytvoření spravovaného online nasazení pomocí sady Python SDK v2.
Vzhledem k tomu, že se do koncového bodu nasadí jenom jeden model, chcete, aby tento model zabral 100 % provozu. Když do stejného koncového bodu nasadíte více modelů, můžete distribuovat provoz mezi nasazené modely.
Pokud chcete směrovat provoz do konkrétního nasazení, použijte následující kód:
# blue deployment takes 100 traffic
endpoint.traffic = {"blue": 100}
ml_client.begin_create_or_update(endpoint).result()
Pokud chcete odstranit koncový bod a všechna přidružená nasazení, spusťte příkaz:
ml_client.online_endpoints.begin_delete(name="endpoint-example")
Tip
Další informace o nasazení modelů MLflow