AksWebservice Classe
Representa um modelo de machine learning implementado como um ponto final de serviço Web no Azure Kubernetes Service.
Um serviço implementado é criado a partir de um modelo, script e ficheiros associados. O serviço Web resultante é um ponto final HTTP com balanceamento de carga com uma API REST. Pode enviar dados para esta API e receber a predição devolvida pelo modelo.
O AksWebservice implementa um único serviço num ponto final. Para implementar vários serviços num ponto final, utilize a AksEndpoint classe.
Para obter mais informações, veja Implementar um modelo num cluster de Azure Kubernetes Service.
Inicialize a instância do Webservice.
O construtor de serviços Web obtém uma representação na cloud de um objeto Webservice associado à área de trabalho fornecida. Devolverá uma instância de uma classe subordinada correspondente ao tipo específico do objeto Webservice obtido.
- Herança
-
AksWebservice
Construtor
AksWebservice(workspace, name)
Parâmetros
Name | Description |
---|---|
workspace
Necessário
|
O objeto da área de trabalho que contém o objeto Webservice a obter. |
name
Necessário
|
O nome do objeto Webservice a obter. |
Observações
O padrão de implementação recomendado é criar um objeto de configuração de implementação com o deploy_configuration
método e, em seguida, utilizá-lo com o deploy
método da Model classe, 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 a partir de https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/deployment/production-deploy-to-aks/production-deploy-to-aks.ipynb
Existem várias formas de implementar um modelo como um serviço Web, incluindo com:
deploy
método do Model para modelos já registados na área de trabalho.deploy_from_image
método de Webservice.deploy_from_model
método de Webservice para modelos já registados na área de trabalho. Este método irá criar uma imagem.deploy
método do Webservice, que irá registar um modelo e criar uma imagem.
Para obter informações sobre como trabalhar com serviços Web, consulte
Consumir um modelo do Azure Machine Learning implementado como serviço Web
Monitorizar e recolher dados de pontos finais de serviço Web de ML
A secção Variables (Variáveis ) lista os atributos de uma representação local do objeto cloud AksWebservice. Estas variáveis devem ser consideradas só de leitura. A alteração dos respetivos valores não será refletida no objeto de cloud correspondente.
Variáveis
Name | Description |
---|---|
enable_app_insights
|
Se o registo do AppInsights está ou não ativado para o Serviço Web. |
autoscaler
|
O objeto Dimensionador Automático para o Webservice. |
compute_name
|
O nome do ComputeTarget no qual o Webservice está implementado. |
container_resource_requirements
|
Os requisitos de recursos de contentor para o Webservice. |
liveness_probe_requirements
|
Os requisitos da pesquisa liveness para o Webservice. |
data_collection
|
O objeto DataCollection para o Webservice. |
max_concurrent_requests_per_container
|
O número máximo de pedidos simultâneos por contentor para o Serviço Web. |
max_request_wait_time
|
O tempo máximo de espera do pedido para o Webservice, em milissegundos. |
num_replicas
|
O número de réplicas para o Webservice. Cada réplica corresponde a um pod do AKS. |
scoring_timeout_ms
|
O tempo limite de classificação para o Webservice, em milissegundos. |
azureml.core.webservice.AksWebservice.scoring_uri
|
O ponto final de classificação do Webservice |
is_default
|
Se o Webservice for a versão predefinida do AksEndpoint principal. |
traffic_percentile
|
Que percentagem de tráfego a encaminhar para o Serviço Web no AksEndpoint principal. |
version_type
|
O tipo de versão do Serviço Web no AksEndpoint principal. |
token_auth_enabled
|
Se a autenticação de token está ou não ativada para o Serviço Web. |
environment
|
O objeto Ambiente que foi utilizado para criar o Webservice. |
azureml.core.webservice.AksWebservice.models
|
Uma lista de Modelos implementados no Webservice. |
deployment_status
|
O estado de implementação do Webservice. |
namespace
|
O espaço de nomes do AKS do Webservice. |
azureml.core.webservice.AksWebservice.swagger_uri
|
O ponto final swagger para o Webservice. |
Métodos
add_properties |
Adicione pares de valores chave ao dicionário de propriedades deste Webservice. |
add_tags |
Adicione pares de valores chave ao dicionário de etiquetas deste Webservice. Eleva um WebserviceException. |
deploy_configuration |
Crie um objeto de configuração para implementar num destino de computação do AKS. |
get_access_token |
Obtenha o token de autenticação para este Webservice. |
get_token |
PRETERIDO. Em vez disso, utilize Obtenha o token de autenticação para este Webservice. |
remove_tags |
Remova as chaves especificadas do dicionário de etiquetas deste Webservice. |
run |
Chame este Serviço Web com a entrada fornecida. |
serialize |
Converta este Webservice num dicionário serializado JSON. |
update |
Atualize o Serviço Web com as propriedades fornecidas. Os valores deixados como Nenhum permanecerão inalterados neste Serviço Web. |
add_properties
Adicione pares de valores chave ao dicionário de propriedades deste Webservice.
add_properties(properties)
Parâmetros
Name | Description |
---|---|
properties
Necessário
|
O dicionário de propriedades a adicionar. |
add_tags
Adicione pares de valores chave ao dicionário de etiquetas deste Webservice.
Eleva um WebserviceException.
add_tags(tags)
Parâmetros
Name | Description |
---|---|
tags
Necessário
|
O dicionário de etiquetas a adicionar. |
Exceções
Tipo | Description |
---|---|
deploy_configuration
Crie um objeto de configuração para implementar num 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
Name | Description |
---|---|
autoscale_enabled
|
Se pretende ativar ou não o dimensionamento automático para este webservice. A predefinição é Verdadeiro se num_replicas for Nenhum. Default value: None
|
autoscale_min_replicas
|
O número mínimo de contentores a utilizar ao dimensionar automaticamente este webservice. A predefinição é 1. Default value: None
|
autoscale_max_replicas
|
O número máximo de contentores a utilizar ao dimensionar automaticamente este Webservice. A predefinição é 10. Default value: None
|
autoscale_refresh_seconds
|
Com que frequência o dimensionador automático deve tentar dimensionar este webservice. A predefinição é 1. Default value: None
|
autoscale_target_utilization
|
A utilização de destino (em percentagem de 100) que o dimensionador automático deve tentar manter para este webservice. A predefinição é 70. Default value: None
|
collect_model_data
|
Se pretende ativar ou não a recolha de dados de modelos para este Webservice. A predefinição é Falso. Default value: None
|
auth_enabled
|
Se pretende ativar ou não a autenticação de chave para este webservice. A predefinição é Verdadeiro. Default value: None
|
cpu_cores
|
O número de núcleos de cpu a alocar para este Webservice. Pode ser um decimal. A predefinição é 0.1. Corresponde ao pedido do núcleo do pod, não ao limite, no Azure Kubernetes Service. Default value: None
|
memory_gb
|
A quantidade de memória (em GB) a alocar para este webservice. Pode ser um decimal. A predefinição é 0,5. Corresponde ao pedido de memória do pod, não ao limite, no Azure Kubernetes Service. Default value: None
|
enable_app_insights
|
Se pretende ativar ou não o registo do Application Insights para este Webservice. A predefinição é Falso. Default value: None
|
scoring_timeout_ms
|
Um tempo limite para impor chamadas de classificação para este webservice. A predefinição é 60000. Default value: None
|
replica_max_concurrent_requests
|
O número máximo de pedidos simultâneos por réplica para permitir este serviço Web. A predefinição é 1. Não altere esta definição do valor predefinido de 1, a menos que seja instruído pelo Suporte Técnico da Microsoft ou por um membro da equipa do Azure Machine Learning. Default value: None
|
max_request_wait_time
|
A quantidade máxima de tempo que um pedido permanecerá na fila (em milissegundos) antes de devolver um erro 503. A predefinição é 500. Default value: None
|
num_replicas
|
O número de contentores a alocar para este Webservice. Sem predefinição, se este parâmetro não estiver definido, o dimensionador automático está ativado por predefinição. Default value: None
|
primary_key
|
Uma chave de autenticação primária a utilizar para este webservice. Default value: None
|
secondary_key
|
Uma chave de autenticação secundária a utilizar para este webservice. Default value: None
|
tags
|
Dicionário de etiquetas de valor de chave para dar este webservice. Default value: None
|
properties
|
Dicionário de propriedades de valor de chave para fornecer este Webservice. Estas propriedades não podem ser alteradas após a implementação, no entanto, podem ser adicionados novos pares de valores chave. Default value: None
|
description
|
Uma descrição para dar a este Webservice. Default value: None
|
gpu_cores
|
O número de núcleos de GPU a alocar para este Webservice. A predefinição é 0. Default value: None
|
period_seconds
|
Com que frequência (em segundos) executar a sonda liveness. Predefinição para 10 segundos. O valor mínimo é 1. Default value: None
|
initial_delay_seconds
|
O número de segundos após o início do contentor antes de as pesquisas liveness serem iniciadas. A predefinição é 310. Default value: None
|
timeout_seconds
|
O número de segundos após o qual a sonda liveness excede o tempo limite. A predefinição é de 2 segundos. O valor mínimo é 1. Default value: None
|
success_threshold
|
Os êxitos mínimos consecutivos para a sonda liveness serem considerados bem-sucedidos depois de terem falhado. A predefinição é 1. O valor mínimo é 1. Default value: None
|
failure_threshold
|
Quando um Pod é iniciado e a sonda liveness falha, o Kubernetes tentará as horas de failureThreshold antes de desistir. A predefinição é 3. O valor mínimo é 1. Default value: None
|
namespace
|
O espaço de nomes do Kubernetes no qual pretende implementar este Webservice: até 63 carateres alfanuméricos em minúsculas ('a'-'z', '0'-'9') e hífen ('-'). O primeiro e o último carateres não podem ser hífenes. Default value: None
|
token_auth_enabled
|
Quer ative ou não a autenticação do Token para este Serviço Web. Se esta opção estiver ativada, os utilizadores podem aceder a este Webservice ao obter um token de acesso com as respetivas credenciais do Azure Active Directory. Predefinições para Falso. Default value: None
|
compute_target_name
|
O nome do destino de computação a implementar no Default value: None
|
cpu_cores_limit
|
O número máximo de núcleos de cpu que este Webservice pode utilizar. Pode ser um decimal. Default value: None
|
memory_gb_limit
|
A quantidade máxima de memória (em GB) que este Webservice pode utilizar. Pode ser um decimal. Default value: None
|
blobfuse_enabled
|
Quer ative ou não o blobfuse para transferência de modelos para este Webservice. Predefinições para Verdadeiro Default value: None
|
Devoluções
Tipo | Description |
---|---|
Um objeto de configuração a utilizar ao implementar um AksWebservice. |
Exceções
Tipo | Description |
---|---|
get_access_token
Obtenha o token de autenticação para este Webservice.
get_access_token()
Devoluções
Tipo | Description |
---|---|
Um objeto que descreve o token de autenticação para este Webservice. |
Exceções
Tipo | Description |
---|---|
get_token
PRETERIDO. Em vez disso, utilize get_access_token
o método .
Obtenha o token de autenticação para este Webservice.
get_token()
Devoluções
Tipo | Description |
---|---|
O token de autenticação para este webservice e quando o atualizar. |
Exceções
Tipo | Description |
---|---|
remove_tags
Remova as chaves especificadas do dicionário de etiquetas deste Webservice.
remove_tags(tags)
Parâmetros
Name | Description |
---|---|
tags
Necessário
|
A lista de chaves a remover |
run
Chame este Serviço Web com a entrada fornecida.
run(input_data)
Parâmetros
Name | Description |
---|---|
input_data
Necessário
|
<xref:varies>
A entrada para chamar o Serviço Web com |
Devoluções
Tipo | Description |
---|---|
O resultado da chamada para o Serviço Web |
Exceções
Tipo | Description |
---|---|
serialize
Converta este Webservice num dicionário serializado JSON.
serialize()
Devoluções
Tipo | Description |
---|---|
A representação JSON deste Webservice. |
update
Atualize o Serviço Web com as propriedades fornecidas.
Os valores deixados como Nenhum 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
Name | Description |
---|---|
image
|
Uma nova Imagem para implementar no Webservice Default value: None
|
autoscale_enabled
|
Ativar ou desativar o dimensionamento automático deste Webservice Default value: None
|
autoscale_min_replicas
|
O número mínimo de contentores a utilizar ao dimensionar automaticamente este Webservice Default value: None
|
autoscale_max_replicas
|
O número máximo de contentores a utilizar ao dimensionar automaticamente este Webservice Default value: None
|
autoscale_refresh_seconds
|
Com que frequência o dimensionador automático deve tentar dimensionar este Webservice Default value: None
|
autoscale_target_utilization
|
A utilização de destino (em percentagem em 100) que o dimensionador automático deve tentar manter para este Webservice Default value: None
|
collect_model_data
|
Ativar ou desativar a recolha de dados de modelos para este Webservice Default value: None
|
auth_enabled
|
Se pretende ou não ativar a autenticação para este Webservice Default value: None
|
cpu_cores
|
O número de núcleos de cpu a alocar para este Webservice. Pode ser um decimal Default value: None
|
memory_gb
|
A quantidade de memória (em GB) a alocar para este Webservice. Pode ser um decimal Default value: None
|
enable_app_insights
|
Se pretende ou não ativar o registo do Application Insights para este Serviço Web Default value: None
|
scoring_timeout_ms
|
Um tempo limite para impor chamadas de classificação para este webservice Default value: None
|
replica_max_concurrent_requests
|
O número máximo de pedidos simultâneos por réplica para permitir este Webservice. Default value: None
|
max_request_wait_time
|
A quantidade máxima de tempo que um pedido permanecerá na fila (em milissegundos) antes de devolver um erro 503 Default value: None
|
num_replicas
|
O número de contentores a alocar para este Webservice Default value: None
|
tags
|
Dicionário de etiquetas de valor chave para fornecer este Webservice. Substituirá as etiquetas existentes. Default value: None
|
properties
|
Dicionário de propriedades de valor chave a adicionar ao dicionário de propriedades existentes Default value: None
|
description
|
Uma descrição para fornecer este serviço Web Default value: None
|
models
|
Uma lista de objetos de Modelo a empacotar com o serviço atualizado Default value: None
|
inference_config
|
Um objeto InferenceConfig utilizado para fornecer as propriedades de implementação do modelo necessárias. Default value: None
|
gpu_cores
|
O número de núcleos gpu a alocar para este Webservice Default value: None
|
period_seconds
|
Com que frequência (em segundos) executar a sonda liveness. Predefinição para 10 segundos. O valor mínimo é 1. Default value: None
|
initial_delay_seconds
|
Número de segundos após o início do contentor antes de as sondas liveness serem iniciadas. Default value: None
|
timeout_seconds
|
Número de segundos após o qual a sonda de liveness excede o limite de tempo. A predefinição é de 1 segundo. O valor mínimo é 1. Default value: None
|
success_threshold
|
Êxitos mínimos consecutivos para que a sonda liveness seja considerada com êxito depois de ter falhado. A predefinição é 1. O valor mínimo é 1. Default value: None
|
failure_threshold
|
Quando um Pod é iniciado e a sonda liveness falha, o Kubernetes tentará falharTestenha tempos antes de desistir. A predefinição é 3. O valor mínimo é 1. Default value: None
|
namespace
|
O espaço de nomes do Kubernetes no qual pretende implementar este Webservice: até 63 carateres alfanuméricos em minúsculas ('a'-'z', '0'-'9') e carateres de hífen ('-'). Os primeiros e últimos carateres não podem ser hífenes. Default value: None
|
token_auth_enabled
|
Quer ative ou não a autenticação do Token para este Serviço Web. Se esta opção estiver ativada, os utilizadores podem aceder a este webservice ao obter o token de acesso com as respetivas credenciais do Azure Active Directory. Predefinições para Falso Default value: None
|
cpu_cores_limit
|
O número máximo de núcleos de cpu que este Webservice pode utilizar. Pode ser um decimal. Default value: None
|
memory_gb_limit
|
A quantidade máxima de memória (em GB) que este Webservice pode utilizar. Pode ser um decimal. Default value: None
|
kwargs
Necessário
|
<xref:varies>
inclua parâmetros para suportar a migração do serviço Web do AKS para o ponto final e implementação online do Kubernetes. is_migration=Verdadeiro| Falso, compute_target=. |
Exceções
Tipo | Description |
---|---|