MLflow-modellen implementeren in batchimplementaties in Azure Machine Learning
VAN TOEPASSING OP:Azure CLI ml extension v2 (current)Python SDK azure-ai-ml v2 (current)
In dit artikel wordt beschreven hoe u MLflow-modellen implementeert in Azure Machine Learning voor batchdeductie met behulp van batcheindpunten. Wanneer u MLflow-modellen implementeert op batch-eindpunten, voert Azure Machine Learning de volgende taken uit:
- Biedt een MLflow-basisinstallatiekopieën of een gecureerde omgeving die de vereiste afhankelijkheden bevat om een Machine Learning-batchtaak uit te voeren.
- Hiermee maakt u een batchtaakpijplijn met een scorescript dat kan worden gebruikt om gegevens te verwerken met behulp van parallelle uitvoering.
Zie Overwegingen voor het implementeren naar batchdeductie voor meer informatie over de ondersteunde invoerbestandstypen en details over hoe het MLflow-model werkt.
Vereisten
Een Azure-abonnement. Als u nog geen abonnement op Azure hebt, maak dan een gratis account aan voordat u begint. Probeer de gratis of betaalde versie van Azure Machine Learning.
Een Azure Machine Learning-werkruimte. Zie Azure Machine Learning-werkruimten beheren om een werkruimte te maken.
Zorg ervoor dat u de volgende machtigingen hebt in de Machine Learning-werkruimte:
- Batch-eindpunten en -implementaties maken of beheren: gebruik een eigenaar, inzender of aangepaste rol die dit toestaat
Microsoft.MachineLearningServices/workspaces/batchEndpoints/*
. - Azure Resource Manager-implementaties maken in de werkruimteresourcegroep: gebruik een eigenaar, inzender of aangepaste rol waarmee de resourcegroep waarin de werkruimte is geïmplementeerd, is toegestaan
Microsoft.Resources/deployments/write
.
- Batch-eindpunten en -implementaties maken of beheren: gebruik een eigenaar, inzender of aangepaste rol die dit toestaat
Installeer de volgende software om te werken met Machine Learning:
Voer de volgende opdracht uit om de Azure CLI en de
ml
extensie voor Azure Machine Learning te installeren:az extension add -n ml
Implementaties van pijplijnonderdelen voor Batch-eindpunten worden geïntroduceerd in versie 2.7 van de
ml
extensie voor de Azure CLI. Gebruik deaz extension update --name ml
opdracht om de nieuwste versie op te halen.
Verbinding maken met uw werkruimte
De werkruimte is de resource op het hoogste niveau voor Machine Learning. Het biedt een centrale plek om te werken met alle artefacten die u maakt wanneer u Machine Learning gebruikt. In deze sectie maakt u verbinding met de werkruimte waar u uw implementatietaken uitvoert.
Voer in de volgende opdracht de waarden in voor uw abonnements-id, werkruimte, locatie en resourcegroep:
az account set --subscription <subscription>
az configure --defaults workspace=<workspace> group=<resource-group> location=<location>
Het voorbeeld verkennen
In het voorbeeld in dit artikel ziet u hoe u een MLflow-model implementeert in een batch-eindpunt om batchvoorspellingen uit te voeren. Het MLflow-model is gebaseerd op de UCI Heart Disease Data Set. De database bevat 76 kenmerken, maar in het voorbeeld wordt slechts een subset van 14 gebruikt. Het model probeert de aanwezigheid van hart- en vaatziekten bij een patiënt te voorspellen met een geheel getal tussen 0 (geen aanwezigheid) en 1 (aanwezigheid).
Het model wordt getraind met behulp van een XGBBoost
classificatie. Alle vereiste voorverwerking wordt verpakt als een scikit-learn
pijplijn, waardoor het model een end-to-end-pijplijn is die van onbewerkte gegevens naar voorspellingen gaat.
Het voorbeeld in dit artikel is gebaseerd op codevoorbeelden in de opslagplaats azureml-examples . Als u de opdrachten lokaal wilt uitvoeren zonder YAML en andere bestanden te hoeven kopiëren/plakken, kloont u eerst de opslagplaats en wijzigt u vervolgens mappen in de map:
git clone https://github.com/Azure/azureml-examples --depth 1
cd azureml-examples/cli
De bestanden voor dit voorbeeld bevinden zich in de volgende map:
cd endpoints/batch/deploy-models/heart-classifier-mlflow
Volgen in Jupyter Notebooks
U kunt dit voorbeeld volgen met behulp van een openbare Jupyter Notebook. Open in de gekloonde opslagplaats het notebook mlflow-for-batch-tabular.ipynb .
Het MLflow-model implementeren
In deze sectie implementeert u een MLflow-model naar een batch-eindpunt, zodat u batchdeductie kunt uitvoeren op nieuwe gegevens. Voordat u verdergaat met de implementatie, moet u ervoor zorgen dat uw model is geregistreerd en dat er een beschikbaar rekencluster in de werkruimte is.
Het model registreren
Batch-eindpunten kunnen alleen geregistreerde modellen implementeren. In dit artikel gebruikt u een lokale kopie van het model in de opslagplaats. Als gevolg hiervan hoeft u het model alleen in het register in de werkruimte te publiceren.
Notitie
Als het model dat u implementeert al is geregistreerd, kunt u doorgaan naar de sectie Rekencluster maken.
Registreer het model door de volgende opdracht uit te voeren:
MODEL_NAME='heart-classifier-mlflow'
az ml model create --name $MODEL_NAME --type "mlflow_model" --path "model"
Een rekencluster maken
U moet ervoor zorgen dat de batchimplementaties kunnen worden uitgevoerd op een bepaalde beschikbare infrastructuur (compute). Batch-implementaties kunnen worden uitgevoerd op elke Machine Learning-berekening die al bestaat in de werkruimte. Meerdere batchimplementaties kunnen dezelfde rekeninfrastructuur delen.
In dit artikel werkt u aan een Machine Learning-rekencluster met de naam cpu-cluster. In het volgende voorbeeld wordt gecontroleerd of er een berekening bestaat in de werkruimte of een nieuwe berekening wordt gemaakt.
Een rekencluster maken:
az ml compute create -n batch-cluster --type amlcompute --min-instances 0 --max-instances 5
Batch-eindpunt maken
Als u een eindpunt wilt maken, hebt u een naam en beschrijving nodig. De eindpuntnaam wordt weergegeven in de URI die is gekoppeld aan uw eindpunt, dus deze moet uniek zijn binnen een Azure-regio. Er kan bijvoorbeeld slechts één batcheindpunt zijn met de naam mybatchendpoint
in de regio WestUS2.
Plaats de naam van het eindpunt in een variabele om later eenvoudig na te verwijzen:
Maak het eindpunt:
Als u een nieuw eindpunt wilt maken, maakt u een
YAML
configuratie zoals de volgende code:endpoint.yml
$schema: https://azuremlschemas.azureedge.net/latest/batchEndpoint.schema.json name: heart-classifier-batch description: A heart condition classifier for batch inference auth_mode: aad_token
Maak het eindpunt met de volgende opdracht:
az ml batch-endpoint create -n $ENDPOINT_NAME -f endpoint.yml
Batchimplementatie maken
Voor MLflow-modellen hoeft u geen omgeving of scorescript aan te geven wanneer u de implementatie maakt. Het omgevings- of scorescript wordt automatisch voor u gemaakt. U kunt echter de omgeving of het scorescript opgeven als u wilt aanpassen hoe de implementatie deductie uitvoert.
Als u een nieuwe implementatie wilt maken onder het gemaakte eindpunt, maakt u een
YAML
configuratie, zoals wordt weergegeven in de volgende code. U kunt het YAML-schema voor het volledige batcheindpunt controleren op extra eigenschappen.implementatie eenvoudig/deployment.yml
$schema: https://azuremlschemas.azureedge.net/latest/modelBatchDeployment.schema.json endpoint_name: heart-classifier-batch name: classifier-xgboost-mlflow description: A heart condition classifier based on XGBoost type: model model: azureml:heart-classifier-mlflow@latest compute: azureml:batch-cluster resources: instance_count: 2 settings: max_concurrency_per_instance: 2 mini_batch_size: 2 output_action: append_row output_file_name: predictions.csv retry_settings: max_retries: 3 timeout: 300 error_threshold: -1 logging_level: info
Maak de implementatie met de volgende opdracht:
az ml batch-deployment create --file deployment-simple/deployment.yml --endpoint-name $ENDPOINT_NAME --set-default
Belangrijk
Configureer de timeout
waarde in uw implementatie op basis van hoe lang het duurt voordat uw model deductie uitvoert op één batch. Hoe groter de batchgrootte, hoe langer de timeout
waarde. Houd er rekening mee dat de mini_batch_size
waarde het aantal bestanden in een batch aangeeft en niet het aantal steekproeven. Wanneer u met tabelgegevens werkt, kan elk bestand meerdere rijen bevatten, waardoor de tijd die het duurt voordat het batcheindpunt elk bestand verwerkt, toeneemt. Gebruik in dergelijke gevallen hoge timeout
waarden om time-outfouten te voorkomen.
Het eindpunt aanroepen
Hoewel u een specifieke implementatie binnen een eindpunt kunt aanroepen, is het gebruikelijk om het eindpunt zelf aan te roepen en het eindpunt te laten bepalen welke implementatie moet worden gebruikt. Dit type implementatie heet de standaardimplementatie. Met deze methode kunt u de standaardimplementatie wijzigen, waarmee u het model voor de implementatie kunt wijzigen zonder het contract te wijzigen met de gebruiker die het eindpunt aanroept.
Gebruik de volgende instructie om de standaardimplementatie bij te werken:
DEPLOYMENT_NAME="classifier-xgboost-mlflow"
az ml batch-endpoint update --name $ENDPOINT_NAME --set defaults.deployment_name=$DEPLOYMENT_NAME
Het batch-eindpunt is nu klaar voor gebruik.
De implementatie testen
Als u uw eindpunt wilt testen, gebruikt u een voorbeeld van niet-gelabelde gegevens in deze opslagplaats die kunnen worden gebruikt met het model. Batch-eindpunten kunnen alleen gegevens verwerken die zich in de cloud bevinden en toegankelijk zijn vanuit de Machine Learning-werkruimte. In dit voorbeeld uploadt u het voorbeeld naar een Machine Learning-gegevensarchief. U maakt een gegevensasset die kan worden gebruikt om het eindpunt aan te roepen voor scoren. Houd er rekening mee dat batcheindpunten gegevens accepteren die op verschillende locaties kunnen worden geplaatst.
Maak eerst de gegevensasset. De gegevensasset bestaat uit een map met meerdere CSV-bestanden die we parallel willen verwerken met behulp van batch-eindpunten. U kunt deze stap overslaan, omdat uw gegevens al zijn geregistreerd als gegevensasset of u een ander invoertype wilt gebruiken.
Maak een definitie van een gegevensasset in YAML:
heart-dataset-unlabeled.yml
$schema: https://azuremlschemas.azureedge.net/latest/data.schema.json name: heart-dataset-unlabeled description: An unlabeled dataset for heart classification. type: uri_folder path: data
Maak de gegevensasset:
az ml data create -f heart-dataset-unlabeled.yml
Nadat u de gegevens hebt geüpload, roept u het eindpunt aan.
Tip
In de volgende opdrachten ziet u dat de implementatienaam niet wordt aangegeven in de
invoke
bewerking. Het eindpunt stuurt de taak automatisch door naar de standaardimplementatie omdat het eindpunt slechts één implementatie heeft. U kunt een specifieke implementatie instellen door het argument/de parameterdeployment_name
aan te geven.Voer de volgende opdracht uit:
JOB_NAME = $(az ml batch-endpoint invoke --name $ENDPOINT_NAME --input azureml:heart-dataset-unlabeled@latest --query name -o tsv)
Notitie
Het hulpprogramma
jq
is mogelijk niet geïnstalleerd bij elke installatie. Zie Jq downloaden voor installatie-instructies.Er wordt een batchtaak gestart zodra de opdracht wordt geretourneerd. U kunt de status van de taak controleren totdat deze is voltooid:
Uitvoer analyseren
Uitvoervoorspellingen worden gegenereerd in het predictions.csv-bestand , zoals aangegeven in de implementatieconfiguratie. De taak genereert een uitvoer met de naam score, waar dit bestand wordt geplaatst. Er wordt slechts één bestand per batchtaak gegenereerd.
Het bestand is als volgt gestructureerd:
Eén rij per gegevenspunt dat naar het model wordt verzonden. Voor tabelgegevens bevat het bestand predictions.csv één rij voor elke rij die aanwezig is in elk verwerkt bestand. Voor andere gegevenstypen (afbeeldingen, audio, tekst) is er één rij per verwerkt bestand.
De volgende kolommen bevinden zich in het bestand (in de opgegeven volgorde):
row
(optioneel): De bijbehorende rijindex in het invoergegevensbestand. Deze kolom is alleen van toepassing als de invoergegevens tabellair zijn. Voorspellingen worden geretourneerd in dezelfde volgorde als in het invoerbestand. U kunt afhankelijk zijn van het rijnummer dat overeenkomt met de bijbehorende voorspelling.prediction
: De voorspelling die is gekoppeld aan de invoergegevens. Deze waarde wordt 'as-is' geretourneerd, omdat deze is opgegeven door de functie vanpredict().
het model.file_name
: De naam van de bestandsnaam waarin de gegevens worden gelezen. Gebruik dit veld in tabelvorm om te bepalen welke voorspelling bij elke invoergegevens hoort.
U kunt de resultaten van de taak downloaden met behulp van de taaknaam.
Gebruik de volgende opdracht om de voorspellingen te downloaden:
az ml job download --name $JOB_NAME --output-name score --download-path ./
Nadat u het bestand hebt gedownload, kunt u het bestand openen met het bewerkingsprogramma van uw voorkeur. In het volgende voorbeeld worden de voorspellingen geladen met behulp van een Pandas
dataframe.
import pandas as pd
score = pd.read_csv(
"named-outputs/score/predictions.csv", names=["row", "prediction", "file"]
)
In de uitvoer wordt een tabel weergegeven:
Rij | Voorspelling | Bestand |
---|---|---|
0 | 0 | heart-unlabeled-0.csv |
1 | 1 | heart-unlabeled-0.csv |
2 | 0 | heart-unlabeled-0.csv |
... | ... | ... |
307 | 0 | heart-unlabeled-3.csv |
Tip
U ziet dat de invoergegevens in dit voorbeeld tabelgegevens bevatten in CSV-indeling. Er zijn vier verschillende invoerbestanden: heart-unlabeled-0.csv, heart-unlabeled-1.csv, heart-unlabeled-2.csv en heart-unlabeled-3.csv.
Overwegingen voor batchdeductie bekijken
Machine Learning ondersteunt de implementatie van MLflow-modellen voor batcheindpunten zonder een scorescript aan te geven. Deze benadering is een handige manier om modellen te implementeren waarvoor grote hoeveelheden gegevens moeten worden verwerkt die vergelijkbaar zijn met batchverwerking. Machine Learning gebruikt informatie in de MLflow-modelspecificatie om het deductieproces in te delen.
De verdeling van werk aan werknemers verkennen
Batch-eindpunten distribueren werk op bestandsniveau voor gestructureerde en ongestructureerde gegevens. Als gevolg hiervan worden alleen URI-bestanden en URI-mappen ondersteund voor deze functie. Elke werkrol verwerkt batches Mini batch size
bestanden tegelijk. Voor tabellaire gegevens houden batcheindpunten geen rekening met het aantal rijen in elk bestand bij het distribueren van het werk.
Waarschuwing
Geneste mapstructuren worden niet verkend tijdens deductie. Als u uw gegevens partitioneren met behulp van mappen, moet u de structuur platmaken voordat u verdergaat.
Batch-implementaties roepen de predict
functie van het MLflow-model eenmaal per bestand aan. Voor CSV-bestanden met meerdere rijen kan deze actie een geheugenbelasting in de onderliggende rekenkracht opleggen. Het gedrag kan de tijd die nodig is voor het model verhogen om één bestand te scoren, met name voor dure modellen zoals grote taalmodellen. Als u meerdere uitzonderingen met onvoldoende geheugen of time-outvermeldingen in logboeken tegenkomt, kunt u overwegen om de gegevens in kleinere bestanden met minder rijen te splitsen of batchverwerking op rijniveau in het scorescript van het model te implementeren.
Ondersteuning voor bestandstypen controleren
De volgende gegevenstypen worden ondersteund voor batchdeductie bij het implementeren van MLflow-modellen zonder een omgeving of scorescript. Als u een ander bestandstype wilt verwerken of een andere deductie wilt uitvoeren, kunt u de implementatie maken door de implementatie van het MLflow-model aan te passen met een scorescript.
Bestandsextensie | Type geretourneerd als modelinvoer | Handtekeningvereiste |
---|---|---|
.csv , , .parquet .pqt |
pd.DataFrame |
ColSpec . Als deze niet is opgegeven, wordt het typen van kolommen niet afgedwongen. |
.png , , .jpg .jpeg , .tiff , , , .bmp .gif |
np.ndarray |
TensorSpec . De invoer wordt aangepast aan de vorm van tensors, indien beschikbaar. Als er geen handtekening beschikbaar is, worden de tensors van het type np.uint8 afgeleid. Zie Overwegingen voor MLflow-modellen die afbeeldingen verwerken voor meer informatie. |
Waarschuwing
Niet-ondersteund bestand dat mogelijk aanwezig is in de invoergegevens, zorgt ervoor dat de taak mislukt. In dergelijke gevallen ziet u een fout die lijkt op ERROR:azureml:Error processing input file: '/mnt/batch/tasks/.../a-given-file.avro'. Bestandstype 'avro' wordt niet ondersteund.
Meer informatie over het afdwingen van handtekeningen voor MLflow-modellen
Batch-implementatietaken dwingen de gegevenstypen van de invoer af tijdens het lezen van de gegevens met behulp van de beschikbare MLflow-modelhandtekening. Als gevolg hiervan voldoet uw gegevensinvoer aan de typen die zijn aangegeven in de modelhandtekening. Als de gegevens niet kunnen worden geparseerd zoals verwacht, mislukt de taak met een fout die vergelijkbaar is met ERROR:azureml:Error processing input file: '/mnt/batch/tasks/.../a-given-file.csv'. Uitzondering: ongeldige letterlijke waarde voor int() met grondtal 10: 'value'.
Tip
Handtekeningen in MLflow-modellen zijn optioneel, maar ze worden sterk aangemoedigd. Ze bieden een handige manier voor vroege detectie van problemen met gegevenscompatibiliteit. Zie Modellen vastleggen met een aangepaste handtekening, omgeving of voorbeelden voor meer informatie over het vastleggen van modellen met handtekeningen.
U kunt de modelhandtekening van uw model inspecteren door het MLmodel
bestand te openen dat is gekoppeld aan uw MLflow-model. Zie Handtekeningen in MLflow voor meer informatie over de werking van handtekeningen in MLflow.
Ondersteuning voor smaak onderzoeken
Batch-implementaties ondersteunen het implementeren van MLflow-modellen met alleen een pyfunc
smaak. Zie Modelimplementatie aanpassen met scorescript om een andere smaak te implementeren.
Modelimplementatie aanpassen met scorescript
MLflow-modellen kunnen worden geïmplementeerd op batch-eindpunten zonder een scorescript in de implementatiedefinitie aan te geven. U kunt er echter voor kiezen om dit bestand (ook wel het batchstuurprogramma genoemd) aan te geven om deductie-uitvoering aan te passen.
Doorgaans selecteert u deze werkstroom voor de volgende scenario's:
- Procesbestandstypen worden niet ondersteund door batchimplementaties van MLflow-implementaties.
- Pas aan hoe het model wordt uitgevoerd, zoals het gebruik van een specifieke smaak om het te laden met de
mlflow.<flavor>.load()
functie. - Voltooi pre- of postverwerking in uw scoreroutine, wanneer dit niet is voltooid door het model zelf.
- Pas de presentatie van het model aan dat niet goed wordt weergegeven met tabelgegevens, zoals een tensorgrafiek die een afbeelding vertegenwoordigt.
- Sta toe dat het model gegevens in segmenten kan lezen omdat het bestand niet tegelijk kan verwerken vanwege geheugenbeperkingen.
Belangrijk
Als u een scorescript wilt aangeven voor een implementatie van een MLflow-model, moet u de omgeving opgeven waarin de implementatie wordt uitgevoerd.
Het scorescript gebruiken
Gebruik de volgende stappen om een MLflow-model te implementeren met een aangepast scorescript:
Identificeer de map waarin uw MLflow-model is geplaatst.
Blader in de Azure Machine Learning-portal naar Modellen.
Selecteer het model dat u wilt implementeren en selecteer vervolgens het tabblad Artefacten .
Noteer de weergegeven map. Deze map is aangegeven toen het model werd geregistreerd.
Maak een scorescript. U ziet hoe de vorige mapnaam
model
is opgenomen in deinit()
functie.deployment-custom/code/batch_driver.py
# Copyright (c) Microsoft. All rights reserved. # Licensed under the MIT license. import os import glob import mlflow import pandas as pd import logging def init(): global model global model_input_types global model_output_names # AZUREML_MODEL_DIR is an environment variable created during deployment # It is the path to the model folder # Please provide your model's folder name if there's one model_path = glob.glob(os.environ["AZUREML_MODEL_DIR"] + "/*/")[0] # Load the model, it's input types and output names model = mlflow.pyfunc.load(model_path) if model.metadata and model.metadata.signature: if model.metadata.signature.inputs: model_input_types = dict( zip( model.metadata.signature.inputs.input_names(), model.metadata.signature.inputs.pandas_types(), ) ) if model.metadata.signature.outputs: if model.metadata.signature.outputs.has_input_names(): model_output_names = model.metadata.signature.outputs.input_names() elif len(model.metadata.signature.outputs.input_names()) == 1: model_output_names = ["prediction"] else: logging.warning( "Model doesn't contain a signature. Input data types won't be enforced." ) def run(mini_batch): print(f"run method start: {__file__}, run({len(mini_batch)} files)") data = pd.concat( map( lambda fp: pd.read_csv(fp).assign(filename=os.path.basename(fp)), mini_batch ) ) if model_input_types: data = data.astype(model_input_types) # Predict over the input data, minus the column filename which is not part of the model. pred = model.predict(data.drop("filename", axis=1)) if pred is not pd.DataFrame: if not model_output_names: model_output_names = ["pred_col" + str(i) for i in range(pred.shape[1])] pred = pd.DataFrame(pred, columns=model_output_names) return pd.concat([data, pred], axis=1)
Maak een omgeving waarin het scorescript kan worden uitgevoerd. Omdat het model in dit voorbeeld MLflow is, worden de conda-vereisten ook opgegeven in het modelpakket. Zie de MLmodel-indeling voor meer informatie over MLflow-modellen en de opgenomen bestanden.
In deze stap bouwt u de omgeving met behulp van de conda-afhankelijkheden van het bestand. U moet ook het
azureml-core
pakket opnemen dat vereist is voor Batch-implementaties.Tip
Als uw model al is geregistreerd in het modelregister, kunt u het
conda.yml
bestand dat is gekoppeld aan uw model downloaden en kopiëren. Het bestand is beschikbaar in Azure Machine Learning-studio onder Modellen>selecteren uw model in de lijst>Artefacten. Selecteer hetconda.yml
bestand in de hoofdmap en selecteer de inhoud ervan downloaden of kopiëren.Belangrijk
In dit voorbeeld wordt een Conda-omgeving gebruikt die is opgegeven bij
/heart-classifier-mlflow/environment/conda.yaml
. Dit bestand is gemaakt door het oorspronkelijke MLflow conda-afhankelijkhedenbestand te combineren en hetazureml-core
pakket toe te voegen. U kunt hetconda.yml
bestand niet rechtstreeks vanuit het model gebruiken.De implementatie configureren:
Als u een nieuwe implementatie wilt maken onder het gemaakte eindpunt, maakt u een
YAML
configuratie, zoals wordt weergegeven in het volgende codefragment. U kunt het YAML-schema voor het volledige batcheindpunt controleren op extra eigenschappen.implementatie-aangepast/deployment.yml
$schema: https://azuremlschemas.azureedge.net/latest/modelBatchDeployment.schema.json endpoint_name: heart-classifier-batch name: classifier-xgboost-custom description: A heart condition classifier based on XGBoost type: model model: azureml:heart-classifier-mlflow@latest environment: name: batch-mlflow-xgboost image: mcr.microsoft.com/azureml/openmpi4.1.0-ubuntu20.04:latest conda_file: environment/conda.yaml code_configuration: code: code scoring_script: batch_driver.py compute: azureml:batch-cluster resources: instance_count: 2 settings: max_concurrency_per_instance: 2 mini_batch_size: 2 output_action: append_row output_file_name: predictions.csv retry_settings: max_retries: 3 timeout: 300 error_threshold: -1 logging_level: info
De implementatie maken:
Het batch-eindpunt is nu klaar voor gebruik.
Resources opschonen
Nadat u de oefening hebt voltooid, verwijdert u resources die niet meer nodig zijn.
Voer de volgende code uit om het batch-eindpunt en alle onderliggende implementaties te verwijderen:
az ml batch-endpoint delete --name $ENDPOINT_NAME --yes
Met deze opdracht worden batchscoretaken niet verwijderd.