Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Um modelo de implantação é um artefato reutilizável com escopo de registro que empacota as configurações de infraestrutura e runtime que um modelo precisa para atender ao tráfego em um ponto de extremidade online gerenciado. Como autor de modelo, você publica um modelo de implantação junto com seu modelo para que os consumidores possam implantar o modelo de forma consistente sem aprender todos os detalhes da infraestrutura. Como usuário, você implanta o modelo com uma carga YAML ou REST curta, pois o template de implantação já especifica o ambiente, as variáveis de ambiente, as sondas e outras configurações.
Note
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 funcionamento garantido com a versão mais recente da extensão ML CLI v2. Encontre os esquemas para as versões mais antigas da extensão em https://azuremlschemasprod.azureedge.net/.
Por que usar modelos de implantação?
Os templates de implantação ajudam você a separar as responsabilidades da criação de modelos das do uso de modelos:
- Capacidade de reutilização. Crie um modelo de implantação uma vez e reutilize-o em muitos modelos no Registro ou em várias versões do mesmo modelo.
- Salvaguardas. Restrinja os tipos de instância que os consumidores podem usar definindo
allowed_instance_typesno modelo e publique um conjunto coletado de modelos de implantação para os consumidores definindoallowed_deployment_templateso modelo. - Consistência. Cada usuário que implanta o modelo obtém a mesma imagem de ambiente, porta de pontuação, sondas e configurações de requisição, o que reduz a variação entre implantações.
- Ciclo de vida desacoplado. Atualize uma versão de um modelo de implantação sem alterar o artefato do modelo e, em seguida, aponte o
default_deployment_templatedo modelo para a nova versão quando quiser que os consumidores passem a usá-la.
Conceitos principais
Um modelo de implantação tem as seguintes características:
- Com escopo de registro. Os modelos de implantação residem em um registro Azure Machine Learning, não em um workspace. Você faz referência a eles pelo URI do ativo do Registro:
azureml://registries/<registry-name>/deploymenttemplates/<template-name>/versions/<version>. - Controle de versão. Cada modelo de implantação tem um nome e uma versão. Os consumidores fazem referência a uma versão específica, portanto, as atualizações para o modelo não alteram as implantações em execução até que os consumidores reimplantem.
- Digite
Managed. Atualmente, os modelos de implantação dão suporte ao tipoManaged, que tem como destino pontos de extremidade online gerenciados. - Vinculado a um ambiente de registro. O campo
environmentem um modelo de implantação deve fazer referência a um ambiente no escopo do registro. Ambientes com escopo do workspace e definições de ambiente embutidas não têm suporte.
Um modelo que usa modelos de implantação tem dois campos relacionados:
-
default_deployment_template— o modelo de implantação aplicado quando um consumidor implanta o modelo sem especificar uma substituição. -
allowed_deployment_templates— uma lista opcional e selecionada de modelos de implantação que o autor do modelo recomenda que os consumidores usem como substituições.
Uma implantação que faz referência a um modelo com um default_deployment_template pode sobrescrevê-lo definindo properties."azureml.deploymentTemplateOverride" como o URI do ativo no registro do modelo de substituição.
Fluxo de trabalho em um relance
O fluxo de ponta a ponta tem três funções: o proprietário do ambiente, o autor do modelo e o consumidor do modelo. A mesma pessoa pode desempenhar os três papéis.
- Criar um ambiente. O proprietário do ambiente cria um ambiente em um espaço de trabalho e o publica em um registro.
- Crie um modelo de implantação. O autor do modelo cria um modelo de implantação no registro que faz referência ao ambiente com escopo de registro e define propriedades de infraestrutura, como
default_instance_type,allowed_instance_types, caminho de pontuação e porta, variáveis de ambiente e sondas. - Registre o modelo. O autor do modelo registra o modelo no registro ao enviar os pesos do modelo e definir
default_deployment_template(e, opcionalmente,allowed_deployment_templates) no modelo. - Implantar o modelo. O consumidor cria um ponto de extremidade online gerenciado em um workspace e cria uma implantação que faz referência ao modelo de registro. A implantação usa o modelo de implantação padrão do modelo ou especifica uma substituição que está na lista de permissões do modelo.
Para obter instruções passo a passo, consulte:
- Gerenciar modelos com modelos de implantação (autor do modelo)
- Implante modelos que usam modelos de implantação (consumidor do modelo)
Relação com ambientes e modelos
Os modelos de implantação ficam entre ambientes e modelos no Registro:
- Um ambiente descreve a imagem de contêiner e as dependências do Python que executam seu código de pontuação. Um ambiente com escopo de registro pode ser referenciado por muitos modelos de implantação.
- Um modelo de implantação descreve como executar um modelo em um ponto de extremidade online gerenciado, fazendo referência a um ambiente com escopo de registro mais configurações de infraestrutura.
- Um modelo no Registro pode fixar um modelo de implantação padrão e, opcionalmente, restringir o conjunto de substituições de modelo de implantação permitidas. Modelos diferentes podem reutilizar o mesmo modelo de implantação ou fixar modelos de implantação diferentes.
Mutabilidade
Modelos de implantação e modelos seguem regras de mutabilidade diferentes, de modo que uma versão do modelo de implantação permaneça um alvo estável e reproduzível, enquanto uma versão do modelo pode passar a usar combinações de infraestrutura atualizadas.
- A versão do modelo de implantação é imutável. Depois de criar uma versão de um modelo de implantação, somente os campos
tagsedescriptiondessa versão podem ser atualizados no local. Os campos que afetam o comportamento do runtime , comoenvironment,environment_variables,default_instance_type,allowed_instance_types,request_settings,liveness_probeereadiness_probe- são imutáveis. Para alterar qualquer uma delas, crie uma nova versão do modelo de implantação. Isso garante que um consumidor que se vincula a uma versão específica de um modelo de implantação sempre obtenha a mesma configuração de infraestrutura. - A versão do modelo pode ser alterada para referências a modelos de implantação. Em uma versão existente do modelo, você pode atualizar
default_deployment_templateeallowed_deployment_templatespara apontar para novos templates de implantação ou para novas versões de um template de implantação existente. Você não precisa criar uma nova versão do modelo para lançar uma nova configuração de infraestrutura; em vez disso, incremente a versão do modelo de implantação e atualize as referências do modelo, a menos que você opte por criar uma nova versão do modelo.
Limitações e considerações
- Os modelos de implantação estão em versão prévia. O esquema e o comportamento podem mudar.
- Os modelos de implantação dão suporte apenas ao
Managedtipo. Use-os com pontos de extremidade online gerenciados, não com pontos de extremidade online do Kubernetes nem com pontos de extremidade em lote. - O campo
environmentdeve se referir a um ambiente no escopo do registro. Compartilhe ambientes de espaço de trabalho em um registro antes de fazer referência a eles. - A lista do
allowed_deployment_templatesmodelo é uma orientação de autor, não uma restrição imposta. Um autor de modelo o usa para publicar um conjunto de modelos de substituição validados, mas a plataforma não bloqueia uma implantação que substitui por um modelo fora da lista. - Um
instance_typeespecificado em uma implantação deve estar na lista deallowed_instance_typesdo modelo de implantação, quando essa lista estiver definida no modelo.