Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
APPLIES TO:Azure CLI ml extension v2 (current)
Lo schema JSON di origine è disponibile in https://azuremlschemas.azureedge.net/latest/managedOnlineDeployment.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/.
YAML syntax
Key | Type | Description | Allowed values | Default value |
---|---|---|---|---|
$schema |
string | Schema YAML. Se si usa l'estensione Azure Machine Learning per Visual Studio Code per creare il file YAML, l'inclusione di $schema nella parte superiore del file consente di richiamare i completamenti dello schema e delle risorse. |
||
name |
string | Required. Nome della distribuzione. Naming rules are defined here. |
||
description |
string | Descrizione della distribuzione. | ||
tags |
object | Dizionario dei tag per la distribuzione. | ||
endpoint_name |
string | Required. Nome dell'endpoint in cui creare la distribuzione. | ||
model |
stringa o oggetto | Modello da usare per la distribuzione. Questo valore può essere un riferimento a un modello con controllo delle versioni esistente nell'area di lavoro o a una specifica del modello inline. Per fare riferimento a un modello esistente, usare la sintassi azureml:<model-name>:<model-version> . To define a model inline, follow the Model schema. Come procedura consigliata per gli scenari di produzione, è necessario creare il modello separatamente e farvi riferimento qui. Questo campo è facoltativo per gli scenari di distribuzione di contenitori personalizzati. |
||
model_mount_path |
string | Percorso di montaggio del modello in un contenitore personalizzato. Applicabile solo per scenari di distribuzione di contenitori personalizzati , in cui è inference_config stato configurato l'ambiente. Se il model campo viene specificato, viene montato in questo percorso nel contenitore. |
||
code_configuration |
object | Configurazione per la logica del codice di assegnazione dei punteggi. Questo campo è facoltativo per gli scenari di distribuzione di contenitori personalizzati. |
||
code_configuration.code |
string | Percorso locale della directory del codice sorgente per l'assegnazione del punteggio al modello. | ||
code_configuration.scoring_script |
string | Percorso relativo del file di assegnazione punteggi nella directory del codice sorgente. | ||
environment_variables |
object | Dizionario delle coppie chiave-valore della variabile di ambiente da impostare nel contenitore di distribuzione. È possibile accedere a queste variabili di ambiente dagli script di assegnazione dei punteggi. | ||
environment |
stringa o oggetto | Required. Ambiente da usare per la distribuzione. Questo valore può essere un riferimento a un ambiente con controllo delle versioni esistente nell'area di lavoro o a una specifica dell'ambiente inline. Per fare riferimento a un ambiente esistente, usare la sintassi azureml:<environment-name>:<environment-version> . To define an environment inline, follow the Environment schema. Come procedura consigliata per gli scenari di produzione, è necessario creare l'ambiente separatamente e farvi riferimento qui. |
||
instance_type |
string | Required. Dimensioni della macchina virtuale da usare per la distribuzione. Per l'elenco delle dimensioni supportate, vedere Elenco di SKU degli endpoint online gestiti. | ||
instance_count |
integer | Required. Numero di istanze da usare per la distribuzione. Specificare il valore in base al carico di lavoro previsto. Per la disponibilità elevata, Microsoft consiglia di impostarla almeno 3 su . instance_count può essere aggiornato dopo la creazione della distribuzione usando il az ml online-deployment update comando . Si riserva un ulteriore 20% per l'esecuzione degli aggiornamenti. Per altre informazioni, vedere Allocazione della quota di macchine virtuali per la distribuzione. |
||
app_insights_enabled |
boolean | Se abilitare l'integrazione con l'istanza di app Azure lication Insights associata all'area di lavoro. | false |
|
scale_settings |
object | Impostazioni di scalabilità per la distribuzione. Attualmente è supportato solo il default tipo di scala, quindi non è necessario specificare questa proprietà. With this default scale type, you can either manually scale the instance count up and down after deployment creation by updating the instance_count property, or create an autoscaling policy. |
||
scale_settings.type |
string | Tipo di scala. | default |
default |
data_collector |
object | Impostazioni di raccolta dati per la distribuzione. See DataCollector for the set of configurable properties. | ||
request_settings |
object | Impostazioni della richiesta di assegnazione dei punteggi per la distribuzione. See RequestSettings for the set of configurable properties. | ||
liveness_probe |
object | Impostazioni del probe di attività per monitorare regolarmente l'integrità del contenitore. See ProbeSettings for the set of configurable properties. | ||
readiness_probe |
object | Impostazioni probe di idoneità per la convalida se il contenitore è pronto per gestire il traffico. See ProbeSettings for the set of configurable properties. | ||
egress_public_network_access |
string |
Note: This key is applicable when you use the legacy network isolation method to secure outbound communication for a deployment. È consigliabile proteggere le comunicazioni in uscita per le distribuzioni usando invece una rete virtuale gestita dell'area di lavoro. Questo flag protegge la distribuzione limitando la comunicazione tra la distribuzione e le risorse di Azure usate. Impostare su per disabled assicurarsi che il download del modello, del codice e delle immagini necessarie per la distribuzione sia protetto con un endpoint privato. Questo flag è applicabile solo per gli endpoint online gestiti. |
enabled , disabled |
enabled |
RequestSettings
Key | Type | Description | Default value |
---|---|---|---|
request_timeout_ms |
integer | Timeout di assegnazione dei punteggi in millisecondi. Si noti che il valore massimo consentito è 180000 in millisecondi. Per altre informazioni, vedere Limiti per gli endpoint online. |
5000 |
max_concurrent_requests_per_instance |
integer | Numero massimo di richieste simultanee consentite per ogni istanza per la distribuzione. Note: If you're using Azure Machine Learning Inference Server or Azure Machine Learning Inference Images, your model must be configured to handle concurrent requests. A tale scopo, passare WORKER_COUNT: <int> come variabile di ambiente. Per altre informazioni su WORKER_COUNT , vedere Parametri del server di inferenza di Azure Machine Learning Note: Set to the number of requests that your model can process concurrently on a single node. Un'impostazione di questo valore superiore alla concorrenza effettiva del modello può causare latenze più elevate, L'impostazione di questo valore troppo basso potrebbe portare a nodi sottoutilizzati. L'impostazione di un valore troppo basso potrebbe comportare anche il rifiuto delle richieste con un codice di stato HTTP 429, perché il sistema opterà per il fail fast. Per altre informazioni, vedere Risoluzione dei problemi relativi agli endpoint online: codici di stato HTTP. |
1 |
max_queue_wait_ms |
integer | (Deprecato) La quantità massima di tempo in millisecondi per cui una richiesta rimarrà nella coda. (Ora aumentare request_timeout_ms per tenere conto di eventuali ritardi di rete/coda) |
500 |
ProbeSettings
Key | Type | Description | Default value |
---|---|---|---|
initial_delay |
integer | Numero di secondi dopo l'avvio del contenitore prima dell'avvio del probe. Il valore minimo è 1 . |
10 |
period |
integer | Frequenza (in secondi) per eseguire il probe. | 10 |
timeout |
integer | Numero di secondi dopo il quale si verifica il timeout del probe. Il valore minimo è 1 . |
2 |
success_threshold |
integer | I successi consecutivi minimi per il probe devono essere considerati riusciti dopo aver avuto esito negativo. Il valore minimo è 1 relativo al probe di idoneità. Il valore del probe di attività è fisso come 1 . |
1 |
failure_threshold |
integer | Quando un probe non riesce, il sistema proverà i failure_threshold tempi prima di rinunciare. Rinunciare nel caso di un probe di attività significa che il contenitore verrà riavviato. Nel caso di un probe di idoneità, il contenitore verrà contrassegnato come non letto. Il valore minimo è 1 . |
30 |
DataCollector
Key | Type | Description | Default value |
---|---|---|---|
sampling_rate |
float | Percentuale, rappresentata come velocità decimale, di dati da raccogliere. Ad esempio, un valore pari a 1,0 rappresenta la raccolta del 100% dei dati. | 1.0 |
rolling_rate |
string | Velocità di partizionamento dei dati nell'archiviazione. Il valore può essere: Minute, Hour, Day, Month, Year. | Hour |
collections |
object | Set di singoli collection_name e le rispettive impostazioni per questa distribuzione. |
|
collections.<collection_name> |
object | Raggruppamento logico dei dati di inferenza di produzione da raccogliere (ad esempio: model_inputs ). Esistono due nomi riservati: request e response , che corrispondono rispettivamente alla raccolta di dati del payload della richiesta HTTP e della risposta. Tutti gli altri nomi sono arbitrari e definibili dall'utente. Note: Each collection_name should correspond to the name of the Collector object used in the deployment score.py to collect the production inference data. Per altre informazioni sulla raccolta e la raccolta di dati del payload con Python SDK fornito, vedere Raccogliere dati dai modelli nell'ambiente di produzione. |
|
collections.<collection_name>.enabled |
boolean | Indica se abilitare la raccolta dati per l'oggetto specificato collection_name . |
'False'' |
collections.<collection_name>.data.name |
string | Nome dell'asset di dati da registrare con i dati raccolti. | <endpoint>-<deployment>-<collection_name> |
collections.<collection_name>.data.path |
string | Percorso completo dell'archivio dati di Azure Machine Learning in cui i dati raccolti devono essere registrati come asset di dati. | azureml://datastores/workspaceblobstore/paths/modelDataCollector/<endpoint_name>/<deployment_name>/<collection_name> |
collections.<collection_name>.data.version |
integer | Versione dell'asset di dati da registrare con i dati raccolti nell'archivio BLOB. | 1 |
Remarks
I az ml online-deployment
comandi possono essere usati per gestire le distribuzioni online gestite di Azure Machine Learning.
Examples
Gli esempi sono disponibili nel repository GitHub di esempi. Di seguito sono riportati alcuni esempi.
YAML: basic
$schema: https://azuremlschemas.azureedge.net/latest/managedOnlineDeployment.schema.json
name: blue
endpoint_name: my-endpoint
model:
path: ../../model-1/model/
code_configuration:
code: ../../model-1/onlinescoring/
scoring_script: score.py
environment:
conda_file: ../../model-1/environment/conda.yaml
image: mcr.microsoft.com/azureml/openmpi4.1.0-ubuntu22.04:latest
instance_type: Standard_DS3_v2
instance_count: 1
$schema: https://azuremlschemas.azureedge.net/latest/managedOnlineDeployment.schema.json
name: green
endpoint_name: my-endpoint
model:
path: ../../model-2/model/
code_configuration:
code: ../../model-2/onlinescoring/
scoring_script: score.py
environment:
conda_file: ../../model-2/environment/conda.yaml
image: mcr.microsoft.com/azureml/openmpi4.1.0-ubuntu22.04:latest
instance_type: Standard_DS3_v2
instance_count: 1
YAML: identità assegnata dal sistema
$schema: https://azuremlschemas.azureedge.net/latest/managedOnlineDeployment.schema.json
name: blue
model:
path: ../../model-1/model/
code_configuration:
code: ../../model-1/onlinescoring/
scoring_script: score_managedidentity.py
environment:
conda_file: ../../model-1/environment/conda-managedidentity.yaml
image: mcr.microsoft.com/azureml/openmpi4.1.0-ubuntu22.04:latest
instance_type: Standard_DS3_v2
instance_count: 1
environment_variables:
STORAGE_ACCOUNT_NAME: "storage_place_holder"
STORAGE_CONTAINER_NAME: "container_place_holder"
FILE_NAME: "file_place_holder"
YAML: identità assegnata dall'utente
$schema: https://azuremlschemas.azureedge.net/latest/managedOnlineDeployment.schema.json
name: blue
model:
path: ../../model-1/model/
code_configuration:
code: ../../model-1/onlinescoring/
scoring_script: score_managedidentity.py
environment:
conda_file: ../../model-1/environment/conda-managedidentity.yaml
image: mcr.microsoft.com/azureml/openmpi4.1.0-ubuntu22.04:latest
instance_type: Standard_DS3_v2
instance_count: 1
environment_variables:
STORAGE_ACCOUNT_NAME: "storage_place_holder"
STORAGE_CONTAINER_NAME: "container_place_holder"
FILE_NAME: "file_place_holder"
UAI_CLIENT_ID: "uai_client_id_place_holder"
YAML: data_collector
$schema: http://azureml/sdk-2-0/OnlineDeployment.json
endpoint_name: my_endpoint
name: blue
model: azureml:my-model-m1:1
environment: azureml:env-m1:1
data_collector:
collections:
model_inputs:
enabled: 'True'
model_outputs:
enabled: 'True'
$schema: http://azureml/sdk-2-0/OnlineDeployment.json
endpoint_name: my_endpoint
name: blue
model: azureml:my-model-m1:1
environment: azureml:env-m1:1
data_collector:
collections:
request:
enabled: 'True'
data:
name: my_request_data_asset
path: azureml://datastores/workspaceblobstore/paths/modelDataCollector/my_endpoint/blue/request
version: 1
response:
enabled: 'True'
data:
name: my_response_data_asset
path: azureml://datastores/workspaceblobstore/paths/modelDataCollector/my_endpoint/blue/response
version: 1
model_inputs:
enabled: 'True'
data:
name: my_model_inputs_data_asset
path: azureml://datastores/workspaceblobstore/paths/modelDataCollector/my_endpoint/blue/model_inputs
version: 1
model_outputs:
enabled: 'True'
data:
name: my_model_outputs_data_asset
path: azureml://datastores/workspaceblobstore/paths/modelDataCollector/my_endpoint/blue/model_outputs
version: 1