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
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
- enable_app_insights
- bool
Se o registo do AppInsights está ou não ativado para o Serviço Web.
- autoscaler
- AutoScaler
O objeto Dimensionador Automático para o Webservice.
- compute_name
- str
O nome do ComputeTarget no qual o Webservice está implementado.
- container_resource_requirements
- ContainerResourceRequirements
Os requisitos de recursos de contentor para o Webservice.
- liveness_probe_requirements
- LivenessProbeRequirements
Os requisitos da pesquisa liveness para o Webservice.
- data_collection
- DataCollection
O objeto DataCollection para o Webservice.
- max_concurrent_requests_per_container
- int
O número máximo de pedidos simultâneos por contentor para o Serviço Web.
- max_request_wait_time
- int
O tempo máximo de espera do pedido para o Webservice, em milissegundos.
- num_replicas
- int
O número de réplicas para o Webservice. Cada réplica corresponde a um pod do AKS.
- scoring_timeout_ms
- int
O tempo limite de classificação para o Webservice, em milissegundos.
- azureml.core.webservice.AksWebservice.scoring_uri
- str
O ponto final de classificação do Webservice
- is_default
- bool
Se o Webservice for a versão predefinida do AksEndpoint principal.
- traffic_percentile
- int
Que percentagem de tráfego a encaminhar para o Serviço Web no AksEndpoint principal.
- version_type
- VersionType
O tipo de versão do Serviço Web no AksEndpoint principal.
- token_auth_enabled
- bool
Se a autenticação de token está ou não ativada para o Serviço Web.
- environment
- Environment
O objeto Ambiente que foi utilizado para criar o Webservice.
Uma lista de Modelos implementados no Webservice.
- deployment_status
- str
O estado de implementação do Webservice.
- namespace
- str
O espaço de nomes do AKS do Webservice.
- azureml.core.webservice.AksWebservice.swagger_uri
- str
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
add_tags
Adicione pares de valores chave ao dicionário de etiquetas deste Webservice.
Eleva um WebserviceException.
add_tags(tags)
Parâmetros
Exceções
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
- autoscale_enabled
- bool
Se pretende ativar ou não o dimensionamento automático para este webservice. A predefinição é Verdadeiro se num_replicas for Nenhum.
- autoscale_min_replicas
- int
O número mínimo de contentores a utilizar ao dimensionar automaticamente este webservice. A predefinição é 1.
- autoscale_max_replicas
- int
O número máximo de contentores a utilizar ao dimensionar automaticamente este Webservice. A predefinição é 10.
- autoscale_refresh_seconds
- int
Com que frequência o dimensionador automático deve tentar dimensionar este webservice. A predefinição é 1.
- autoscale_target_utilization
- int
A utilização de destino (em percentagem de 100) que o dimensionador automático deve tentar manter para este webservice. A predefinição é 70.
- collect_model_data
- bool
Se pretende ativar ou não a recolha de dados de modelos para este Webservice. A predefinição é Falso.
- auth_enabled
- bool
Se pretende ativar ou não a autenticação de chave para este webservice. A predefinição é Verdadeiro.
- cpu_cores
- float
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.
- memory_gb
- float
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.
- enable_app_insights
- bool
Se pretende ativar ou não o registo do Application Insights para este Webservice. A predefinição é Falso.
- scoring_timeout_ms
- int
Um tempo limite para impor chamadas de classificação para este webservice. A predefinição é 60000.
- replica_max_concurrent_requests
- int
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.
- max_request_wait_time
- int
A quantidade máxima de tempo que um pedido permanecerá na fila (em milissegundos) antes de devolver um erro 503. A predefinição é 500.
- num_replicas
- int
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.
- primary_key
- str
Uma chave de autenticação primária a utilizar para este webservice.
- secondary_key
- str
Uma chave de autenticação secundária a utilizar para este webservice.
Dicionário de etiquetas de valor de chave para dar este webservice.
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.
- gpu_cores
- int
O número de núcleos de GPU a alocar para este Webservice. A predefinição é 0.
- period_seconds
- int
Com que frequência (em segundos) executar a sonda liveness. Predefinição para 10 segundos. O valor mínimo é 1.
- initial_delay_seconds
- int
O número de segundos após o início do contentor antes de as pesquisas liveness serem iniciadas. A predefinição é 310.
- timeout_seconds
- int
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.
- success_threshold
- int
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.
- failure_threshold
- int
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.
- namespace
- str
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.
- token_auth_enabled
- bool
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.
- cpu_cores_limit
- float
O número máximo de núcleos de cpu que este Webservice pode utilizar. Pode ser um decimal.
- memory_gb_limit
- float
A quantidade máxima de memória (em GB) que este Webservice pode utilizar. Pode ser um decimal.
- blobfuse_enabled
- bool
Quer ative ou não o blobfuse para transferência de modelos para este Webservice. Predefinições para Verdadeiro
Devoluções
Um objeto de configuração a utilizar ao implementar um AksWebservice.
Tipo de retorno
Exceções
get_access_token
Obtenha o token de autenticação para este Webservice.
get_access_token()
Devoluções
Um objeto que descreve o token de autenticação para este Webservice.
Tipo de retorno
Exceções
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
O token de autenticação para este webservice e quando o atualizar.
Tipo de retorno
Exceções
remove_tags
Remova as chaves especificadas do dicionário de etiquetas deste Webservice.
remove_tags(tags)
Parâmetros
run
Chame este Serviço Web com a entrada fornecida.
run(input_data)
Parâmetros
- input_data
- <xref:varies>
A entrada para chamar o Serviço Web com
Devoluções
O resultado da chamada para o Serviço Web
Tipo de retorno
Exceções
serialize
Converta este Webservice num dicionário serializado JSON.
serialize()
Devoluções
A representação JSON deste Webservice.
Tipo de retorno
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
- autoscale_enabled
- bool
Ativar ou desativar o dimensionamento automático deste Webservice
- autoscale_min_replicas
- int
O número mínimo de contentores a utilizar ao dimensionar automaticamente este Webservice
- autoscale_max_replicas
- int
O número máximo de contentores a utilizar ao dimensionar automaticamente este Webservice
- autoscale_refresh_seconds
- int
Com que frequência o dimensionador automático deve tentar dimensionar este Webservice
- autoscale_target_utilization
- int
A utilização de destino (em percentagem em 100) que o dimensionador automático deve tentar manter para este Webservice
- collect_model_data
- bool
Ativar ou desativar a recolha de dados de modelos para este Webservice
- auth_enabled
- bool
Se pretende ou não ativar a autenticação para este Webservice
- cpu_cores
- float
O número de núcleos de cpu a alocar para este Webservice. Pode ser um decimal
- memory_gb
- float
A quantidade de memória (em GB) a alocar para este Webservice. Pode ser um decimal
- enable_app_insights
- bool
Se pretende ou não ativar o registo do Application Insights para este Serviço Web
- scoring_timeout_ms
- int
Um tempo limite para impor chamadas de classificação para este webservice
- replica_max_concurrent_requests
- int
O número máximo de pedidos simultâneos por réplica para permitir este Webservice.
- max_request_wait_time
- int
A quantidade máxima de tempo que um pedido permanecerá na fila (em milissegundos) antes de devolver um erro 503
Dicionário de etiquetas de valor chave para fornecer este Webservice. Substituirá as etiquetas existentes.
Dicionário de propriedades de valor chave a adicionar ao dicionário de propriedades existentes
Uma lista de objetos de Modelo a empacotar com o serviço atualizado
- inference_config
- InferenceConfig
Um objeto InferenceConfig utilizado para fornecer as propriedades de implementação do modelo necessárias.
- period_seconds
- int
Com que frequência (em segundos) executar a sonda liveness. Predefinição para 10 segundos. O valor mínimo é 1.
- initial_delay_seconds
- int
Número de segundos após o início do contentor antes de as sondas liveness serem iniciadas.
- timeout_seconds
- int
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.
- success_threshold
- int
Ê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.
- failure_threshold
- int
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.
- namespace
- str
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.
- token_auth_enabled
- bool
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
- cpu_cores_limit
- float
O número máximo de núcleos de cpu que este Webservice pode utilizar. Pode ser um decimal.
- memory_gb_limit
- float
A quantidade máxima de memória (em GB) que este Webservice pode utilizar. Pode ser um decimal.
- kwargs
- <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
Comentários
https://aka.ms/ContentUserFeedback.
Brevemente: Ao longo de 2024, vamos descontinuar progressivamente o GitHub Issues como mecanismo de feedback para conteúdos e substituí-lo por um novo sistema de feedback. Para obter mais informações, veja:Submeter e ver comentários