Compartilhar via


Etapas de atualização dos serviços Web de Instâncias de Contêiner do Azure para pontos de extremidade online gerenciados

Os pontos de extremidade online gerenciados ajudam a implantar os modelos de ML de maneira completa. Os pontos de extremidade online gerenciados funcionam com computadores com CPU e GPU poderosas no Azure, de maneira escalonável e totalmente gerenciada. Os pontos de extremidade online gerenciados cuidam do serviço, do da colocação em escala, da segurança e do monitoramento de seus modelos, liberando você da sobrecarga de configurar e gerenciar a infraestrutura subjacente. Mais detalhes podem ser encontrados em Implantar e pontuar um modelo de machine learning usando um ponto de extremidade online.

Você poderá implantar diretamente no novo destino de computação com os modelos e ambientes anteriores ou usar os scripts que fornecemos para exportar os serviços atuais e, em seguida, implantar na nova computação sem afetar os serviços existentes. Se você cria e exclui regularmente os serviços Web de ACI (Instâncias de Contêiner do Azure), é altamente recomendável a implantação direta e não o uso de scripts.

Importante

Após a atualização a URL de pontuação será alterada. Por exemplo, a URL de pontuação do serviço Web de ACI é semelhante a http://aaaaaa-bbbbb-1111.westus.azurecontainer.io/score. O URI de pontuação para um ponto de extremidade online gerenciado é semelhante a https://endpoint-name.westus.inference.ml.azure.com/score.

Cenários e diferenças com suporte

Modo de autenticação

Não há suporte para autenticação do ponto de extremidade online gerenciado. Se você usar os scripts de atualização, isso converterá em autenticação de chave. Para a autenticação de chave, serão utilizadas as chaves originais. Também há suporte para autenticação baseada em token.

TLS

Para o serviço de ACI protegido com HTTPS não é mais necessário fornecer seus próprios certificados porque todos os pontos de extremidade online gerenciados são protegidos por TLS.

Não há suporte para nome DNS personalizado.

Requisitos de recursos

Não há suporte para ContainerResourceRequirements, você pode escolher a SKU adequada para a sua inferência. A ferramenta de atualização mapeará o requisito de CPU/memória para a SKU correspondente. Se você optar por reimplantar manualmente por meio da CLI/SDK V2, também sugerimos a SKU correspondente para sua nova implantação.

Solicitação de CPU Solicitação de memória em GB SKU sugerida
(0, 1] (0, 1.2] DS1 V2
(1, 2] (1.2, 1.7] F2s V2
(1, 2] (1.7, 4.7] DS2 V2
(1, 2] (4.7, 13.7] E2s V3
(2, 4] (0, 5.7] F4s V2
(2, 4] (5.7, 11.7] DS3 V2
(2, 4] (11.7, 16] E4s_V3

"(" significa maior que e "]" significa menor ou igual a. Por exemplo, "(0, 1]" significa "maior que 0 e menor ou igual a 1".

Importante

Ao atualizar da ACI, haverá algumas alterações na forma como você será cobrado. Consulte nosso blog para obter uma comparação de custos aproximada e ajudar você a escolher as SKUs de VM certas para a sua carga de trabalho.

Isolamento da rede

Para cenários de espaço de trabalho privado e VNet, confira Usar isolamento de rede com pontos de extremidade online gerenciados.

Importante

Como há muitas configurações para espaço de trabalho e VNet, é altamente recomendável reimplantar por meio da extensão v2 da CLI do Azure para machine learning em vez da ferramenta de script.

Sem suporte

  • Não há suporte a EncryptionProperties para contêiner de ACI.
  • Não há suporte para serviços Web de ACI implantados por meio de deploy_from_model e deploy_from_image pela ferramenta de atualização. Reimplante manualmente por meio da CLI/SDK V2.

Etapas de atualização

Com nossa CLI ou SDK

Reimplemente manualmente com os arquivos de modelo e definição de ambiente. É possível encontrar nossos exemplos em azureml-examples. Especificamente, esse é o exemplo de SDK para o ponto de extremidade online gerenciado.

Com nossa ferramenta de atualização

Essa ferramenta criará automaticamente um novo ponto de extremidade online gerenciado com base nos serviços Web existentes. Os serviços originais não serão afetados. Você poderá rotear o tráfego com segurança para o novo ponto de extremidade e excluir o antigo.

Observação

O script de atualização é um script de exemplo e é fornecido sem um SLA (contrato de nível de serviço).

Use as etapas a seguir para executar os scripts:

Dica

O novo ponto de extremidade criado pelos scripts será criado no mesmo espaço de trabalho.

  1. Use um shell de bash para executar os scripts. Por exemplo, uma sessão de terminal no Linux ou no WSL (Subsistema do Windows para Linux).

  2. Instale o SDK do Python V1 para executar o script do Python.

  3. Instale a CLI do Azure.

  4. Clone o repositório em seu ambiente local. Por exemplo, git clone https://github.com/Azure/azureml-examples.

  5. Edite os seguintes valores no arquivo migrate-service.sh. Substitua os valores pelos que se aplicam à sua configuração.

    • <SUBSCRIPTION_ID> − A ID da assinatura da assinatura do Azure que contém o espaço de trabalho.
    • <RESOURCEGROUP_NAME> − O grupo de recursos que contém o espaço de trabalho.
    • <WORKSPACE_NAME> − O nome do espaço de trabalho.
    • <SERVICE_NAME> − O nome do serviço de ACI existente.
    • <LOCAL_PATH> − Um caminho local em que os recursos e os modelos utilizados pelo script são baixados.
    • <NEW_ENDPOINT_NAME> − O nome do novo ponto de extremidade que será criado. É recomendável que o novo nome do ponto de extremidade seja diferente do nome do serviço anterior. Caso contrário, o serviço original não será exibido se você verificar os pontos de extremidade no portal.
    • <NEW_DEPLOYMENT_NAME> − O nome da implantação para o novo ponto de extremidade.
  6. Execute o script de bash. Por exemplo, ./migrate-service.sh. Levará cerca de 5 a 10 minutos para concluir a nova implantação.

    Dica

    Se você receber um erro informando que o script não é executável ou se um editor for aberto ao tentar executar o script, use o seguinte comando para marcar o script como executável:

    chmod +x migrate-service.sh
    
  7. Após concluir a implantação com êxito, você poderá verificar o ponto de extremidade com o comando az ml online-endpoint invoke.

Fale conosco

Se você tiver dúvidas ou comentários sobre o script de atualização, entre em contato conosco por meio de moeonboard@microsoft.com.

Próximas etapas