Sdílet prostřednictvím


Cli (v2) Schéma YAML pro online nasazení Kubernetes s podporou Azure Arc

PLATÍ PRO: Rozšíření Azure CLI ml v2 (aktuální)

Zdrojové schéma JSON najdete na adrese https://azuremlschemas.azureedge.net/latest/kubernetesOnlineDeployment.schema.json.

Poznámka:

Syntaxe YAML podrobná v tomto dokumentu je založená na schématu JSON pro nejnovější verzi rozšíření ML CLI v2. Tato syntaxe je zaručena pouze pro práci s nejnovější verzí rozšíření ML CLI v2. Schémata pro starší verze rozšíření najdete na adrese https://azuremlschemasprod.azureedge.net/.

Syntaxe YAML

Klíč Typ Popis Povolené hodnoty Default value
$schema string Schéma YAML. Pokud k vytvoření souboru YAML použijete rozšíření Azure Machine Learning VS Code, včetně $schema v horní části souboru, můžete vyvolat schéma a dokončování prostředků.
name string Povinný: Název nasazení

Tady jsou definována pravidla pojmenování.
description string Popis nasazení
tags objekt Slovník značek pro nasazení
endpoint_name string Povinný: Název koncového bodu pro vytvoření nasazení v části
model řetězec nebo objekt Model, který se má použít pro nasazení. Tato hodnota může být odkazem na existující model verze v pracovním prostoru nebo specifikace vloženého modelu.

Pokud chcete odkazovat na existující model, použijte azureml:<model-name>:<model-version> syntaxi.

Pokud chcete definovat vložený model, postupujte podle schématu modelu.

Osvědčeným postupem pro produkční scénáře je vytvořit model samostatně a odkazovat na něj zde.

Toto pole je volitelné pro vlastní scénáře nasazení kontejneru.
model_mount_path string Cesta k připojení modelu ve vlastním kontejneru. Platí pouze pro vlastní scénáře nasazení kontejnerů. model Pokud je pole zadané, připojí se k této cestě v kontejneru.
code_configuration objekt Konfigurace logiky bodování kódu

Toto pole je volitelné pro vlastní scénáře nasazení kontejneru.
code_configuration.code string Místní cesta k adresáři zdrojového kódu pro bodování modelu.
code_configuration.scoring_script string Relativní cesta k souboru bodování v adresáři zdrojového kódu.
environment_variables objekt Slovník párů klíč-hodnota proměnné prostředí, které se nastaví v kontejneru nasazení. K těmto proměnným prostředí můžete přistupovat z hodnoticích skriptů.
environment řetězec nebo objekt Povinný: Prostředí, které se má použít pro nasazení. Tato hodnota může být odkazem na existující prostředí s verzí v pracovním prostoru nebo specifikaci vloženého prostředí.

Pokud chcete odkazovat na existující prostředí, použijte azureml:<environment-name>:<environment-version> syntaxi.

Pokud chcete definovat prostředí vložené, postupujte podle schématu prostředí.

Osvědčeným postupem pro produkční scénáře je vytvořit prostředí samostatně a odkazovat na něj zde.
instance_type string Typ instance použitý k umístění úlohy odvození. Pokud ji vynecháte, úloha odvozování se umístí do výchozího typu instance clusteru Kubernetes zadaného v poli koncového compute bodu. Pokud je zadáno, úloha odvození se umístí na tento vybraný typ instance.

Sada typů instancí pro cluster Kubernetes se konfiguruje prostřednictvím vlastní definice prostředků clusteru Kubernetes (CRD), proto nejsou součástí schématu YAML služby Azure Machine Learning pro připojení výpočetních prostředků Kubernetes. Další informace najdete v tématu Vytvoření a výběr typů instancí Kubernetes.
instance_count integer Početinstancích Zadejte hodnotu na základě očekávané úlohy. Toto pole se vyžaduje jenom v případě, že používáte default typ škálování (scale_settings.type: default).

instance_count lze aktualizovat po vytvoření nasazení pomocí az ml online-deployment update příkazu.
app_insights_enabled boolean Jestli chcete povolit integraci s instancí Aplikace Azure lication Insights přidruženou k vašemu pracovnímu prostoru. false
scale_settings objekt Nastavení škálování pro nasazení. Podporované dva typy nastavení škálování jsou default typ škálování a target_utilization typ škálování.

default Pomocí typu škálování (scale_settings.type: default) můžete po vytvoření nasazení ručně škálovat počet instancí nahoru a dolů aktualizací instance_count vlastnosti.

Pokud chcete nakonfigurovat target_utilization typ škálování (scale_settings.type: target_utilization), přečtěte si téma TargetUtilizationScaleSettings pro sadu konfigurovatelných vlastností.
scale_settings.type string Typ měřítka. default, target_utilization target_utilization
data_collector objekt Nastavení shromažďování dat pro nasazení Viz DataCollector pro sadu konfigurovatelných vlastností.
request_settings objekt Nastavení žádosti o bodování pro nasazení Viz RequestSettings pro sadu konfigurovatelných vlastností.
liveness_probe objekt Nastavení sondy aktivity pro pravidelné monitorování stavu kontejneru Viz ProbeSettings pro sadu konfigurovatelných vlastností.
readiness_probe objekt Nastavení testu připravenosti pro ověřování, pokud je kontejner připravený k obsluhování provozu. Viz ProbeSettings pro sadu konfigurovatelných vlastností.
resources objekt Požadavky na prostředky kontejneru
resources.requests objekt Požadavky na prostředky pro kontejner Viz ContainerResourceRequests pro sadu konfigurovatelných vlastností.
resources.limits objekt Omezení prostředků pro kontejner Viz ContainerResourceLimits pro sadu konfigurovatelných vlastností.

RequestSettings

Klíč Typ Popis Default value
request_timeout_ms integer Časový limit bodování v milisekundách. 5000
max_concurrent_requests_per_instance integer Maximální počet souběžných požadavků na instanci povolenou pro nasazení.

Toto nastavení neměňte z výchozí hodnoty, pokud nemáte pokyn technické podpory Microsoftu nebo člena týmu Azure Machine Learning.
1
max_queue_wait_ms integer Maximální doba v milisekundách zůstane požadavek ve frontě. 500

ProbeSettings

Klíč Typ Popis Default value
period integer Jak často (v sekundách) provést sondu 10
initial_delay integer Počet sekund po spuštění kontejneru před zahájením sondy. Minimální hodnota je 1. 10
timeout integer Počet sekund, po kterých vyprší časový limit sondy. Minimální hodnota je 1. 2
success_threshold integer Minimální po sobě jdoucí úspěch sondy, které se mají považovat za úspěšné po selhání. Minimální hodnota je 1. 1
failure_threshold integer Když sonda selže, systém zkusí failure_threshold časy, než se vzdá. Když se v případě sondy aktivity vzdáte, znamená to, že se kontejner restartuje. V případě testu připravenosti se kontejner označí jako nepřečtený. Minimální hodnota je 1. 30

TargetUtilizationScaleSettings

Klíč Typ Popis Default value
type const Typ škálování target_utilization
min_instances integer Minimální počet instancí, které se mají použít. 1
max_instances integer Maximální početinstancích 1
target_utilization_percentage integer Cílové využití procesoru pro automatické škálování 70
polling_interval integer Jak často se má automatické škálování pokusit o škálování nasazení v sekundách. 1

ContainerResourceRequests

Klíč Typ Description
cpu string Počet jader procesoru požadovaných pro kontejner.
memory string Požadovaná velikost paměti pro kontejner
nvidia.com/gpu string Počet karet Nvidia GPU požadovaných pro kontejner

ContainerResourceLimits

Klíč Typ Description
cpu string Limit počtu jader procesoru pro kontejner.
memory string Omezení velikosti paměti pro kontejner.
nvidia.com/gpu string Limit počtu karet Nvidia GPU pro kontejner

DataCollector

Klíč Typ Popis Default value
sampling_rate float (číslo s plovoucí řádovou čárkou) Procento, reprezentované jako desetinná sazba dat, která se mají shromažďovat. Například hodnota 1,0 představuje shromažďování 100 % dat. 1.0
rolling_rate string Rychlost rozdělení dat do úložiště. Hodnota může být: Minute, Hour, Day, Month, Year. Hour
collections objekt Sada jednotlivých collection_names a jejich odpovídajících nastavení pro toto nasazení
collections.<collection_name> objekt Logické seskupení produkčních dat odvozování, která se mají shromažďovat (například: model_inputs). Existují dva rezervované názvy: request a responsekteré odpovídají shromažďování dat požadavků HTTP a datové části odpovědi. Všechna ostatní jména jsou libovolná a definovatelná uživatelem.

Poznámka: Každý z nich collection_name by měl odpovídat názvu objektu Collector použitého v nasazení score.py ke shromažďování dat pro odvozování v produkčním prostředí. Další informace o shromažďování dat datové části a shromažďování dat pomocí poskytnuté sady Python SDK najdete v tématu Shromažďování dat z modelů v produkčním prostředí.
collections.<collection_name>.enabled boolean Zda povolit shromažďování dat pro zadané collection_name. 'False''
collections.<collection_name>.data.name string Název datového prostředku, který se má zaregistrovat ke shromážděným datům. <endpoint>-<deployment>-<collection_name>
collections.<collection_name>.data.path string Úplná cesta úložiště dat služby Azure Machine Learning, kde by se shromážděná data měla zaregistrovat jako datový prostředek. azureml://datastores/workspaceblobstore/paths/modelDataCollector/<endpoint_name>/<deployment_name>/<collection_name>
collections.<collection_name>.data.version integer Verze datového prostředku, který se má zaregistrovat u shromážděných dat v úložišti objektů blob. 1

Poznámky

Příkazy az ml online-deployment je možné použít ke správě online nasazení Kubernetes služby Azure Machine Learning.

Příklady

Příklady jsou k dispozici v příkladech v úložišti GitHub.

Další kroky