Dela via


Uppdatera en distribuerad webbtjänst (v1)

GÄLLER FÖR:Azure CLI ml-tillägget v1Python SDK azureml v1

Viktigt!

Den här artikeln innehåller information om hur du använder Azure Machine Learning SDK v1. SDK v1 är inaktuell från och med den 31 mars 2025. Stödet för det upphör den 30 juni 2026. Du kan installera och använda SDK v1 fram till det datumet. Dina befintliga arbetsflöden med SDK v1 fortsätter att fungera efter supportdatumet. De kan dock utsättas för säkerhetsrisker eller förändringar som bryter kompatibiliteten vid arkitektoniska förändringar i produkten.

Vi rekommenderar att du övergår till SDK v2 före den 30 juni 2026. Mer information om SDK v2 finns i Vad är Azure Machine Learning CLI och Python SDK v2? och SDK v2-referensen.

I den här artikeln får du lära dig hur du uppdaterar en webbtjänst som har distribuerats med Azure Machine Learning.

Förutsättningar

Viktigt!

Viktigt!

Några av Azure CLI-kommandona i den här artikeln använder azure-cli-mltillägget , eller v1, för Azure Machine Learning. Stödet för CLI v1 upphörde den 30 september 2025. Microsoft tillhandahåller inte längre teknisk support eller uppdateringar för den här tjänsten. Dina befintliga arbetsflöden med CLI v1 fortsätter att fungera efter supportdatumet. De kan dock utsättas för säkerhetsrisker eller förändringar som bryter kompatibiliteten vid arkitektoniska förändringar i produkten.

Vi rekommenderar att du övergår till mltillägget , eller v2, så snart som möjligt. Mer information om v2-tillägget finns i Azure Machine Learning CLI-tillägget och Python SDK v2.

Uppdatera webbtjänst

Om du vill uppdatera en webbtjänst använder du update metoden . Du kan uppdatera webbtjänsten så att den använder en ny modell, ett nytt postskript eller nya beroenden som kan anges i en slutsatsdragningskonfiguration. Mer information finns i dokumentationen för Webservice.update.

Se AKS-tjänstuppdateringsmetod.

Se ACI-tjänstuppdateringsmetod.

Viktigt!

När du skapar en ny version av en modell måste du manuellt uppdatera varje tjänst som du vill använda den.

Du kan inte använda SDK för att uppdatera en webbtjänst som publicerats från Azure Machine Learning-designern.

Viktigt!

Azure Kubernetes Service använder Blobfuse FlexVolume-drivrutinen för versionerna <=1.16 och Blob CSI-drivrutinen för versionerna >=1.17.

Därför är det viktigt att distribuera om eller uppdatera webbtjänsten efter klusteruppgradering för att distribuera till rätt blobfuse-metod för klusterversionen.

Kommentar

När en åtgärd redan pågår svarar alla nya åtgärder på samma webbtjänst med 409 konfliktfel. Om till exempel åtgärden skapa eller uppdatera webbtjänsten pågår och om du utlöser en ny borttagningsåtgärd utlöser den ett fel.

Använda SDK

Följande kod visar hur du använder SDK:t för att uppdatera modell-, miljö- och inmatningsskriptet för en webbtjänst:

GÄLLER FÖR:Azure Machine Learning SDK v1 för Python

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())

Använda CLI

Du kan också uppdatera en webbtjänst med hjälp av ML CLI. I följande exempel visas hur du registrerar en ny modell och sedan uppdaterar en webbtjänst för att använda den nya modellen:

GÄLLER FÖR: Azure CLI ml-tillägget 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

Dricks

I det här exemplet används ett JSON-dokument för att skicka modellinformationen från registreringskommandot till uppdateringskommandot.

Om du vill uppdatera tjänsten så att den använder ett nytt postskript eller en ny miljö skapar du en inferenskonfigurationsfil och anger den med parametern ic .

Mer information finns i dokumentationen om az ml-tjänstuppdatering .

Nästa steg