Compartilhar via


Esquema YAML do modelo de implantação da CLI (v2)

APLICA-SE A:Extensão de ML da CLI do Azurev2 (atual)

O esquema JSON de origem pode ser encontrado em https://azuremlschemas.azureedge.net/latest/deploymentTemplate.schema.json.

Observação

A sintaxe YAML detalhada neste documento baseia-se no esquema JSON da última versão da extensão de ML da CLI v2. Essa sintaxe só tem a garantia de funcionar com a última versão da extensão de ML da CLI v2. Encontre os esquemas para as versões mais antigas da extensão em https://azuremlschemasprod.azureedge.net/.

Sintaxe YAML

Key Tipo Description Valores permitidos Valor padrão
$schema cadeia O esquema YAML. Se você usar a extensão VS Code do Azure Machine Learning para criar o arquivo YAML, inclusive $schema na parte superior do arquivo, você poderá invocar o esquema e as conclusões de recursos.
name cadeia Obrigatório Nome do modelo de implantação.
version cadeia de caracteres ou inteiro Versão do modelo de implantação.
description cadeia Descrição do modelo de implantação.
tags objeto Dicionário de marcas para o modelo de implantação.
type cadeia Tipo do modelo de implantação.
deployment_template_type cadeia O tipo de modelo de implantação.
environment cadeia de caracteres ou objeto O ambiente a ser usado para o modelo de implantação. Esse valor pode ser uma referência a um ambiente com versão existente em um registro ou a uma especificação de ambiente embutida.

Para fazer referência a um ambiente existente em um registro, use a azureml://registries/<registry-name>/environments/<environment-name> sintaxe.

Para definir um ambiente embutido, siga o esquema ambiente.

Como prática recomendada para cenários de produção, você deve criar o ambiente separadamente e fazer referência a ele aqui.
environment_variables objeto Dicionário de pares chave-valor variáveis de ambiente a serem definidos para a implantação. Você pode acessar essas variáveis de ambiente de seus scripts de pontuação.
instance_count inteiro O número de instâncias a serem usadas para a implantação. Especifique o valor com base na carga de trabalho esperada.
default_instance_type cadeia O tipo de instância padrão a ser usado ao implantar com esse modelo.
allowed_instance_types cadeia O tipo de instância permitido que pode ser usado ao implantar com esse modelo.
model_mount_path cadeia O caminho para montar o modelo no contêiner.
scoring_path cadeia O caminho para o ponto de extremidade de pontuação.
scoring_port inteiro A porta do ponto de extremidade de pontuação.
liveness_probe objeto Configurações de investigação de atividade para monitorar a integridade do contêiner regularmente. Consulte ProbeSettings para obter o conjunto de propriedades configuráveis.
readiness_probe objeto Configurações de investigação de preparação para validação se o contêiner está pronto para atender ao tráfego. Consulte ProbeSettings para obter o conjunto de propriedades configuráveis.
request_settings objeto Solicitar configurações para a implantação. Consulte RequestSettings para obter o conjunto de propriedades configuráveis.

ProbeSettings

Key Tipo Description Valor padrão
failure_threshold inteiro Quando uma investigação falha, o sistema tenta failure_threshold vezes antes de desistir. Desistir no caso de uma investigação de atividade significa que o contêiner é reiniciado. No caso de uma investigação de preparação, o contêiner é marcado como Cancelar a recuperação. O valor mínimo é 1. 30
initial_delay inteiro O número de segundos após o início do contêiner antes do início da investigação. O valor mínimo é 1. 10
method cadeia O método HTTP a ser usado para a investigação.
path cadeia O caminho para a investigação.
period inteiro Com que frequência (em segundos) executar a investigação. 10
port inteiro A porta a ser sondada.
scheme cadeia O esquema a ser usado para a investigação (por exemplo, HTTP ou HTTPS).
success_threshold inteiro O mínimo de sucessos consecutivos para que a investigação seja considerada bem-sucedida após apresentar falha. O valor mínimo é 1. 1
timeout inteiro O número de segundos após o qual a sonda atinge o tempo limite. O valor mínimo é 1. 2

RequestSettings

Key Tipo Description Valor padrão
request_timeout_ms inteiro O tempo limite da solicitação em milissegundos. 5000
max_concurrent_requests_per_instance inteiro O número máximo de solicitações simultâneas por instância permitidas para a implantação. 1

Observações

Os modelos de implantação fornecem uma configuração reutilizável para implantar modelos. Eles definem o ambiente, as configurações de infraestrutura e as configurações de investigação que podem ser aplicadas ao criar implantações.

Exemplos

Os exemplos são mostrados abaixo.

YAML: básico

$schema: https://azuremlschemas.azureedge.net/latest/deploymentTemplate.schema.json
name: my-deployment-template
version: 1
description: Basic deployment template example
environment: azureml:my-environment:1
instance_count: 1
default_instance_type: Standard_DS3_v2

YAML: com variáveis de ambiente e investigações

$schema: https://azuremlschemas.azureedge.net/latest/deploymentTemplate.schema.json
name: my-deployment-template
version: 1
description: Deployment template with environment variables and health probes
environment: azureml://registries/azureml/environments/minimal-ubuntu20.04-py38-cpu-inference: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: com o tipo de instância permitido

$schema: https://azuremlschemas.azureedge.net/latest/deploymentTemplate.schema.json
name: my-deployment-template-restricted
version: 1
description: Deployment template with instance type restrictions
environment: azureml:my-environment:1
instance_count: 1
default_instance_type: Standard_DS3_v2
allowed_instance_types: Standard_DS3_v2

YAML: com ambiente embutido

$schema: https://azuremlschemas.azureedge.net/latest/deploymentTemplate.schema.json
name: my-deployment-template-inline-env
version: 1
description: Deployment template with inline environment definition
environment:
  name: inline-environment
  image: mcr.microsoft.com/azureml/minimal-ubuntu20.04-py38-cpu-inference:latest
  inference_config:
    liveness_route:
      path: /health
      port: 5001
    readiness_route:
      path: /ready
      port: 5001
    scoring_route:
      path: /score
      port: 5001
instance_count: 1
default_instance_type: Standard_DS3_v2

YAML: com o caminho de montagem do modelo

$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
environment: azureml:my-environment:1
instance_count: 1
default_instance_type: Standard_DS3_v2
model_mount_path: /var/azureml-app/models

Próximas etapas