Implantação de ponto de extremidade online para inferência em tempo real
APLICA-SE A:Extensão de ML da CLI do Azure v2 (atual)SDK do Python azure-ai-ml v2 (atual)
Esse artigo descreve os pontos de extremidade online para inferência em tempo real no Azure Machine Learning. A inferência é o processo de aplicação de novos dados de entrada a um modelo de machine learning para gerar saídas. O Azure Machine Learning permite que você faça inferências em tempo real sobre os dados usando modelos implantados em pontos de extremidade online. Embora essas saídas sejam normalmente chamadas de previsões, você pode usar a inferência para gerar saídas para outras tarefas de machine learning, como classificação e clustering.
Pontos de Extremidade online
Os pontos de extremidade online implantam modelos em um servidor Web que pode retornar previsões sob o protocolo HTTP. Pontos de extremidade online podem operacionalizar modelos para inferência em tempo real em solicitações síncronas de baixa latência e são melhor usados quando:
- Você tem requisitos de baixa latência.
- Seu modelo pode responder à solicitação em um período relativamente curto de tempo.
- As entradas do modelo se encaixam no conteúdo HTTP da solicitação.
- Você precisa escalar verticalmente o número de solicitações.
Para definir um ponto de extremidade, você deve especificar:
- Nome do ponto de extremidade. Esse nome deve ser exclusivo na região do Azure. Para outros requisitos de nomenclatura, confira Pontos de extremidade online e pontos de extremidade em lote do Azure Machine Learning.
- Modo de autenticação. Você pode escolher entre o modo de autenticação baseado em chave, o modo de autenticação baseado em token do Azure Machine Learning ou a autenticação baseada em token do Microsoft Entra para o ponto de extremidade. Para obter mais informações sobre autenticação, consulte Autenticar clientes para pontos de extremidade online.
Pontos de extremidade online gerenciados
Pontos de extremidade online gerenciados implantam seus modelos de machine learning de maneira conveniente e pronta para uso e são a maneira recomendada de usar os pontos de extremidade online do Azure Machine Learning. Os pontos de extremidade online gerenciados funcionam com computadores com CPU e GPU poderosas no Azure, de maneira escalonável e totalmente gerenciada.
Para liberar você da sobrecarga de configurar e gerenciar a infraestrutura subjacente, esses pontos de extremidade também cuidam da oferta de serviço, escala, segurança e monitoramento dos seus modelos. Para saber como definir pontos de extremidade online gerenciados, confira Definir o ponto de extremidade.
Pontos de extremidade online gerenciados vs Instâncias de Contêiner ou Serviço de Kubernetes do Azure (AKS) v1
Pontos de extremidade online gerenciados são a maneira recomendada de usar pontos de extremidade online no Azure Machine Learning. A tabela a seguir destaca os principais atributos dos pontos de extremidade online gerenciados em comparação com as soluções de Instâncias de Contêiner e Serviço de Kubernetes do Azure (AKS) v1.
Atributos | Pontos de extremidade online gerenciados (v2) | Instâncias de Contêiner ou AKS (v1) |
---|---|---|
Segurança/isolamento de rede | Fácil controle de entrada/saída com alternância rápida | Não há suporte para a rede virtual ou requer uma configuração manual complexa |
Serviço gerenciado | • Provisionamento/escalonamento de computação totalmente gerenciado • Configuração de rede para prevenção contra exfiltração de dados • Atualização do SO do host, distribuição controlada de atualizações no local |
• A escala é limitada • O usuário deve gerenciar a atualização ou configuração da rede |
Conceito de ponto de extremidade/implantação | A distinção entre ponto de extremidade e implantação permite cenários complexos, como a implantação segura de modelos | Nenhum conceito de ponto de extremidade |
Diagnóstico e monitoramento | • Depuração local do ponto de extremidade possível com Docker e Visual Studio Code • Análise avançada de métricas e logs com gráfico/consulta para comparar entre implantações • Detalhamento de custos até o nível da implantação |
Depuração local difícil |
Escalabilidade | Dimensionamento elástico e automático (não associados pelo tamanho do cluster padrão) | • Instâncias de Contêiner não são escalonáveis • O AKS v1 dá suporte à escala apenas dentro do cluster e requer a configuração da escalabilidade |
Preparação corporativa | Link privado, chaves gerenciadas pelo cliente, Microsoft Entra ID, gerenciamento de cotas, integração de cobrança, Contrato de Nível de Serviço (SLA) | Sem suporte |
Recursos avançados de ML | • Coleta de dados do modelo • Monitoramento do modelo • Modelo campeão-desafiante, lançamento seguro, espelhamento de tráfego • Extensibilidade de IA responsável |
Sem suporte |
Pontos de extremidade online gerenciados versus pontos de extremidade online do Kubernetes
Se você preferir usar Kubernetes para implantar seus modelos e oferecer pontos de extremidade, e está confortável em gerenciar os requisitos de infraestrutura, pode usar os pontos de extremidade online do Kubernetes. Esses pontos de extremidade permitem implantar modelos e servir pontos de extremidade online com CPUs ou GPUs no seu cluster do Kubernetes totalmente configurado e gerenciado em qualquer lugar.
Os pontos de extremidade online gerenciados podem ajudar a simplificar seu processo de implantação e fornecer os seguintes benefícios em relação aos pontos de extremidade online do Kubernetes:
Gerenciamento automático de infraestrutura
- Provisiona a computação e hospeda o modelo. Você apenas especifica o tipo de máquina virtual (VM) e as configurações de escala.
- Atualiza e corrige a imagem do SO do host subjacente.
- Realiza a recuperação do nó em caso de falha do sistema.
Monitoramento e logs
- Capacidade de monitorar a disponibilidade do modelo, desempenho e SLA usando integração nativa com o Azure Monitor.
- Facilidade de depuração de implantações utilizando logs e integração nativa com o Log Analytics.
-
Observação
Os pontos de extremidade online gerenciados são baseados na computação do Azure Machine Learning. Quando você usa um ponto de extremidade online gerenciado, você paga pelos custos de computação e rede. Não há sobretaxa adicional. Para obter mais informações sobre preços, confira a Calculadora de preços do Azure.
Se você usar uma rede virtual do Azure Machine Learning para proteger o tráfego de saída do ponto de extremidade online gerenciado, será cobrado pelo link privado do Azure e pelas regras de nome de domínio totalmente qualificado (FQDN) de saída que a rede virtual gerenciada usa. Para obter mais informações, confira Preços da rede virtual gerenciada.
A tabela a seguir destaca as principais diferenças entre pontos de extremidade online gerenciados e pontos de extremidade online do Kubernetes.
Pontos de extremidade online gerenciados | Pontos de extremidade online do Kubernetes (AKS v2) | |
---|---|---|
Usuários recomendados | Usuários que querem uma implantação de modelo gerenciado e uma experiência de MLOps aprimorada | Usuários que preferem o Kubernetes e podem gerenciar os requisitos de infraestrutura por conta própria |
Provisionamento de nó | Provisionamento, atualização e remoção de computação gerenciada | Responsabilidade do usuário |
Manutenção de nó | Atualizações da imagem do SO host gerenciadas e fortalecimento de segurança | Responsabilidade do usuário |
Dimensionamento de cluster (colocação em escala) | Gerenciamento manual e dimensionamento automático com suporte ao provisionamento de nó adicional | Dimensionamento manual e automático, com suporte à colocação em escala do número de réplicas dentro de limites fixos de cluster |
Tipo de computação | Gerenciado pelo serviço | Cluster do Kubernetes gerenciado pelo cliente |
Identidade gerenciada | Com suporte | Com suporte |
Rede virtual | Com suporte por meio do isolamento de rede gerenciada | Responsabilidade do usuário |
Monitoramento e registro em log prontos para uso | Potencializado por Azure Monitor e Log Analytics, incluindo as principais métricas e tabelas de log para pontos de extremidade e implantações | Responsabilidade do usuário |
Registrar em log com o Application Insights (herdado) | Com suporte | Com suporte |
Exibição de custos | Detalhado até o nível de ponto de extremidade/implantação | Nível do cluster |
Custos aplicados a | Máquinas virtuais (VMs) atribuídas à implantação | VMs atribuídas ao cluster |
Tráfego espelhado | Com suporte | Sem suporte |
Implantação sem código | Com suporte para os modelos MLflow e Triton | Com suporte para os modelos MLflow e Triton |
Implantações online
Uma implantação é um conjunto de recursos e computação necessários para hospedar o modelo que faz a inferência. Um único ponto de extremidade pode conter várias implantações com configurações diferentes. Essa configuração ajuda a separar a interface apresentada pelo ponto de extremidade do detalhes de implementação presentes na implantação. Um ponto de extremidade online tem um mecanismo de roteamento que pode direcionar solicitações para implantações específicas no ponto de extremidade.
O diagrama a seguir mostra um ponto de extremidade online que tem duas implantações, azul e verde. A implantação azul usa VMs com um SKU de CPU e executa a versão 1 de um modelo. A implantação verde usa VMs com um SKU de GPU e executa a versão 2 do modelo. O ponto de extremidade está configurado para rotear 90% do tráfego de entrada para a implantação azul, enquanto a implantação verde recebe os 10% restantes.
Para implantar um modelo, você deve ter:
Arquivos de modelo, ou o nome e a versão de um modelo já registrado no seu espaço de trabalho.
Código do script de pontuação que executa o modelo em uma solicitação de entrada específica.
Este script de pontuação recebe os dados enviados para um serviço Web implantado e os transmite ao modelo. Em seguida, o script executa o modelo e retorna sua resposta ao cliente. O script de pontuação é específico para seu modelo e deve compreender os dados que o modelo espera como entrada e retorna como saída.
Um ambiente para executar seu modelo. O ambiente pode ser um imagem do Docker com dependências do Conda ou um Dockerfile.
Configurações para especificar o tipo de instância e a capacidade de dimensionamento.
Para saber como implantar pontos de extremidade online usando a CLI do Azure, SDK do Python, Estúdio do Azure Machine Learning ou um modelo do ARM, confira Implantar um modelo de machine learning usando um ponto de extremidade online.
Principais atributos de uma implantação
A tabela a seguir descreve os atributos de chave de uma implantação:
Atributo | Descrição |
---|---|
Nome | O nome da implantação. |
Nome do ponto de extremidade | O nome do ponto de extremidade no qual criar a implantação. |
Modelar | O modelo a ser usado para a implantação. Esse valor pode ser uma referência a um modelo com versão existente no workspace ou uma especificação de modelo embutida. Para obter mais informações sobre como acompanhar e especificar o caminho para o modelo, consulte Especificar o modelo a ser implantado para uso no ponto de extremidade online. |
Caminho do código | O diretório no ambiente de desenvolvimento local que contém todo o código-fonte do Python para pontuar o modelo. Você pode usar diretórios e pacotes aninhados. |
Script de pontuação | O caminho relativo para o arquivo de pontuação no diretório do código-fonte. Esse código Python precisa ter uma função init() e uma função run() . A init() função é chamada depois que o modelo é criado ou atualizado, por exemplo, para armazenar o modelo em cache na memória. A função run() é chamada em cada invocação do ponto de extremidade para fazer a pontuação e previsão real. |
Ambiente | Contém os detalhes do ambiente para hospedar o modelo e o código. Esse valor pode ser uma referência para um ambiente com versão existente no espaço de trabalho ou uma especificação de ambiente embutido. |
Tipo de instância | O tamanho da VM a ser usado para a implantação. Para obter a lista de tamanhos com suporte, confira Lista de SKU de pontos de extremidade online gerenciados. |
Contagem de instâncias | O número de instâncias a serem usadas para a implantação. Baseie o valor na carga de trabalho esperada. Para alta disponibilidade, defina o valor para pelo menos 3 . O sistema reserva 20% adicionais para realizar atualizações. Para mais informações, confira Alocação de cotas de VM para implantações. |
Notas sobre implantações online
A implantação pode referenciar o modelo e a imagem do contêiner definidos no Ambiente a qualquer momento, por exemplo, quando as instâncias de implantação passam por correções de segurança ou outras operações de recuperação. Se você usar um modelo registrado ou uma imagem de contêiner no Registro de Contêiner do Azure para implantação e depois remover o modelo ou a imagem do contêiner, as implantações que dependem desses ativos podem falhar quando a restauração da imagem ocorrer. Se você remover o modelo ou a imagem do contêiner, certifique-se de recriar ou atualizar as implantações dependentes com um modelo ou imagem de contêiner alternativos.
O registro de contêiner ao qual o ambiente se refere pode ser privado apenas se a identidade do ponto de extremidade tiver permissão para acessá-lo via autenticação do Microsoft Entra e controle de acesso baseado em função (RBAC) do Azure. Pelo mesmo motivo, não há suporte para registos privados do Docker que não sejam o Registro de Contêiner do Azure.
A Microsoft corrige regularmente as imagens base para vulnerabilidades de segurança conhecidas. Você precisa reimplantar seu ponto de extremidade para usar a imagem corrigida. Se você fornecer sua própria imagem, será responsável por atualizá-la. Para obter mais informações, confira Aplicação de patch à imagem.
Alocação de cotas de VM para implantação
Para pontos de extremidade online gerenciados, o Azure Machine Learning reserva 20% dos recursos de computação para executar atualizações em alguns SKUs de VM. Se você solicitar um determinado número de instâncias para essas SKUs de VM em uma implantação, deverá ter uma cota para ceil(1.2 * number of instances requested for deployment) * number of cores for the VM SKU
disponível para evitar receber um erro. Por exemplo, se você solicitar 10 instâncias de uma VM Standard_DS3_v2 (que vem com quatro núcleos) em uma implantação, deverá ter uma cota de 48 núcleos (12 instances * 4 cores
) disponíveis. Essa cota extra é reservada para as operações iniciadas pelo sistema, como atualizações do sistema operacional e recuperação de VM, e não incorrerá em custo, a menos que essas operações sejam executadas.
Há determinados SKUs de VM que são isentos da reserva de cota extra. Para exibir a lista completa, consulte a Lista de SKU de pontos de extremidade online gerenciados. Para exibir o uso e solicitar aumentos de cota, confira Exibir seu uso e cotas no portal do Azure. Para exibir o custo de execução de um ponto de extremidade online gerenciado, consulte Exibir custos de um ponto de extremidade online gerenciado.
Pool de cota compartilhada
O Azure Machine Learning fornece um pool de cotas compartilhado do qual os usuários em várias regiões podem acessar a cota para executar testes por um tempo limitado, dependendo da disponibilidade. Ao usar o estúdio para implantar os modelos Llama-2, Phi, Nemotron, Mistral, Dolly e Deci-DeciLM do catálogo de modelos em um ponto de extremidade online gerenciado, o Azure Machine Learning permite que você acesse seu pool de cotas compartilhadas por um curto período de tempo para que possa executar testes. Para obter mais informações sobre o pool de cotas compartilhado, confira Cota compartilhada do Azure Machine Learning.
Para implantar modelos Llama-2, Phi, Nemotron, Mistral, Dolly e Deci-DeciLM do catálogo de modelos usando a cota compartilhada, você deve ter uma assinatura Enterprise Agreement. Para obter mais informações sobre como usar a cota compartilhada para implantação de ponto de extremidade online, consulte Como implantar modelos de base usando o estúdio.
Para obter mais informações sobre cotas e limites de recursos no Azure Machine Learning, consulte Gerenciar e aumentar cotas e limites de recursos com o Azure Machine Learning.
Implantação para codificadores e não codificadores
O Azure Machine Learning dá suporte à implantação de modelos para pontos de extremidade online para desenvolvedores e não desenvolvedores, fornecendo opções para implantação no-code, implantação com low-code e implantação Traga Seu Próprio Contêiner (BYOC).
- A implantação no-code fornece inferência pronta para uso para estruturas comuns como scikit-learn, TensorFlow, PyTorch e Open Neural Network Exchange (ONNX) via MLflow e Triton.
- A Implantação de baixo código permite que você forneça um código mínimo junto com seu modelo de machine learning para implantação.
- A implantação BYOC permite que você traga virtualmente qualquer contêiner para executar seu ponto de extremidade online. Você pode usar todos os recursos da plataforma Azure Machine Learning, como dimensionamento automático, GitOps, depuração e distribuição segura para gerenciar seus pipelines de MLOps.
A tabela a seguir destaca os principais aspectos das opções de implantação online:
Sem código | Pouco código | BYOC | |
---|---|---|---|
Resumo | Usa inferência pronta para uso em estruturas populares, como scikit-learn, TensorFlow, PyTorch e ONNX, por meio do MLflow e do Triton. Para obter mais informações, confira Implantar modelos do MLflow em pontos de extremidade online. | Usa imagens coletadas seguras e publicadas amplamente para estruturas populares, com atualizações a cada duas semanas para solucionar vulnerabilidades. Forneça o script de pontuação e/ou as dependências do Python. Para obter mais informações, confira Ambientes coletados do Azure Machine Learning. | Você fornece toda a sua pilha via suporte do Azure Machine Learning para imagens personalizadas. Para obter mais informações, confira Usar um contêiner personalizado para implantar um modelo em um ponto de extremidade online. |
Imagem de base personalizada | Nenhum. Ambientes prontos para uso fornecem a imagem base para facilitar a implantação. | Você pode usar uma imagem coletada ou sua imagem personalizada. | Traga um local acessível de imagem de contêiner, como docker.io, Registro de Contêiner ou Registro de Artefato da Microsoft, ou um Dockerfile que você pode compilar/publicar com o Registro de Contêiner para seu contêiner. |
Dependências personalizadas | Nenhum. Ambientes prontos fornecem dependências para facilitar a implantação. | Traga o ambiente do Azure Machine Learning em que o modelo será executado, seja uma imagem do Docker com dependências Conda ou um dockerfile. | As dependências personalizadas estão incluídas na imagem do contêiner. |
Código personalizado | Nenhum. O script de pontuação é gerado automaticamente para facilitar a implantação. | Traga seu script de pontuação. | O script de pontuação está incluído na imagem do contêiner. |
Observação
As execuções do AutoML criam um script de pontuação e dependências automaticamente para os usuários. Para implantação no-code, você pode implantar qualquer modelo AutoML sem a necessidade de criar outro código. Para implantação low-code, você pode modificar os scripts gerados automaticamente para atender às necessidades do seu negócio. Para saber como implantar com modelos AutoML, confira Como implantar um modelo AutoML em um ponto de extremidade online.
Depuração de ponto de extremidade online
Se possível, execute seu ponto de extremidade localmente para validar e depurar seu código e configuração antes de implantar no Azure. A CLI do Azure e SDK do Python dão suporte a pontos de extremidade e implantações locais, enquanto o Estúdio do Azure Machine Learning e os modelos do ARM não dão suporte a pontos de extremidade ou implantações locais.
O Azure Machine Learning fornece as seguintes maneiras de depurar pontos de extremidade online localmente e utilizando logs de contêiner:
- Depuração local com o servidor HTTP de inferência do Azure Machine Learning
- Depuração local com o ponto de extremidade local
- Depuração local com o ponto de extremidade local e o Visual Studio Code
- Depuração com logs de contêineres
Depuração local com o servidor HTTP de inferência do Azure Machine Learning
Você pode depurar seu script de pontuação localmente utilizando o servidor HTTP de inferência do Azure Machine Learning. O servidor HTTP é um pacote Python que expõe sua função de pontuação como um ponto de extremidade HTTP e encapsula o código do servidor Flask e as dependências em um único pacote.
O Azure Machine Learning inclui um servidor HTTP nas imagens Docker pré-compiladas para inferência usadas para implantar um modelo. Utilizando o pacote sozinho, você pode implantar o modelo localmente para produção e também pode validar facilmente seu script de pontuação em um ambiente de desenvolvimento local. Se houver um problema com o script de pontuação, o servidor retornará um erro e a localização onde o erro ocorreu. Você também pode usar o Visual Studio Code para depurar com o servidor HTTP de inferência do Azure Machine Learning.
Dica
Você pode usar o pacote Python do servidor HTTP de inferência do Azure Machine Learning para depurar seu script de pontuação localmente sem o Mecanismo do Docker. A depuração com o servidor de inferência ajuda você a depurar o script de pontuação antes de implantar nos pontos de extremidade locais, para que você possa depurar sem ser afetado pelas configurações do contêiner de implantação.
Para mais informações sobre como depurar com o servidor HTTP, confira Depurar script de pontuação com o servidor HTTP de inferência do Azure Machine Learning.
Depuração local com o ponto de extremidade local
Para depuração local, você precisará de um modelo implantado em um ambiente Docker local. Você pode usar essa implantação local para testes e depuração antes da implantação na nuvem.
Para implantar localmente, você precisará do Docker Engine instalado e em execução. O Azure Machine Learning então cria uma imagem do Docker local para imitar a imagem online. O Azure Machine Learning compila e executa implantações para você localmente e armazena em cache a imagem para iterações rápidas.
Dica
Se o Docker Engine não iniciar quando o computador for iniciado, você poderá solucionar problemas do Docker Engine. Use ferramentas do lado do cliente, como o Docker Desktop, para depurar o que acontece no contêiner.
A depuração local geralmente envolve as seguintes etapas:
- Primeiro, verifique se a implantação local foi bem-sucedida.
- Em seguida, invoque o ponto de extremidade local para inferência.
- Por fim, revise os logs de saída da operação
invoke
.
Os pontos de extremidade locais têm as seguintes limitações:
Sem suporte para regras de tráfego, autenticação ou configurações de investigação.
Com suporte para apenas uma implantação por ponto de extremidade.
Com suporte para arquivos de modelo locais e ambiente com o arquivo conda local somente.
Para testar modelos registrados, primeiro faça o download deles usando a CLI ou o SDK, e depois use
path
na definição de implantação para referenciar a pasta pai.Para testar ambientes registrados, verifique o contexto do ambiente no Estúdio do Azure Machine Learning e prepare um arquivo conda local para usar.
Para mais informações sobre a depuração local, confira Implantar e depurar localmente usando um ponto de extremidade local.
Depuração local com o ponto de extremidade local e o Visual Studio Code (versão prévia)
Importante
Esse recurso está atualmente em visualização pública. Essa versão prévia é fornecida sem um contrato de nível de serviço e não é recomendada para cargas de trabalho de produção. Alguns recursos podem não ter suporte ou podem ter restrição de recursos.
Para obter mais informações, consulte Termos de Uso Complementares de Versões Prévias do Microsoft Azure.
Assim como na depuração local, você precisará ter o Docker Engine instalado e em execução, e depois implantar um modelo no ambiente Docker local. Depois de ter uma implantação local, os pontos de extremidade locais do Azure Machine Learning usam contêineres de desenvolvimento do Docker e do Visual Studio Code (contêineres de desenvolvimento) para criar e configurar um ambiente de depuração local.
Com contêineres de desenvolvimento, você pode usar recursos do Visual Studio Code, como depuração interativa de dentro de um contêiner Docker. Para mais informações sobre como depurar interativamente pontos de extremidade online no Visual Studio Code, confira Depurar pontos de extremidade online localmente no Visual Studio Code.
Depuração com logs de contêineres
Você não pode obter acesso direto a uma VM em que um modelo é implantado, mas pode obter logs dos seguintes contêineres que estão sendo executados na VM:
- O log de console do servidor de inferência contém a saída das funções de impressão/log do seu código do script de pontuação score.py.
- Logs do inicializador de armazenamento contêm informações sobre se o código e os dados do modelo foram baixados com sucesso para o contêiner. O contêiner será executado antes que o contêiner do servidor de inferência comece a ser executado.
Para mais informações sobre depuração com logs de contêiner, confira Obter logs de contêiner.
Roteamento e espelhamento de tráfego para implantações online
Um único ponto de extremidade online pode ter várias implantações. À medida que o ponto de extremidade recebe solicitações de tráfego de entrada, ele pode direcionar porcentagens de tráfego para cada implantação, como na estratégia nativa de implantação azul/verde. O ponto de extremidade também pode espelhar ou copiar o tráfego de uma implantação para outra, chamado espelhamento ou sombreamento de tráfego.
Roteamento de tráfego para implantação azul/verde
A implantação azul/verde é uma estratégia de implantação que permite distribuir uma nova implantação verde para um pequeno subconjunto de usuários ou solicitações antes de distribuí-la completamente. O ponto de extremidade pode implementar o balanceamento de carga para alocar determinadas porcentagens do tráfego em cada implantação, com a alocação total em todas as implantações chegando a 100%.
Dica
Uma solicitação pode ignorar o balanceamento de carga de tráfego configurado incluindo um cabeçalho HTTP de azureml-model-deployment
. Defina o valor do cabeçalho como o nome da implantação para a qual você deseja que a solicitação seja roteada.
A imagem a seguir mostra as configurações no Estúdio do Azure Machine Learning para alocar o tráfego entre uma implantação azul e verde.
A alocação de tráfego anterior direciona 10% do tráfego para a implantação verde e 90% do tráfego para a implantação azul, como mostrado na imagem a seguir.
Espelhamento de tráfego para implantações online
O ponto de extremidade também pode espelhar ou copiar o tráfego de uma implantação para outra. Você pode usar o espelhamento de tráfego, também chamado de teste de sombra, quando deseja testar uma nova implantação com tráfego de produção sem impactar os resultados que os clientes recebem das implantações existentes.
Por exemplo, você pode implementar uma implantação azul/verde em que 100% do tráfego é direcionado para o azul e 10% é espelhado para a implantação verde. Os resultados do tráfego espelhado para a implantação verde não são retornados aos clientes, mas as métricas e os logs são registrados.
Para mais informações sobre como usar o espelhamento de tráfego, confira Realizar a distribuição segura de novas implantações para inferência em tempo real.
Mais funcionalidades dos pontos de extremidade online
As seções a seguir descrevem outras capacidades dos pontos de extremidade online do Azure Machine Learning.
Autenticação e criptografia
- Autenticação: Chave e tokens do Azure Machine Learning
- Identidade gerenciada: atribuída pelo usuário e atribuída pelo sistema
- Protocolo SSL (SSL) por padrão para invocação de ponto de extremidade
Dimensionamento automático
O dimensionamento automático executa automaticamente a quantidade certa de recursos para lidar com a carga em seu aplicativo. Pontos de extremidade gerenciados dão suporte para dimensionamento automático por meio da integração com o recurso dimensionamento automático do Azure Monitor. Você pode configurar a escala baseada em métricas, como utilização de >70% da CPU, escala baseada em horário, como regras de horário comercial de pico, ou ambos.
Para mais informações, confira dimensionamento automático de pontos de extremidade online no Azure Machine Learning.
Isolamento de rede gerenciada
Quando você implanta um modelo de machine learning em um ponto de extremidade online gerenciado, pode proteger a comunicação com o ponto de extremidade online usando pontos de extremidade privados. Você pode configurar a segurança para solicitações de pontuação de entrada e comunicações de saída separadamente.
As comunicações de entrada usam o ponto de extremidade privado do workspace do Azure Machine Learning, enquanto as comunicações de saída usam pontos de extremidade privados criados para a rede virtual gerenciada do workspace. Para obter mais informações, confira Isolamento de rede com pontos de extremidade online gerenciados.
Monitoramento de implantações e pontos de extremidade online
Os pontos de extremidade do Azure Machine Learning se integram ao Azure Monitor. A integração com o Azure Monitor permite exibir métricas em gráficos, configurar alertas, consultar tabelas de log e usar o Application Insights para analisar eventos de contêineres de usuários. Para obter mais informações, consulte Monitorar pontos de extremidade online.
Injeção de segredos em implantações online (versão prévia)
A injeção de segredos para uma implantação online envolve recuperar segredos, como chaves de API, de repositórios de segredos e injetá-los no contêiner do usuário que é executado dentro da implantação. Para fornecer um consumo seguro de segredos para o servidor de inferência que executa seu script de pontuação ou a pilha de inferência em sua implantação BYOC, você pode usar variáveis de ambiente para acessar os segredos.
Você pode injetar segredos usando identidades gerenciadas ou pode usar o recurso de injeção de segredos. Para mais informações, confira Injeção de segredos em pontos de extremidade online (versão prévia).
Conteúdo relacionado
- Implantar e pontuar um modelo de aprendizado de máquina usando um ponto de extremidade online
- Pontos de extremidade em lotes
- Proteja seus pontos de extremidade online gerenciados com isolamento de rede
- Implantar modelos com o REST
- Monitorar os pontos de extremidade online
- Ver os custos de um ponto de extremidade online gerenciado do Azure Machine Learning
- Gerenciar e aumentar cotas e limites de recursos com o Azure Machine Learning