Webservice Classe
Define a funcionalidade base para implantar modelos como pontos de extremidade de serviço Web no Azure Machine Learning.
O construtor de serviço Web é usado para recuperar uma representação na nuvem de um objeto de serviço Web associado ao Workspace fornecido. Retorna uma instância de uma classe filho correspondente ao tipo específico do objeto webservice recuperado. A classe webservice permite implantar modelos de machine learning de um objeto ou Model de um Image objeto.
Para obter mais informações sobre como trabalhar com o Webservice, consulte Implantar modelos com o Azure Machine Learning.
Inicialize a instância do Webservice.
O construtor do Webservice recupera uma representação na nuvem de um objeto webservice associado ao workspace fornecido. Ele retornará uma instância de uma classe filho correspondente ao tipo específico do objeto webservice recuperado.
Construtor
Webservice(workspace, name)
Parâmetros
| Nome | Description |
|---|---|
|
workspace
Obrigatório
|
O objeto de workspace que contém o objeto Webservice a ser recuperado. |
|
name
Obrigatório
|
O nome do objeto webservice a ser recuperado. |
|
workspace
Obrigatório
|
O objeto de workspace que contém o objeto Webservice a ser recuperado. |
|
name
Obrigatório
|
O nome do objeto webservice a ser recuperado. |
Comentários
O exemplo a seguir mostra o padrão de implantação recomendado em que você cria primeiro um objeto de configuração com o deploy_configuration método da classe filho de Webservice (nesse caso AksWebservice) e, em seguida, usa a configuração com o deploy método da Model classe.
# 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 a seguir mostra como encontrar um existente AciWebservice em um workspace e excluí-lo se ele existir para que o nome possa ser reutilizado.
from azureml.core.model import InferenceConfig
from azureml.core.webservice import AciWebservice
service_name = 'my-custom-env-service'
inference_config = InferenceConfig(entry_script='score.py', environment=environment)
aci_config = AciWebservice.deploy_configuration(cpu_cores=1, memory_gb=1)
service = Model.deploy(workspace=ws,
name=service_name,
models=[model],
inference_config=inference_config,
deployment_config=aci_config,
overwrite=True)
service.wait_for_deployment(show_output=True)
Há várias maneiras de implantar um modelo como um serviço Web, inclusive com:
deploydo método para Model modelos já registrados no workspace.deploy_from_imagede Webservice imagens já criadas a partir de um modelo.deploy_from_modelde Webservice modelos já registrados no workspace. Esse método criará uma imagem.deploydo Webservicemétodo , 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 atributos de uma representação local do objeto Webservice na nuvem. Essas variáveis devem ser consideradas somente leitura. A alteração de seus valores não será refletida no objeto de nuvem correspondente.
Variáveis
| Nome | Description |
|---|---|
|
auth_enabled
|
Se o serviço Web tem ou não autenticação habilitada. |
|
compute_type
|
Para que tipo de computação o serviço Web é implantado. |
|
created_time
|
Quando o serviço Web foi criado. |
|
azureml.core.Webservice.description
|
Uma descrição do objeto Webservice. |
|
azureml.core.Webservice.tags
|
Um dicionário de marcas para o objeto Webservice. |
|
azureml.core.Webservice.name
|
O nome do serviço Web. |
|
azureml.core.Webservice.properties
|
Dicionário de propriedades de valor de chave para o serviço Web. Essas propriedades não podem ser alteradas após a implantação, no entanto, novos pares de valor de chave podem ser adicionados. |
|
created_by
|
O usuário que criou o serviço Web. |
|
error
|
Se o serviço Web não tiver sido implantado, isso conterá a mensagem de erro por que ela falhou. |
|
azureml.core.Webservice.state
|
O estado atual do webservice. |
|
updated_time
|
A última vez que o serviço Web foi atualizado. |
|
azureml.core.Webservice.workspace
|
O Workspace do Azure Machine Learning que contém esse serviço Web. |
|
token_auth_enabled
|
Se o serviço Web tem ou não a autenticação de token habilitada. |
Métodos
| check_for_existing_webservice |
Verifique se o serviço Web existe. |
| delete |
Exclua esse serviço Web de seu workspace associado. Essa chamada de função não é assíncrona. A chamada é executada até que o recurso seja excluído. Um WebserviceException será gerado se houver um problema ao excluir o modelo do Serviço de Gerenciamento de Modelos. |
| deploy |
Implantar um serviço Web de zero ou mais Model objetos. Essa função registrará todos os arquivos de modelos fornecidos e criará uma imagem no processo, tudo associado ao especificado Workspace. Use essa função quando você tiver um diretório de modelos para implantar que não foram registrados anteriormente. O webservice resultante é um ponto de extremidade em tempo real que pode ser usado para solicitações de inferência. Para obter mais informações, consulte Consumir um modelo implantado como um serviço Web. |
| deploy_from_image |
Implantar um serviço Web de um Image objeto. Use essa função se você já tiver um objeto Image criado para um modelo. O webservice resultante é um ponto de extremidade em tempo real que pode ser usado para solicitações de inferência. Para obter mais informações, consulte Consumir um modelo implantado como um serviço Web. |
| deploy_from_model |
Implantar um serviço Web de zero ou mais Model objetos. Essa função é semelhante a deploy, mas não registra os modelos. Use essa função se você tiver objetos de modelo já registrados. Isso criará uma imagem no processo, associada ao Workspace especificado. O webservice resultante é um ponto de extremidade em tempo real que pode ser usado para solicitações de inferência. Para obter mais informações, consulte Consumir um modelo implantado como um serviço Web. |
| deploy_local_from_model |
Crie e implante um LocalWebservice para teste. Requer que o Docker seja instalado e configurado. |
| deserialize |
Converta um objeto JSON de resposta do Serviço de Gerenciamento de Modelos em um objeto webservice. Falhará se o workspace fornecido não for o workspace no qual o serviço Web está registrado. |
| get_keys |
Recupere chaves de autenticação para este serviço Web. |
| get_logs |
Recupere logs para este serviço Web. |
| get_token |
Recupere o token de autenticação para esse serviço Web, com escopo para o usuário atual. |
| list |
Listar os serviços Web associados ao correspondente Workspace. Os resultados retornados podem ser filtrados usando parâmetros. |
| regen_key |
Regenere uma das chaves do Webservice, a chave 'Primária' ou 'Secundária'. Um WebserviceException será gerado se |
| run |
Chame esse serviço Web com a entrada fornecida. Método abstrato implementado por classes filho de Webservice. |
| serialize |
Converta esse objeto webservice em um dicionário serializado JSON. Use deserialize para converter novamente em um objeto webservice. |
| update |
Atualize os parâmetros de serviço Web. Este é um método abstrato implementado por classes filho de Webservice. Os parâmetros possíveis para atualizar variam de acordo com o tipo filho de serviço Web. Por exemplo, para serviços Web de Instâncias de Contêiner do Azure, consulte update parâmetros específicos. |
| update_deployment_state |
Atualize o estado atual do objeto na memória. Execute uma atualização in-loco das propriedades do objeto com base no estado atual do objeto de nuvem correspondente. Útil principalmente para sondagem manual do estado de criação. |
| wait_for_deployment |
Sondar automaticamente sobre a implantação de serviço Web em execução. Aguarde até que o serviço Web chegue a um estado terminal. Gerará um WebserviceException se atingir um estado terminal não bem-sucedido ou exceder o tempo limite fornecido. |
check_for_existing_webservice
Verifique se o serviço Web existe.
static check_for_existing_webservice(workspace, name, overwrite=False, request_func=None, check_func=None)
Parâmetros
| Nome | Description |
|---|---|
|
workspace
Obrigatório
|
|
|
name
Obrigatório
|
|
|
overwrite
|
Valor padrão: False
|
|
request_func
|
<xref:function>
função para solicitar serviço para verificar se o nome do serviço existe Valor padrão: None
|
|
check_func
|
<xref:function>
função para verificar o conteúdo da resposta de request_func Valor padrão: None
|
Exceções
| Tipo | Description |
|---|---|
delete
Exclua esse serviço Web de seu workspace associado.
Essa chamada de função não é assíncrona. A chamada é executada até que o recurso seja excluído. Um WebserviceException será gerado se houver um problema ao excluir o modelo do Serviço de Gerenciamento de Modelos.
delete()
Exceções
| Tipo | Description |
|---|---|
deploy
Implantar um serviço Web de zero ou mais Model objetos.
Essa função registrará todos os arquivos de modelos fornecidos e criará uma imagem no processo, tudo associado ao especificado Workspace. Use essa função quando você tiver um diretório de modelos para implantar que não foram registrados anteriormente.
O webservice resultante é um ponto de extremidade em tempo real que pode ser usado para solicitações de inferência. Para obter mais informações, consulte Consumir um modelo implantado como um serviço Web.
static deploy(workspace, name, model_paths, image_config, deployment_config=None, deployment_target=None, overwrite=False)
Parâmetros
| Nome | Description |
|---|---|
|
workspace
Obrigatório
|
Um objeto workspace ao qual associar o serviço Web. |
|
name
Obrigatório
|
O nome para fornecer o serviço implantado. Deve ser exclusivo para o workspace, consistir apenas em letras minúsculas, números ou traços, começar com uma letra e ter entre 3 e 32 caracteres. |
|
model_paths
Obrigatório
|
Uma lista de caminhos em disco para arquivos de modelo ou pasta. Pode ser uma lista vazia. |
|
image_config
Obrigatório
|
Um objeto ImageConfig usado para determinar as propriedades de imagem necessárias. |
|
deployment_config
|
Um WebserviceDeploymentConfiguration usado para configurar o serviço Web. Se um não for fornecido, um objeto de configuração vazio será usado com base no destino desejado. Valor padrão: None
|
|
deployment_target
|
Um ComputeTarget para implantar o serviço Web. Como as Instâncias de Contêiner do Azure não têm nenhum associado ComputeTarget, deixe esse parâmetro como Nenhum para implantar nas Instâncias de Contêiner do Azure. Valor padrão: None
|
|
overwrite
|
Substitua o serviço existente se o serviço com o nome já existir. Valor padrão: False
|
Retornos
| Tipo | Description |
|---|---|
|
Um objeto webservice correspondente ao serviço Web implantado. |
Exceções
| Tipo | Description |
|---|---|
deploy_from_image
Implantar um serviço Web de um Image objeto.
Use essa função se você já tiver um objeto Image criado para um modelo.
O webservice resultante é um ponto de extremidade em tempo real que pode ser usado para solicitações de inferência. Para obter mais informações, consulte Consumir um modelo implantado como um serviço Web.
static deploy_from_image(workspace, name, image, deployment_config=None, deployment_target=None, overwrite=False)
Parâmetros
| Nome | Description |
|---|---|
|
workspace
Obrigatório
|
Um objeto workspace ao qual associar o serviço Web. |
|
name
Obrigatório
|
O nome para fornecer o serviço implantado. Deve ser exclusivo para o workspace, consistir apenas em letras minúsculas, números ou traços, começar com uma letra e ter entre 3 e 32 caracteres. |
|
image
Obrigatório
|
Um Image objeto a ser implantado. |
|
deployment_config
|
Um WebserviceDeploymentConfiguration usado para configurar o serviço Web. Se um não for fornecido, um objeto de configuração vazio será usado com base no destino desejado. Valor padrão: None
|
|
deployment_target
|
Um ComputeTarget para implantar o serviço Web. Como as Instâncias de Contêiner do Azure não têm nenhum associado ComputeTarget, deixe esse parâmetro como Nenhum para implantar nas Instâncias de Contêiner do Azure. Valor padrão: None
|
|
overwrite
|
Substitua o serviço existente se o serviço com o nome já existir. Valor padrão: False
|
Retornos
| Tipo | Description |
|---|---|
|
Um objeto webservice correspondente ao serviço Web implantado. |
Exceções
| Tipo | Description |
|---|---|
deploy_from_model
Implantar um serviço Web de zero ou mais Model objetos.
Essa função é semelhante a deploy, mas não registra os modelos. Use essa função se você tiver objetos de modelo já registrados. Isso criará uma imagem no processo, associada ao Workspace especificado.
O webservice resultante é um ponto de extremidade em tempo real que pode ser usado para solicitações de inferência. Para obter mais informações, consulte Consumir um modelo implantado como um serviço Web.
static deploy_from_model(workspace, name, models, image_config, deployment_config=None, deployment_target=None, overwrite=False)
Parâmetros
| Nome | Description |
|---|---|
|
workspace
Obrigatório
|
Um objeto workspace ao qual associar o serviço Web. |
|
name
Obrigatório
|
O nome para fornecer o serviço implantado. Deve ser exclusivo para o workspace, consistir apenas em letras minúsculas, números ou traços, começar com uma letra e ter entre 3 e 32 caracteres. |
|
models
Obrigatório
|
Uma lista de objetos de modelo. Pode ser uma lista vazia. |
|
image_config
Obrigatório
|
Um objeto ImageConfig usado para determinar as propriedades de imagem necessárias. |
|
deployment_config
|
Um WebserviceDeploymentConfiguration usado para configurar o serviço Web. Se um não for fornecido, um objeto de configuração vazio será usado com base no destino desejado. Valor padrão: None
|
|
deployment_target
|
Um ComputeTarget para implantar o serviço Web. Como a ACI não tem nenhum associado ComputeTarget, deixe esse parâmetro como Nenhum para implantar na ACI. Valor padrão: None
|
|
overwrite
|
Substitua o serviço existente se o serviço com o nome já existir. Valor padrão: False
|
Retornos
| Tipo | Description |
|---|---|
|
Um objeto webservice correspondente ao serviço Web implantado. |
Exceções
| Tipo | Description |
|---|---|
deploy_local_from_model
Crie e implante um LocalWebservice para teste.
Requer que o Docker seja instalado e configurado.
static deploy_local_from_model(workspace, name, models, image_config, deployment_config=None, wait=False)
Parâmetros
| Nome | Description |
|---|---|
|
workspace
Obrigatório
|
Um objeto workspace ao qual associar o serviço Web. |
|
name
Obrigatório
|
O nome para fornecer o serviço implantado. Deve ser exclusivo no computador local. |
|
models
Obrigatório
|
Uma lista de objetos de modelo. Pode ser uma lista vazia. |
|
image_config
Obrigatório
|
Um objeto ImageConfig usado para determinar as propriedades de imagem de serviço necessárias. |
|
deployment_config
|
Um LocalWebserviceDeploymentConfiguration usado para configurar o serviço Web. Se um não for fornecido, um objeto de configuração vazio será usado. Valor padrão: None
|
|
wait
|
Se deve aguardar o contêiner do Docker do LocalWebservice relatar como íntegro. Gera uma exceção se o contêiner falhar. O padrão é False. Valor padrão: False
|
Retornos
| Tipo | Description |
|---|---|
Exceções
| Tipo | Description |
|---|---|
deserialize
Converta um objeto JSON de resposta do Serviço de Gerenciamento de Modelos em um objeto webservice.
Falhará se o workspace fornecido não for o workspace no qual o serviço Web está registrado.
deserialize(workspace, webservice_payload)
Parâmetros
| Nome | Description |
|---|---|
|
cls
Obrigatório
|
Indica que esse é um método de classe. |
|
workspace
Obrigatório
|
O objeto de workspace no qual o serviço Web está registrado. |
|
webservice_payload
Obrigatório
|
Um objeto JSON a ser convertido em um objeto webservice. |
Retornos
| Tipo | Description |
|---|---|
|
A representação de serviço Web do objeto JSON fornecido. |
get_keys
Recupere chaves de autenticação para este serviço Web.
get_keys()
Retornos
| Tipo | Description |
|---|---|
|
As chaves de autenticação para este serviço Web. |
Exceções
| Tipo | Description |
|---|---|
get_logs
Recupere logs para este serviço Web.
get_logs(num_lines=5000, init=False)
Parâmetros
| Nome | Description |
|---|---|
|
num_lines
|
O número máximo de linhas de log a serem recuperadas. Valor padrão: 5000
|
|
init
|
Obter logs do contêiner de inicialização Valor padrão: False
|
Retornos
| Tipo | Description |
|---|---|
|
Os logs deste serviço Web. |
Exceções
| Tipo | Description |
|---|---|
get_token
Recupere o token de autenticação para esse serviço Web, com escopo para o usuário atual.
get_token()
Retornos
| Tipo | Description |
|---|---|
|
O token de autenticação para esse webservice e quando ele deve ser atualizado depois. |
Exceções
| Tipo | Description |
|---|---|
list
Listar os serviços Web associados ao correspondente Workspace.
Os resultados retornados podem ser filtrados usando parâmetros.
static list(workspace, compute_type=None, image_name=None, image_id=None, model_name=None, model_id=None, tags=None, properties=None, image_digest=None)
Parâmetros
| Nome | Description |
|---|---|
|
workspace
Obrigatório
|
O objeto Workspace no qual listar os serviços Web. |
|
compute_type
|
Filtre para listar apenas tipos de serviço Web específicos. As opções são 'ACI', 'AKS'. Valor padrão: None
|
|
image_name
|
Filtrar lista para incluir apenas serviços Web implantados com o nome de imagem específico. Valor padrão: None
|
|
image_id
|
Filtrar lista para incluir apenas serviços Web implantados com a ID de imagem específica. Valor padrão: None
|
|
model_name
|
Filtrar lista para incluir apenas serviços Web implantados com o nome do modelo específico. Valor padrão: None
|
|
model_id
|
Filtrar lista para incluir apenas serviços Web implantados com a ID do modelo específica. Valor padrão: None
|
|
tags
|
Filtre com base na lista fornecida, por 'key' ou '[key, value]'. Ex.: ['key', ['key2', 'key2 value']] Valor padrão: None
|
|
properties
|
Filtre com base na lista fornecida, por 'key' ou '[key, value]'. Ex.: ['key', ['key2', 'key2 value']] Valor padrão: None
|
|
image_digest
|
Filtrar lista para incluir apenas serviços Web implantados com o resumo de imagem específico. Valor padrão: None
|
Retornos
| Tipo | Description |
|---|---|
|
Uma lista filtrada de serviços Web no Workspace fornecido. |
Exceções
| Tipo | Description |
|---|---|
regen_key
Regenere uma das chaves do Webservice, a chave 'Primária' ou 'Secundária'.
Um WebserviceException será gerado se key não for especificado ou não for 'Primário' ou 'Secundário'.
regen_key(key, set_key=None)
Parâmetros
| Nome | Description |
|---|---|
|
key
Obrigatório
|
A chave a ser regenerada. As opções são 'Primário' ou 'Secundário'. |
|
set_key
|
Um valor especificado pelo usuário que permite a especificação manual do valor da chave Valor padrão: None
|
Exceções
| Tipo | Description |
|---|---|
run
Chame esse serviço Web com a entrada fornecida.
Método abstrato implementado por classes filho de Webservice.
abstract run(input)
Parâmetros
| Nome | Description |
|---|---|
|
input
Obrigatório
|
<xref:varies>
Os dados de entrada com os qual chamar o serviço Web. Esses são os dados que seu modelo de machine learning espera como uma entrada para executar previsões. |
Retornos
| Tipo | Description |
|---|---|
|
O resultado de chamar o serviço Web. Isso retornará a execução de previsões do seu modelo de machine learning. |
Exceções
| Tipo | Description |
|---|---|
serialize
Converta esse objeto webservice em um dicionário serializado JSON.
Use deserialize para converter novamente em um objeto webservice.
serialize()
Retornos
| Tipo | Description |
|---|---|
|
A representação JSON deste serviço Web. |
update
Atualize os parâmetros de serviço Web.
Este é um método abstrato implementado por classes filho de Webservice. Os parâmetros possíveis para atualizar variam de acordo com o tipo filho de serviço Web. Por exemplo, para serviços Web de Instâncias de Contêiner do Azure, consulte update parâmetros específicos.
abstract update(*args)
Parâmetros
| Nome | Description |
|---|---|
|
args
Obrigatório
|
<xref:varies>
Valores a serem atualizados. |
Exceções
| Tipo | Description |
|---|---|
update_deployment_state
Atualize o estado atual do objeto na memória.
Execute uma atualização in-loco das propriedades do objeto com base no estado atual do objeto de nuvem correspondente. Útil principalmente para sondagem manual do estado de criação.
update_deployment_state()
wait_for_deployment
Sondar automaticamente sobre a implantação de serviço Web em execução.
Aguarde até que o serviço Web chegue a um estado terminal. Gerará um WebserviceException se atingir um estado terminal não bem-sucedido ou exceder o tempo limite fornecido.
wait_for_deployment(show_output=False, timeout_sec=None)
Parâmetros
| Nome | Description |
|---|---|
|
show_output
|
Indica se a saída mais detalhada deve ser impressa. Valor padrão: False
|
|
timeout_sec
|
Gere uma exceção se a implantação exceder o tempo limite especificado. Valor padrão: None
|
Exceções
| Tipo | Description |
|---|---|