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_name s 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 response které 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.