AksWebservice Classe
Representa um modelo de machine learning implantado como um ponto de extremidade de serviço Web no Serviço de Kubernetes do Azure.
Um serviço implementado é criado a partir de um modelo, script e arquivos associados. O serviço Web resultante é um ponto de extremidade HTTP com balanceamento de carga com uma API REST. Você pode enviar dados para essa API e receber a previsão retornada pelo modelo.
O AksWebservice implanta um serviço único em um ponto de extremidade. Para implantar vários serviços em um ponto de extremidade, use a classe AksEndpoint.
Para saber mais, confira Implantar um modelo em um cluster do Serviço de Kubernetes do Azure.
Inicialize a instância de serviço Web.
O construtor de serviço Web recupera uma representação na nuvem de um objeto de serviço Web associado ao workspace fornecido. Ele retornará uma instância de uma classe filho correspondente ao tipo específico do objeto de serviço Web recuperado.
- Herança
-
AksWebservice
Construtor
AksWebservice(workspace, name)
Parâmetros
Nome | Description |
---|---|
workspace
Obrigatório
|
O objeto de workspace que contém o objeto de serviço Web a ser recuperado. |
name
Obrigatório
|
O nome do objeto de serviço Web a ser recuperado. |
Comentários
O padrão de implantação recomendado é criar um objeto de configuração de implantação com o método deploy_configuration
e, em seguida, usá-lo com o método deploy
da classe Model, conforme mostrado abaixo.
# Set the web service configuration (using default here)
aks_config = AksWebservice.deploy_configuration()
# # Enable token auth and disable (key) auth on the webservice
# aks_config = AksWebservice.deploy_configuration(token_auth_enabled=True, auth_enabled=False)
O exemplo completo está disponível em https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/deployment/production-deploy-to-aks/production-deploy-to-aks.ipynb
Há várias maneiras de implantar um modelo como um serviço Web, inclusive com:
o método
deploy
do Model para modelos já registrados no workspace.o método
deploy_from_image
do Webservice.o método
deploy_from_model
do Webservice para modelos já registrados no workspace. Esse método criará uma imagem.o método
deploy
do Webservice, que registrará um modelo e criará uma imagem.
Para obter informações sobre como trabalhar com serviços Web, consulte
Consumir um modelo de Azure Machine Learning implantado como um serviço Web
Monitorar e coletar dados de pontos de extremidade de serviço Web do ML
A seção Variáveis lista os atributos de uma representação local do objeto AksWebservice na nuvem. Essas variáveis devem ser consideradas somente leitura. Alterar os valores não será refletido no objeto de nuvem correspondente.
Variáveis
Nome | Description |
---|---|
enable_app_insights
|
Se o log do AppInsights está habilitado ou não para o serviço Web. |
autoscaler
|
O objeto Autoscaler para o serviço Web. |
compute_name
|
O nome do ComputeTarget em que o serviço Web está implantado. |
container_resource_requirements
|
Os requisitos de recursos do contêiner para o serviço Web. |
liveness_probe_requirements
|
Os requisitos de sondagem de atividade para o serviço Web. |
data_collection
|
O objeto DataCollection para o serviço Web. |
max_concurrent_requests_per_container
|
O número máximo de solicitações simultâneas por contêiner para o serviço Web. |
max_request_wait_time
|
O tempo de espera máximo de solicitação para o serviço Web, em milissegundos. |
num_replicas
|
O número de réplicas para o serviço Web. Cada réplica corresponde a um pod do AKS. |
scoring_timeout_ms
|
O tempo de pontuação para o serviço Web, em milissegundos. |
azureml.core.webservice.AksWebservice.scoring_uri
|
O ponto de extremidade de pontuação para o serviço Web |
is_default
|
Se o serviço Web for a versão padrão para o AksEndpoint pai. |
traffic_percentile
|
Qual percentual de tráfego rotear para o serviço Web no AksEndpoint pai. |
version_type
|
O tipo de versão para o serviço Web no AksEndpoint pai. |
token_auth_enabled
|
Se a autenticação de token está ou não habilitada para o serviço Web. |
environment
|
O objeto Environment que foi usado para criar o serviço Web. |
azureml.core.webservice.AksWebservice.models
|
Uma lista de modelos implantados no serviço Web. |
deployment_status
|
O status de implantação do serviço Web. |
namespace
|
O namespace do AKS do serviço Web. |
azureml.core.webservice.AksWebservice.swagger_uri
|
O ponto de extremidade do swagger para o serviço Web. |
Métodos
add_properties |
Adiciona pares chave-valor ao dicionário de propriedades desse serviço Web. |
add_tags |
Adiciona pares de chave-valor ao dicionário de marcas desse serviço Web. Gera WebserviceException. |
deploy_configuration |
Cria um objeto de configuração para implantação em um destino de computação do AKS. |
get_access_token |
Recupere o token de autenticação para esse serviço Web. |
get_token |
PRETERIDO. Use o método Recupere o token de autenticação para esse serviço Web. |
remove_tags |
Remove as chaves especificadas do dicionário de marcas deste serviço Web. |
run |
Chama esse serviço Web com a entrada fornecida. |
serialize |
Converte esse serviço Web em um dicionário serializado JSON. |
update |
Atualiza o serviço Web com as propriedades fornecidas. Os valores deixados como None permanecerão inalterados neste serviço Web. |
add_properties
Adiciona pares chave-valor ao dicionário de propriedades desse serviço Web.
add_properties(properties)
Parâmetros
Nome | Description |
---|---|
properties
Obrigatório
|
O dicionário de propriedades a adicionar. |
add_tags
Adiciona pares de chave-valor ao dicionário de marcas desse serviço Web.
Gera WebserviceException.
add_tags(tags)
Parâmetros
Nome | Description |
---|---|
tags
Obrigatório
|
O dicionário de marcas a adicionar. |
Exceções
Tipo | Description |
---|---|
deploy_configuration
Cria um objeto de configuração para implantação em um destino de computação do AKS.
static deploy_configuration(autoscale_enabled=None, autoscale_min_replicas=None, autoscale_max_replicas=None, autoscale_refresh_seconds=None, autoscale_target_utilization=None, collect_model_data=None, auth_enabled=None, cpu_cores=None, memory_gb=None, enable_app_insights=None, scoring_timeout_ms=None, replica_max_concurrent_requests=None, max_request_wait_time=None, num_replicas=None, primary_key=None, secondary_key=None, tags=None, properties=None, description=None, gpu_cores=None, period_seconds=None, initial_delay_seconds=None, timeout_seconds=None, success_threshold=None, failure_threshold=None, namespace=None, token_auth_enabled=None, compute_target_name=None, cpu_cores_limit=None, memory_gb_limit=None, blobfuse_enabled=None)
Parâmetros
Nome | Description |
---|---|
autoscale_enabled
|
Se o cálculo automático deve ou não ser habilitado para este serviço Web. O valor padrão será True se num_replicas for None. Valor padrão: None
|
autoscale_min_replicas
|
O número mínimo de contêineres a serem usados no dimensionamento automático desse serviço Web. O valor padrão é 1. Valor padrão: None
|
autoscale_max_replicas
|
O número máximo de contêineres a serem usados no dimensionamento automático desse serviço Web. O valor padrão é 10. Valor padrão: None
|
autoscale_refresh_seconds
|
Com que frequência o dimensionador automático deve tentar dimensionar esse serviço Web. O valor padrão é 1. Valor padrão: None
|
autoscale_target_utilization
|
A utilização de destino (em percentual de 100) que o dimensionador automático deve tentar manter para esse serviço Web. O valor padrão é 70. Valor padrão: None
|
collect_model_data
|
Se a coleta de dados de modelo deve ou não ser habilitada para esse serviço Web. Usa False como padrão. Valor padrão: None
|
auth_enabled
|
Se deve ou não habilitar a autenticação de chave para esse serviço Web. O padrão é True. Valor padrão: None
|
cpu_cores
|
O número de núcleos de CPU a serem alocados para esse serviço Web. Pode ser um decimal. O padrão é 0.1. Corresponde à solicitação do núcleo de pod, não ao limite, no Serviço de Kubernetes do Azure. Valor padrão: None
|
memory_gb
|
A quantidade de memória (em GB) a ser alocada para esse serviço Web. Pode ser um decimal. O padrão é 0.5. Corresponde à solicitação de memória de pod, não ao limite, no Serviço de Kubernetes do Azure. Valor padrão: None
|
enable_app_insights
|
Se o registro em log do Application Insights deve ou não ser habilitado para esse serviço Web. Usa False como padrão. Valor padrão: None
|
scoring_timeout_ms
|
Um tempo limite a ser imposto para chamadas de pontuação para este serviço Web. O valor padrão é 60000. Valor padrão: None
|
replica_max_concurrent_requests
|
O número máximo de solicitações simultâneas por réplica permitidas para esse serviço Web. O valor padrão é 1. Não altere o valor padrão 1 dessa configuração, a menos que seja instruído pelo suporte técnico da Microsoft ou por um membro da equipe do Azure Machine Learning. Valor padrão: None
|
max_request_wait_time
|
A quantidade máxima de tempo que uma solicitação permanece na fila (em milissegundos) antes de retornar um erro 503. O valor padrão é 500. Valor padrão: None
|
num_replicas
|
O número de contêineres alocados para este serviço Web. Sem padrão; se este parâmetro não for definido, o dimensionamento automático será habilitado por padrão. Valor padrão: None
|
primary_key
|
Uma chave de autenticação primária usada para esse serviço Web. Valor padrão: None
|
secondary_key
|
Uma chave de autenticação secundária usada para esse serviço Web. Valor padrão: None
|
tags
|
Dicionário de marcas de chave/valor para fornecer a esse serviço Web. Valor padrão: None
|
properties
|
Dicionário de propriedades de chave/valor fornecidas a esse serviço Web. Essas propriedades não podem ser alteradas após a implantação, no entanto, novos pares de chave/valor podem ser adicionados. Valor padrão: None
|
description
|
Uma descrição fornecida a esse serviço Web. Valor padrão: None
|
gpu_cores
|
O número de núcleos de GPU alocados para esse serviço Web. Assume o padrão de 0. Valor padrão: None
|
period_seconds
|
A frequência (em segundos) para realizar a investigação de atividade. O padrão é 10 segundos. O valor mínimo é 1. Valor padrão: None
|
initial_delay_seconds
|
O número de segundos depois que o contêiner é iniciado antes que as investigações de atividade sejam iniciadas. O valor padrão é 310. Valor padrão: None
|
timeout_seconds
|
O número de segundos após os quais a investigação de atividade atinge o tempo limite. O valor padrão é 2 segundos. O valor mínimo é 1. Valor padrão: None
|
success_threshold
|
O mínimo de sucessos consecutivos para que a investigação de atividade seja considerada bem-sucedida após apresentar falha. O valor padrão é 1. O valor mínimo é 1. Valor padrão: None
|
failure_threshold
|
Quando um pod for iniciado e a investigação de atividade falhar, o Kubernetes tentará o failureThreshold vezes antes de desistir. O valor padrão é 3. O valor mínimo é 1. Valor padrão: None
|
namespace
|
O namespace do Kubernetes para implantar este serviço Web: até 63 caracteres alfanuméricos minúsculos ('a'-'z', '0'-'9') e hífen ('-'). O primeiro e o último caracteres não podem ser hifens. Valor padrão: None
|
token_auth_enabled
|
Se deve ou não habilitar a autenticação de Token para esse serviço Web. Se isso estiver habilitado, os usuários poderão acessar esse serviço Web buscando um token de acesso usando as credenciais deles do Azure Active Directory. Usa False como padrão. Valor padrão: None
|
compute_target_name
|
O nome do destino de computação a ser implantado Valor padrão: None
|
cpu_cores_limit
|
O número máximo de núcleos de CPU que esse serviço Web tem permissão para usar. Pode ser um decimal. Valor padrão: None
|
memory_gb_limit
|
A quantidade máxima de memória (em GB) que esse serviço Web tem permissão para usar. Pode ser um decimal. Valor padrão: None
|
blobfuse_enabled
|
Se deve ou não habilitar o blobfuse para download de modelo para esse serviço Web. O padrão é True Valor padrão: None
|
Retornos
Tipo | Description |
---|---|
Um objeto de configuração a ser usado ao implantar um AksWebservice. |
Exceções
Tipo | Description |
---|---|
get_access_token
Recupere o token de autenticação para esse serviço Web.
get_access_token()
Retornos
Tipo | Description |
---|---|
Um objeto que descreve o token de autenticação para esse serviço Web. |
Exceções
Tipo | Description |
---|---|
get_token
PRETERIDO. Use o método get_access_token
.
Recupere o token de autenticação para esse serviço Web.
get_token()
Retornos
Tipo | Description |
---|---|
O token de autenticação para esse serviço Web e quando atualizá-lo. |
Exceções
Tipo | Description |
---|---|
remove_tags
Remove as chaves especificadas do dicionário de marcas deste serviço Web.
remove_tags(tags)
Parâmetros
Nome | Description |
---|---|
tags
Obrigatório
|
A lista de chaves para remover |
run
Chama esse serviço Web com a entrada fornecida.
run(input_data)
Parâmetros
Nome | Description |
---|---|
input_data
Obrigatório
|
<xref:varies>
A entrada para chamar o serviço Web |
Retornos
Tipo | Description |
---|---|
O resultado da chamada do serviço Web |
Exceções
Tipo | Description |
---|---|
serialize
Converte esse serviço Web em um dicionário serializado JSON.
serialize()
Retornos
Tipo | Description |
---|---|
A representação JSON desse serviço Web. |
update
Atualiza o serviço Web com as propriedades fornecidas.
Os valores deixados como None permanecerão inalterados neste serviço Web.
update(image=None, autoscale_enabled=None, autoscale_min_replicas=None, autoscale_max_replicas=None, autoscale_refresh_seconds=None, autoscale_target_utilization=None, collect_model_data=None, auth_enabled=None, cpu_cores=None, memory_gb=None, enable_app_insights=None, scoring_timeout_ms=None, replica_max_concurrent_requests=None, max_request_wait_time=None, num_replicas=None, tags=None, properties=None, description=None, models=None, inference_config=None, gpu_cores=None, period_seconds=None, initial_delay_seconds=None, timeout_seconds=None, success_threshold=None, failure_threshold=None, namespace=None, token_auth_enabled=None, cpu_cores_limit=None, memory_gb_limit=None, **kwargs)
Parâmetros
Nome | Description |
---|---|
image
|
Uma nova imagem para implantar no serviço Web Valor padrão: None
|
autoscale_enabled
|
Habilitar ou desabilitar o dimensionamento automático desse serviço Web Valor padrão: None
|
autoscale_min_replicas
|
O número mínimo de contêineres a serem usados no dimensionamento automático desse serviço Web Valor padrão: None
|
autoscale_max_replicas
|
O número máximo de contêineres a serem usados no dimensionamento automático desse serviço Web Valor padrão: None
|
autoscale_refresh_seconds
|
Com que frequência o dimensionador automático deve tentar dimensionar esse serviço Web Valor padrão: None
|
autoscale_target_utilization
|
A utilização de destino (em percentual de 100) que o dimensionador automático deve tentar manter para esse serviço Web Valor padrão: None
|
collect_model_data
|
Habilitar ou desabilitar a coleta de dados de modelo para esse serviço Web Valor padrão: None
|
auth_enabled
|
Se a autenticação deve ou não ser habilitada para esse serviço Web Valor padrão: None
|
cpu_cores
|
O número de núcleos de CPU a serem alocados para esse serviço Web. Pode ser um decimal Valor padrão: None
|
memory_gb
|
A quantidade de memória (em GB) alocada para esse serviço Web. Pode ser um decimal Valor padrão: None
|
enable_app_insights
|
Se o registro em log do Application Insights deve ou não ser habilitado para esse serviço Web Valor padrão: None
|
scoring_timeout_ms
|
Um tempo limite para aplicar chamadas de pontuação para este serviço Web Valor padrão: None
|
replica_max_concurrent_requests
|
O número máximo de solicitações simultâneas por réplica permitidas para esse serviço Web. Valor padrão: None
|
max_request_wait_time
|
A quantidade máxima de tempo que uma solicitação permanece na fila (em milissegundos) antes de retornar um erro 503 Valor padrão: None
|
num_replicas
|
O número de contêineres a serem alocados para esse serviço Web Valor padrão: None
|
tags
|
Dicionário de marcas de chave/valor para fornecer a esse serviço Web. Substituirá as marcas existentes. Valor padrão: None
|
properties
|
Dicionário de propriedades de chave-valor para adicionar ao dicionário de propriedades existente Valor padrão: None
|
description
|
Uma descrição a ser fornecida a esse serviço Web Valor padrão: None
|
models
|
Uma lista de objetos Modelo para pacote com o serviço atualizado Valor padrão: None
|
inference_config
|
Um objeto InferenceConfig usado para fornecer as propriedades de implantação de modelo necessárias. Valor padrão: None
|
gpu_cores
|
O número de núcleos de GPU a serem alocados para esse serviço Web Valor padrão: None
|
period_seconds
|
A frequência (em segundos) para realizar a investigação de atividade. O padrão é 10 segundos. O valor mínimo é 1. Valor padrão: None
|
initial_delay_seconds
|
Número de segundos depois que o contêiner é iniciado antes que as investigações de atividade sejam iniciadas. Valor padrão: None
|
timeout_seconds
|
Número de segundos após os quais a investigação de atividade expira. O padrão é 1 segundo. O valor mínimo é 1. Valor padrão: None
|
success_threshold
|
O mínimo de sucessos consecutivos para que a investigação de atividade seja considerada bem-sucedida após apresentar falha. O valor padrão é 1. O valor mínimo é 1. Valor padrão: None
|
failure_threshold
|
Quando um pod for iniciado e a investigação de atividade falhar, o Kubernetes tentará o failureThreshold vezes antes de desistir. O valor padrão é 3. O valor mínimo é 1. Valor padrão: None
|
namespace
|
O namespace do Kubernetes para implantar este serviço Web: até 63 caracteres alfanuméricos minúsculos ('a'-'z', '0'-'9') e hífen ('-'). O primeiro e o último caracteres não podem ser hifens. Valor padrão: None
|
token_auth_enabled
|
Se deve ou não habilitar a autenticação de Token para esse serviço Web. Se isso estiver habilitado, os usuários poderão acessar esse serviço Web buscando o token de acesso usando as credenciais deles do Azure Active Directory. Usa False como padrão Valor padrão: None
|
cpu_cores_limit
|
O número máximo de núcleos de CPU que esse serviço Web tem permissão para usar. Pode ser um decimal. Valor padrão: None
|
memory_gb_limit
|
A quantidade máxima de memória (em GB) que esse serviço Web tem permissão para usar. Pode ser um decimal. Valor padrão: None
|
kwargs
Obrigatório
|
<xref:varies>
inclui parâmetros para dar suporte à migração do serviço Web do AKS para o ponto de extremidade online e a implantação do Kubernetes. is_migration=True|False, compute_target=. |
Exceções
Tipo | Description |
---|---|