Aktualizowanie wdrożonej usługi sieci WebUpdate a deployed web service

W tym artykule dowiesz się, jak zaktualizować usługę sieci Web, która została wdrożona przy użyciu Azure Machine Learning.In this article, you learn how to update a web service that was deployed with Azure Machine Learning.

Wymagania wstępnePrerequisites

W tym samouczku przyjęto założenie, że usługa sieci Web została już wdrożona za pomocą Azure Machine Learning.This tutorial assumes you have already deployed a web service with Azure Machine Learning. Jeśli chcesz dowiedzieć się, jak wdrożyć usługę sieci Web, wykonaj następujące kroki.If you need to learn how to deploy a web service, follow these steps.

Aktualizowanie usługi internetowejUpdate web service

Aby zaktualizować usługę sieci Web, należy użyć update metody.To update a web service, use the update method. Usługę sieci Web można zaktualizować tak, aby korzystała z nowego modelu, nowego skryptu wprowadzania lub nowych zależności, które można określić w konfiguracji wnioskowania.You can update the web service to use a new model, a new entry script, or new dependencies that can be specified in an inference configuration. Aby uzyskać więcej informacji, zobacz dokumentację usługi WebService. Update.For more information, see the documentation for Webservice.update.

Zobacz AKS usługi Update.See AKS Service Update Method.

Zobacz ACI usługi Update.See ACI Service Update Method.

Ważne

Podczas tworzenia nowej wersji modelu należy ręcznie zaktualizować każdą usługę, która ma być używana.When you create a new version of a model, you must manually update each service that you want to use it.

Nie można użyć zestawu SDK w celu zaktualizowania usługi sieci web opublikowanej przy użyciu programu Azure Machine Learning Designer.You can not use the SDK to update a web service published from the Azure Machine Learning designer.

Używanie zestawu SDKUsing the SDK

Poniższy kod pokazuje, jak używać zestawu SDK do aktualizowania skryptu modelu, środowiska i wpisu dla usługi sieci Web:The following code shows how to use the SDK to update the model, environment, and entry script for a web service:

from azureml.core import Environment
from azureml.core.webservice import Webservice
from azureml.core.model import Model, InferenceConfig

# Register new model.
new_model = Model.register(model_path="outputs/sklearn_mnist_model.pkl",
                           model_name="sklearn_mnist",
                           tags={"key": "0.1"},
                           description="test",
                           workspace=ws)

# Use version 3 of the environment.
deploy_env = Environment.get(workspace=ws,name="myenv",version="3")
inference_config = InferenceConfig(entry_script="score.py",
                                   environment=deploy_env)

service_name = 'myservice'
# Retrieve existing service.
service = Webservice(name=service_name, workspace=ws)



# Update to new model(s).
service.update(models=[new_model], inference_config=inference_config)
service.wait_for_deployment(show_output=True)
print(service.state)
print(service.get_logs())

Korzystanie z interfejsu wiersza poleceniaUsing the CLI

Usługę sieci Web można również zaktualizować za pomocą interfejsu wiersza polecenia ML.You can also update a web service by using the ML CLI. Poniższy przykład ilustruje rejestrowanie nowego modelu, a następnie aktualizowanie usługi sieci Web do korzystania z nowego modelu:The following example demonstrates registering a new model and then updating a web service to use the new model:

az ml model register -n sklearn_mnist  --asset-path outputs/sklearn_mnist_model.pkl  --experiment-name myexperiment --output-metadata-file modelinfo.json
az ml service update -n myservice --model-metadata-file modelinfo.json

Porada

W tym przykładzie dokument JSON jest używany do przekazywania informacji o modelu z polecenia rejestracji do polecenia Update.In this example, a JSON document is used to pass the model information from the registration command into the update command.

Aby zaktualizować usługę tak, aby korzystała z nowego skryptu lub środowiska wprowadzania, Utwórz plik konfiguracji wnioskowania i określ go za pomocą ic parametru.To update the service to use a new entry script or environment, create an inference configuration file and specify it with the ic parameter.

Aby uzyskać więcej informacji, zobacz AZ ml Service Update documentation.For more information, see the az ml service update documentation.

Następne krokiNext steps