Schema YAML del modello di distribuzione dell'interfaccia della riga di comando (v2)

SI APPLICA A:Estensione ml della CLI di Azure v2 (corrente)

Lo schema JSON di origine è disponibile in https://azuremlschemas.azureedge.net/latest/deploymentTemplate.schema.json.

Note

La sintassi YAML descritta in dettaglio in questo documento si basa sullo schema JSON per la versione più recente dell'estensione dell'interfaccia della riga di comando di Machine Learning v2. Il funzionamento di questa sintassi è garantito solo con la versione più recente dell'estensione dell'interfaccia della riga di comando di Machine Learning v2. È possibile trovare gli schemi per le versioni di estensione precedenti in https://azuremlschemasprod.azureedge.net/.

Sintassi YAML

Key Tipo Description Valori consentiti Valore predefinito
$schema string Schema YAML. Se si usa l'estensione Azure Machine Learning VS Code per creare il file YAML, incluso $schema nella parte superiore del file consente di richiamare i completamenti dello schema e delle risorse.
name string Required. Nome del modello di distribuzione.
version stringa o integer Versione del modello di distribuzione.
description string Descrizione del modello di distribuzione.
display_name string Nome visualizzato del modello di distribuzione. Usato dalle superfici dell'interfaccia utente (ad esempio il portale di Foundry) per presentare agli utenti un'etichetta descrittiva quando scelgono un modello di distribuzione.
tags object Dizionario dei tag per il modello di distribuzione.
type string Tipo del modello di distribuzione.
deployment_template_type string Required. Tipo di modello di distribuzione. "Gestito" è l'unico valore attualmente consentito.
environment string Required. Ambiente da usare per il modello di distribuzione. Questo valore deve essere un riferimento a un ambiente con controllo delle versioni esistente in un Registro di sistema. Usare la azureml://registries/<registry-name>/environments/<environment-name>/versions/<version> sintassi .

Nota: Gli ambienti con ambito area di lavoro (con azureml:<name>:<version> sintassi) e le definizioni di ambiente inline non sono supportati per i modelli di distribuzione.
environment_variables object Dizionario di coppie chiave-valore della variabile di ambiente da impostare per la distribuzione. È possibile accedere a queste variabili di ambiente dagli script di assegnazione dei punteggi.
instance_count integer Required. Numero di istanze da usare per la distribuzione. Specificare il valore in base al carico di lavoro previsto.
default_instance_type string Required. Tipo di istanza predefinito da usare per la distribuzione con questo modello.
allowed_instance_types elenco di stringhe I tipi di istanza che i consumer possono impostare quando distribuiscono un modello che usa questo modello. Specificare i tipi di istanza come elenco di stringhe.
model_mount_path string Percorso di montaggio del modello nel contenitore.
scoring_path string Required. Percorso dell'endpoint di assegnazione dei punteggi.
scoring_port integer Required. Porta per l'endpoint di assegnazione dei punteggi.
liveness_probe object Impostazioni del probe di attività per monitorare regolarmente l'integrità del contenitore. Vedere ProbeSettings per il set di proprietà configurabili.
readiness_probe object Impostazioni probe di idoneità per la convalida se il contenitore è pronto per gestire il traffico. Vedere ProbeSettings per il set di proprietà configurabili.
request_settings object Richiedere le impostazioni per la distribuzione. Vedere RequestSettings per il set di proprietà configurabili.

ProbeSettings

Key Tipo Description Valore predefinito
failure_threshold integer Quando un probe non riesce, il sistema prova i failure_threshold tempi prima di rinunciare. Rinunciare nel caso di un probe di attività significa che il contenitore viene riavviato. Nel caso di un probe di idoneità, il contenitore è contrassegnato come Non letto. Il valore minimo è 1. 30
initial_delay integer Numero di secondi dopo l'avvio del contenitore prima dell'avvio del probe. Il valore minimo è 1. 10
method string Metodo HTTP da usare per il probe.
path string Percorso del probe.
period integer Frequenza (in secondi) per eseguire il probe. 10
port integer Porta da sondare.
scheme string Schema da usare per il probe , ad esempio HTTP o HTTPS.
success_threshold integer Il numero minimo di successi consecutivi affinché il probe possa essere considerato riuscito dopo aver fatto registrare un insuccesso. Il valore minimo è 1. 1
timeout integer Numero di secondi dopo il quale si verifica il timeout del probe. Il valore minimo è 1. 2

RequestSettings

Key Tipo Description Valore predefinito
request_timeout_ms integer Timeout della richiesta in millisecondi. 5000
max_concurrent_requests_per_instance integer Numero massimo di richieste simultanee consentite per ogni istanza per la distribuzione. 1

Remarks

I modelli di distribuzione forniscono una configurazione riutilizzabile per la distribuzione di modelli. Definiscono l'ambiente, le impostazioni dell'infrastruttura e le configurazioni probe che possono essere applicate durante la creazione di distribuzioni.

Examples

Di seguito sono riportati alcuni esempi.

YAML: basic

$schema: https://azuremlschemas.azureedge.net/latest/deploymentTemplate.schema.json
name: my-deployment-template
version: 1
description: Basic deployment template example
deployment_template_type: Managed
environment: azureml://registries/my-registry/environments/my-environment/versions/1
instance_count: 1
default_instance_type: Standard_DS3_v2
scoring_path: /score
scoring_port: 5001

YAML: con variabili di ambiente e probe

$schema: https://azuremlschemas.azureedge.net/latest/deploymentTemplate.schema.json
name: my-deployment-template
version: 1
description: Deployment template with environment variables and health probes
display_name: My deployment template
deployment_template_type: Managed
environment: azureml://registries/azureml/environments/minimal-ubuntu20.04-py38-cpu-inference/versions/latest
environment_variables:
  MODEL_PATH: /var/azureml-app/model
  SCORING_TIMEOUT: "60"
instance_count: 3
default_instance_type: Standard_DS3_v2
scoring_path: /score
scoring_port: 8080
liveness_probe:
  initial_delay: 30
  period: 10
  timeout: 2
  success_threshold: 1
  failure_threshold: 3
readiness_probe:
  initial_delay: 10
  period: 5
  timeout: 2
  success_threshold: 1
  failure_threshold: 3
request_settings:
  request_timeout_ms: 10000
  max_concurrent_requests_per_instance: 2

YAML: con tipi di istanza consentiti

$schema: https://azuremlschemas.azureedge.net/latest/deploymentTemplate.schema.json
name: my-deployment-template-restricted
version: 1
description: Deployment template with instance type restrictions
deployment_template_type: Managed
environment: azureml://registries/my-registry/environments/my-environment/versions/1
instance_count: 1
default_instance_type: Standard_DS3_v2
allowed_instance_types:
  - Standard_DS3_v2
  - Standard_DS4_v2
scoring_path: /score
scoring_port: 5001

YAML: con tipi di istanza consentiti (elenco)

$schema: https://azuremlschemas.azureedge.net/latest/deploymentTemplate.schema.json
name: my-deployment-template-multi
version: 1
description: Deployment template that allows multiple instance types
deployment_template_type: Managed
environment: azureml://registries/my-registry/environments/my-environment/versions/1
instance_count: 1
default_instance_type: Standard_DS3_v2
allowed_instance_types:
  - Standard_DS3_v2
  - Standard_DS4_v2
  - Standard_DS5_v2
scoring_path: /score
scoring_port: 5001

YAML: con percorso di montaggio del modello

$schema: https://azuremlschemas.azureedge.net/latest/deploymentTemplate.schema.json
name: my-deployment-template-custom-mount
version: 1
description: Deployment template with custom model mount path
deployment_template_type: Managed
environment: azureml://registries/my-registry/environments/my-environment/versions/1
instance_count: 1
default_instance_type: Standard_DS3_v2
scoring_path: /score
scoring_port: 5001
model_mount_path: /var/azureml-app/models

Passaggi successivi