Webservice Classe

Define a funcionalidade base para a implementação de modelos como pontos finais do serviço web em Azure Machine Learning.

O construtor webservice é utilizado para recuperar uma representação em nuvem de um objeto Webservice associado ao espaço de trabalho fornecido. Devolve uma instância de uma classe infantil correspondente ao tipo específico do objeto Webservice recuperado. A classe Webservice permite a implementação de modelos de aprendizagem automática a partir de um Model ou Image objeto.

Para obter mais informações sobre o trabalho com a Webservice, consulte os modelos Implementar com Azure Machine Learning.

Herança
abc.ABC
Webservice

Construtor

Webservice(workspace, name)

Parâmetros

workspace
Workspace
Necessário

O objeto do espaço de trabalho que contém o objeto Webservice para recuperar.

name
<xref:str>
Necessário

O nome do objeto webservice para recuperar.

Observações

A amostra que se segue mostra o padrão de implementação recomendado onde primeiro cria um objeto de configuração com o deploy_configuration método da classe infantil do Webservice (neste caso) e, em AksWebservice seguida, utiliza 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)

A amostra completa 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

A amostra que se segue mostra como encontrar um existente AciWebservice num espaço de trabalho e eliminá-lo se 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)

A amostra completa está disponível a partir de https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/deployment/deploy-to-cloud/model-register-and-deploy.ipynb

Existem várias formas de implementar um modelo como webservice, incluindo com:

  • deploy método do Model para modelos já registados no espaço de trabalho.

  • deploy_from_image método de Webservice imagens já criadas a partir de um modelo.

  • deploy_from_model método para Webservice modelos já registados no espaço de trabalho. Este método criará uma imagem.

  • deploy método do Webservice , que vai registar um modelo e criar uma imagem.

Para obter informações sobre o trabalho com webservices, consulte

A secção de Variáveis lista atributos de uma representação local do objeto Webservice em nuvem. Estas variáveis devem ser consideradas apenas para leitura. A alteração dos seus valores não será refletida no objeto de nuvem correspondente.

Variáveis

auth_enabled
<xref:bool>

Se o Webservice tem ou não ativado.

compute_type
<xref:str>

Para que tipo de computação o Webservice é implementado.

created_time
<xref:datetime.datetime>

Quando o Webservice foi criado.

azureml.core.Webservice.description

Uma descrição do objeto webservice.

azureml.core.Webservice.tags

Um dicionário de tags para o objeto Webservice.

azureml.core.Webservice.name

O nome do Serviço Web.

azureml.core.Webservice.properties

Dicionário de propriedades de valor chave para o Webservice. Estas propriedades não podem ser alteradas após a implementação, no entanto podem ser adicionados novos pares de valor chave.

created_by
<xref:str>

O utilizador que criou o Webservice.

error
<xref:str>

Se o Webservice não tiver sido implementado, isto conterá a mensagem de erro por que falhou.

azureml.core.Webservice.state

O estado atual do Webservice.

updated_time
<xref:datetime.datetime>

A última vez que o Webservice foi atualizado.

azureml.core.Webservice.workspace

O espaço de trabalho Azure Machine Learning que contém este Webservice.

token_auth_enabled
<xref:bool>

Se o Webservice tem ou não auth ativo.

Métodos

check_for_existing_webservice

Verifique se existe um serviço web.

delete

Elimine este Webservice do seu espaço de trabalho associado.

Esta chamada de função não é assíncronea. A chamada é de funcionamento até que o recurso seja apagado. A WebserviceException é levantada se houver algum problema em eliminar o modelo do Serviço de Gestão de Modelos.

deploy

Implemente um Webservice a partir de zero ou mais Model objetos.

Esta função registará quaisquer ficheiros de modelos fornecidos e criará uma imagem no processo, todas associadas ao especificado Workspace . Utilize esta função quando tiver um diretório de modelos para implementar que não tenha sido previamente registado.

O Webservice resultante é um ponto final em tempo real que pode ser usado para pedidos de inferência. Para mais informações, consulte Consumir um modelo implementado como serviço web.

deploy_from_image

Implemente um Webservice a partir de um Image objeto.

Utilize esta função se já tiver um objeto Image criado para um modelo.

O Webservice resultante é um ponto final em tempo real que pode ser usado para pedidos de inferência. Para mais informações, consulte Consumir um modelo implementado como serviço web.

deploy_from_model

Implemente um Webservice a partir de zero ou mais Model objetos.

Esta função é semelhante a deploy , mas não regista os modelos. Utilize esta função se tiver objetos de modelo que já estejam registados. Isto criará uma imagem no processo, associada ao espaço de trabalho especificado.

O Webservice resultante é um ponto final em tempo real que pode ser usado para pedidos de inferência. Para mais informações, consulte Consumir um modelo implementado como serviço web.

deploy_local_from_model

Construa e implemente um LocalWebservice para testes.

Exige que o Docker seja instalado e configurado.

deserialize

Converta um objeto JSON de resposta ao Serviço de Gestão de Modelos num objeto Webservice.

Falhará se o espaço de trabalho fornecido não for o espaço de trabalho em que o Webservice está registado.

get_keys

Recupere as teclas auth para este Webservice.

get_logs

Recupere os registos para este Webservice.

get_token

Recupere o símbolo de auth para este Webservice, atento ao utilizador atual.

list

Listar os Webservices associados ao correspondente Workspace .

Os resultados devolvidos podem ser filtrados utilizando parâmetros.

regen_key

Regenerar uma das chaves do Webservice, seja a chave 'Primária' ou 'Secundária'.

A WebserviceException é levantada se não for key especificada ou não for 'Primária' ou 'Secundária'.

run

Ligue para este Webservice com a entrada fornecida.

Método abstrato implementado por classes infantis de Webservice .

serialize

Converta este objeto Webservice num dicionário serializado JSON.

Utilize deserialize para converter de volta num objeto Webservice.

update

Atualize os parâmetros do Webservice.

Este é um método abstrato implementado por classes infantis de Webservice . Os parâmetros possíveis para atualizar variam em função do tipo de criança Webservice. Por exemplo, para serviços web de instâncias de Azure Container, consulte update parâmetros específicos.

update_deployment_state

Refresque o estado atual do objeto na memória.

Efetue uma atualização in-place das propriedades do objeto com base no estado atual do objeto de nuvem correspondente. Principalmente útil para sondagens manuais do estado de criação.

wait_for_deployment

Sondagem automática sobre a implementação do Webservice em execução.

Aguarde que o Webservice chegue a um estado terminal. Lançará um WebserviceException se atingir um estado terminal não bem sucedido ou exceder o tempo limite previsto.

check_for_existing_webservice

Verifique se existe um serviço web.

check_for_existing_webservice(workspace, name, overwrite=False, request_func=None, check_func=None)

Parâmetros

workspace
Workspace
Necessário
name
<xref:str>
Necessário
overwrite
<xref:bool>
valor predefinido: False
request_func
<xref:function>
valor predefinido: None

função para solicitar serviço para verificar se o nome de serviço existe

check_func
<xref:function>
valor predefinido: None

função para verificar o conteúdo de resposta de request_func

Exceções

delete

Elimine este Webservice do seu espaço de trabalho associado.

Esta chamada de função não é assíncronea. A chamada é de funcionamento até que o recurso seja apagado. A WebserviceException é levantada se houver algum problema em eliminar o modelo do Serviço de Gestão de Modelos.

delete()

Exceções

deploy

Implemente um Webservice a partir de zero ou mais Model objetos.

Esta função registará quaisquer ficheiros de modelos fornecidos e criará uma imagem no processo, todas associadas ao especificado Workspace . Utilize esta função quando tiver um diretório de modelos para implementar que não tenha sido previamente registado.

O Webservice resultante é um ponto final em tempo real que pode ser usado para pedidos de inferência. Para mais informações, consulte Consumir um modelo implementado como serviço web.

deploy(workspace, name, model_paths, image_config, deployment_config=None, deployment_target=None, overwrite=False)

Parâmetros

workspace
Workspace
Necessário

Um objeto workspace para associar o Webservice.

name
<xref:str>
Necessário

O nome para dar o serviço implantado. Deve ser único no espaço de trabalho, consistir apenas em letras minúsculas, números ou traços, começar com uma letra, e ter entre 3 e 32 caracteres de comprimento.

model_paths
list[<xref:str>]
Necessário

Uma lista de caminhos no disco para modelar ficheiros ou pasta. Pode ser uma lista vazia.

image_config
ImageConfig
Necessário

Um objeto ImageConfig usado para determinar as propriedades de imagem necessárias.

deployment_config
WebserviceDeploymentConfiguration
valor predefinido: None

Um WebserviceDeploymentConfiguration usado para configurar o serviço web. Se não for fornecido, será utilizado um objeto de configuração vazio com base no alvo pretendido.

deployment_target
ComputeTarget
valor predefinido: None

A ComputeTarget para implantar o Webservice para. Como as instâncias do contentor Azure não têm ComputeTarget associados, deixe este parâmetro como Nenhum para implantar em Instâncias de Contentores Azure.

overwrite
<xref:bool>
valor predefinido: False

Sobrepor-se ao serviço existente se já existir serviço com nome.

Devoluções

Um objeto Webservice correspondente ao serviço web implantado.

Tipo de retorno

Exceções

deploy_from_image

Implemente um Webservice a partir de um Image objeto.

Utilize esta função se já tiver um objeto Image criado para um modelo.

O Webservice resultante é um ponto final em tempo real que pode ser usado para pedidos de inferência. Para mais informações, consulte Consumir um modelo implementado como serviço web.

deploy_from_image(workspace, name, image, deployment_config=None, deployment_target=None, overwrite=False)

Parâmetros

workspace
Workspace
Necessário

Um objeto workspace para associar o Webservice.

name
<xref:str>
Necessário

O nome para dar o serviço implantado. Deve ser único no espaço de trabalho, consistir apenas em letras minúsculas, números ou traços, começar com uma letra, e ter entre 3 e 32 caracteres de comprimento.

image
Image
Necessário

Um Image objeto para implantar.

deployment_config
WebserviceDeploymentConfiguration
valor predefinido: None

Um WebserviceDeploymentConfiguration usado para configurar o serviço web. Se não for fornecido, será utilizado um objeto de configuração vazio com base no alvo pretendido.

deployment_target
ComputeTarget
valor predefinido: None

A ComputeTarget para implantar o Webservice para. Como as instâncias do contentor Azure não têm ComputeTarget associados, deixe este parâmetro como Nenhum para implantar em Instâncias de Contentores Azure.

overwrite
<xref:bool>
valor predefinido: False

Sobrepor-se ao serviço existente se já existir serviço com nome.

Devoluções

Um objeto Webservice correspondente ao serviço web implantado.

Tipo de retorno

Exceções

deploy_from_model

Implemente um Webservice a partir de zero ou mais Model objetos.

Esta função é semelhante a deploy , mas não regista os modelos. Utilize esta função se tiver objetos de modelo que já estejam registados. Isto criará uma imagem no processo, associada ao espaço de trabalho especificado.

O Webservice resultante é um ponto final em tempo real que pode ser usado para pedidos de inferência. Para mais informações, consulte Consumir um modelo implementado como serviço web.

deploy_from_model(workspace, name, models, image_config, deployment_config=None, deployment_target=None, overwrite=False)

Parâmetros

workspace
Workspace
Necessário

Um objeto workspace para associar o Webservice.

name
<xref:str>
Necessário

O nome para dar o serviço implantado. Deve ser único no espaço de trabalho, consistir apenas em letras minúsculas, números ou traços, começar com uma letra, e ter entre 3 e 32 caracteres de comprimento.

models
list[Model]
Necessário

Uma lista de objetos modelo. Pode ser uma lista vazia.

image_config
ImageConfig
Necessário

Um objeto ImageConfig usado para determinar as propriedades de imagem necessárias.

deployment_config
WebserviceDeploymentConfiguration
valor predefinido: None

Um WebserviceDeploymentConfiguration usado para configurar o serviço web. Se não for fornecido, será utilizado um objeto de configuração vazio com base no alvo pretendido.

deployment_target
ComputeTarget
valor predefinido: None

A ComputeTarget para implantar o Webservice para. Como a ACI não tem ComputeTarget associado, deixe este parâmetro como Nenhum para implantar para o ACI.

overwrite
<xref:bool>
valor predefinido: False

Sobrepor-se ao serviço existente se já existir serviço com nome.

Devoluções

Um objeto Webservice correspondente ao serviço web implantado.

Tipo de retorno

Exceções

deploy_local_from_model

Construa e implemente um LocalWebservice para testes.

Exige que o Docker seja instalado e configurado.

deploy_local_from_model(workspace, name, models, image_config, deployment_config=None, wait=False)

Parâmetros

workspace
Workspace
Necessário

Um objeto workspace com o qual associar o Webservice.

name
<xref:str>
Necessário

O nome para dar o serviço implantado. Deve ser único na máquina local.

models
list[Model]
Necessário

Uma lista de objetos modelo. Pode ser uma lista vazia.

image_config
ImageConfig
Necessário

Um objeto ImageConfig usado para determinar as propriedades de imagem de serviço necessárias.

deployment_config
LocalWebserviceDeploymentConfiguration
valor predefinido: None

Um Site LocalWebServiceDeploymentConfiguration usado para configurar o serviço web. Se não for fornecido, será utilizado um objeto de configuração vazio.

wait
<xref:bool>
valor predefinido: False

Se esperar que o estivador do SiteWebservice se apresente como saudável. Abre uma exceção se o contentor bater. O padrão é falso.

Tipo de retorno

Exceções

deserialize

Converta um objeto JSON de resposta ao Serviço de Gestão de Modelos num objeto Webservice.

Falhará se o espaço de trabalho fornecido não for o espaço de trabalho em que o Webservice está registado.

deserialize(workspace, webservice_payload)

Parâmetros

cls
Necessário

Indica que este é um método de classe.

workspace
Workspace
Necessário

O objeto do espaço de trabalho em que o Webservice está registado.

webservice_payload
<xref:dict>
Necessário

Um objeto JSON para converter num objeto webservice.

Devoluções

A representação webservice do objeto JSON fornecido.

Tipo de retorno

Exceções

get_keys

Recupere as teclas auth para este Webservice.

get_keys()

Devoluções

As chaves auth para este Serviço Web.

Tipo de retorno

(<xref:str>, <xref:str>)

Exceções

get_logs

Recupere os registos para este Webservice.

get_logs(num_lines=5000, init=False)

Parâmetros

num_lines
<xref:int>
valor predefinido: 5000

O número máximo de linhas de registo para recuperar.

init
<xref:bool>
valor predefinido: False

Obtenha registos de recipiente init

Devoluções

Os registos deste Webservice.

Tipo de retorno

<xref:str>

Exceções

get_token

Recupere o símbolo de auth para este Webservice, atento ao utilizador atual.

get_token()

Devoluções

O símbolo auth para este Webservice e quando deve ser atualizado depois.

Tipo de retorno

<xref:str>, <xref:datetime>

Exceções

list

Listar os Webservices associados ao correspondente Workspace .

Os resultados devolvidos podem ser filtrados utilizando parâmetros.

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

workspace
Workspace
Necessário

O objeto workspace para listar os Webservices dentro

compute_type
<xref:str>
valor predefinido: None

Filtrar para listar apenas tipos específicos de Webservice. As opções são 'ACI', 'AKS'.

image_name
<xref:str>
valor predefinido: None

Lista de filtros para incluir apenas webservices implantados com o nome de imagem específico.

image_id
<xref:str>
valor predefinido: None

Lista de filtros para incluir apenas Webservices implantados com o ID de imagem específico.

model_name
<xref:str>
valor predefinido: None

Lista de filtros para incluir apenas webservices implantados com o nome de modelo específico.

model_id
<xref:str>
valor predefinido: None

Lista de filtros para incluir apenas webservices implantados com o ID do modelo específico.

tags
list
valor predefinido: None

Filtrar com base na lista fornecida, por "chave" ou "chave, valor". Ex. ['chave', ['key2', 'key2 value']]

properties
list
valor predefinido: None

Filtrar com base na lista fornecida, por "chave" ou "chave, valor". Ex. ['chave', ['key2', 'key2 value']]

image_digest
<xref:str>
valor predefinido: None

Lista de filtros para incluir apenas webservices implantados com a digestão de imagem específica.

Devoluções

Uma lista filtrada de Webservices no espaço de trabalho fornecido.

Tipo de retorno

Exceções

regen_key

Regenerar uma das chaves do Webservice, seja a chave 'Primária' ou 'Secundária'.

A WebserviceException é levantada se não for key especificada ou não for 'Primária' ou 'Secundária'.

regen_key(key, set_key=None)

Parâmetros

key
<xref:str>
Necessário

A chave para regenerar. As opções são 'Primária' ou 'Secundária'.

set_key
<xref:str>
valor predefinido: None

Um valor especificado pelo utilizador que permite especificar manualmente o valor da chave

Exceções

run

Ligue para este Webservice com a entrada fornecida.

Método abstrato implementado por classes infantis de Webservice .

run(input)

Parâmetros

input
<xref:varies>
Necessário

Os dados de entrada para ligar para o Webservice com. Estes são os dados que o seu modelo de machine learning espera como uma entrada para executar previsões.

Devoluções

O resultado de ligar para o Webservice. Isto irá devolver as previsões do seu modelo de aprendizagem automática.

Tipo de retorno

<xref:dict>

Exceções

serialize

Converta este objeto Webservice num dicionário serializado JSON.

Utilize deserialize para converter de volta num objeto Webservice.

serialize()

Devoluções

A representação JSON deste Webservice.

Tipo de retorno

<xref:dict>

Exceções

update

Atualize os parâmetros do Webservice.

Este é um método abstrato implementado por classes infantis de Webservice . Os parâmetros possíveis para atualizar variam em função do tipo de criança Webservice. Por exemplo, para serviços web de instâncias de Azure Container, consulte update parâmetros específicos.

update(*args)

Parâmetros

args
<xref:varies>
Necessário

Valores a atualizar.

Exceções

update_deployment_state

Refresque o estado atual do objeto na memória.

Efetue uma atualização in-place das propriedades do objeto com base no estado atual do objeto de nuvem correspondente. Principalmente útil para sondagens manuais do estado de criação.

update_deployment_state()

Exceções

wait_for_deployment

Sondagem automática sobre a implementação do Webservice em execução.

Aguarde que o Webservice chegue a um estado terminal. Lançará um WebserviceException se atingir um estado terminal não bem sucedido ou exceder o tempo limite previsto.

wait_for_deployment(show_output=False, timeout_sec=None)

Parâmetros

show_output
<xref:bool>
valor predefinido: False

Indica se deve imprimir mais saída verbosa.

timeout_sec
<xref:float>
valor predefinido: None

Aumente uma exceção se a implementação exceder o tempo limite dado.

Exceções