Dağıtılan bir web hizmetini güncelleştirme (v1)
ŞUNLAR IÇIN GEÇERLIDIR:Azure CLI ml uzantısı v1Python SDK azureml v1
Bu makalede, Azure Machine Learning ile dağıtılan bir web hizmetini güncelleştirmeyi öğreneceksiniz.
Önkoşullar
Bu makalede, Azure Machine Learning ile zaten bir web hizmeti dağıtmış olduğunuz varsayılır. Web hizmeti dağıtmayı öğrenmeniz gerekiyorsa aşağıdaki adımları izleyin.
Bu makaledeki kod parçacıklarında, değişkenin
ws
Workflow() oluşturucu kullanılarak veya Workspace.from_config() ile kaydedilmiş bir yapılandırma yüklenerek çalışma alanınızda zaten başlatıldığı varsayılır. Aşağıdaki kod parçacığında oluşturucunun nasıl kullanılacağı gösterilmektedir:ŞUNLAR IÇIN GEÇERLIDIR:Python SDK azureml v1
from azureml.core import Workspace ws = Workspace(subscription_id="mysubscriptionid", resource_group="myresourcegroup", workspace_name="myworkspace")
Önemli
Bu makaledeki Azure CLI komutlarından bazıları Azure Machine Learning için uzantısını veya v1'i kullanır azure-cli-ml
. v1 uzantısı desteği 30 Eylül 2025'te sona erecektir. Bu tarihe kadar v1 uzantısını yükleyip kullanabilirsiniz.
30 Eylül 2025'e ml
kadar , veya v2 uzantısına geçmenizi öneririz. v2 uzantısı hakkında daha fazla bilgi için bkz. Azure ML CLI uzantısı ve Python SDK v2.
Web hizmetini güncelleştirme
Bir web hizmetini güncelleştirmek için yöntemini kullanın update
. Web hizmetini yeni bir model, yeni bir giriş betiği veya çıkarım yapılandırmasında belirtilebilen yeni bağımlılıklar kullanacak şekilde güncelleştirebilirsiniz. Daha fazla bilgi için Webservice.update belgelerine bakın.
Bkz . AKS Hizmeti Güncelleştirme Yöntemi.
Bkz . ACI Hizmet Güncelleştirme Yöntemi.
Önemli
Modelin yeni bir sürümünü oluşturduğunuzda, kullanmak istediğiniz her hizmeti el ile güncelleştirmeniz gerekir.
Azure Machine Learning tasarımcısından yayımlanan bir web hizmetini güncelleştirmek için SDK'yi kullanamazsınız.
Önemli
Azure Kubernetes Service, =1.16 sürümleri <için Blobfuse FlexVolume sürücüsünü ve =1.17 sürümleri >için Blob CSI sürücüsünü kullanır.
Bu nedenle, küme sürümü için blobfuse yöntemini düzeltmek üzere dağıtmak üzere küme yükseltmesi sonrasında web hizmetini yeniden dağıtmak veya güncelleştirmek önemlidir.
Not
Bir işlem zaten devam ederken, aynı web hizmetindeki tüm yeni işlemler 409 çakışma hatasıyla yanıt verir. Örneğin, web hizmeti oluşturma veya güncelleştirme işlemi devam ediyorsa ve yeni bir Delete işlemi tetiklerseniz hata oluşturur.
SDK’yı kullanarak
Aşağıdaki kod, SDK'yı kullanarak bir web hizmetinin modelini, ortamını ve giriş betiğini nasıl güncelleştireceklerini gösterir:
ŞUNLAR IÇIN GEÇERLIDIR:Python SDK azureml v1
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())
CLI'yi kullanma
Ml CLI'yi kullanarak bir web hizmetini de güncelleştirebilirsiniz. Aşağıdaki örnekte yeni modeli kaydetme ve ardından yeni modeli kullanmak üzere bir web hizmetini güncelleştirme işlemleri gösterilmektedir:
ŞUNLAR IÇIN GEÇERLIDIR:Azure CLI ml uzantısı v1
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
İpucu
Bu örnekte, kayıt komutundaki model bilgilerini güncelleştirme komutuna geçirmek için bir JSON belgesi kullanılır.
Hizmeti yeni bir giriş betiği veya ortamı kullanacak şekilde güncelleştirmek için bir çıkarım yapılandırma dosyası oluşturun ve parametresiyle ic
belirtin.
Daha fazla bilgi için az ml service update belgelerine bakın.
Sonraki adımlar
- Başarısız bir dağıtımın sorunlarını giderme
- Web hizmetlerini kullanmak için istemci uygulamaları oluşturma
- Özel Docker görüntüsü kullanarak model dağıtma
- TLS kullanarak Azure Machine Learning aracılığıyla web hizmetinin güvenliğini sağlama
- Application Insights ile Azure Machine Learning modellerinizi izleme
- Üretimde modeller için veri toplama
- Model dağıtımları için olay uyarıları ve tetikleyicileri oluşturma