Azure Machine Learning-resources maken, uitvoeren en verwijderen met REST
Er zijn verschillende manieren om uw Azure Machine Learning-resources te beheren. U kunt de portal, opdrachtregelinterface of Python SDK gebruiken. U kunt ook de REST API kiezen. De REST API maakt gebruik van HTTP-werkwoorden op een standaard manier om resources te maken, op te halen, bij te werken en te verwijderen. De REST API werkt met elke taal of elk hulpprogramma waarmee HTTP-aanvragen kunnen worden ingediend. Rest's eenvoudige structuur maakt het vaak een goede keuze in scriptomgevingen en voor MLOps-automatisering.
In dit artikel leert u het volgende:
- Een autorisatietoken ophalen
- Een correct opgemaakte REST-aanvraag maken met behulp van verificatie van de service-principal
- GET-aanvragen gebruiken om informatie op te halen over de hiërarchische resources van Azure Machine Learning
- PUT- en POST-aanvragen gebruiken om resources te maken en te wijzigen
- PUT-aanvragen gebruiken om Azure Machine Learning-werkruimten te maken
- DELETE-aanvragen gebruiken om resources op te schonen
Vereisten
- Een Azure-abonnement waarvoor u beheerdersrechten hebt. Als u geen dergelijk abonnement hebt, kunt u het gratis of betaalde persoonlijke abonnement proberen
- Een Azure Machine Learning-werkruimte.
- Beheer-REST-aanvragen maken gebruik van verificatie van de service-principal. Volg de stappen in Verificatie instellen voor Azure Machine Learning-resources en -werkstromen om een service-principal te maken in uw werkruimte
- Het krulhulpprogramma . Het curl-programma is beschikbaar in de Windows-subsysteem voor Linux of een UNIX-distributie. In PowerShell is curl een alias voor Invoke-WebRequest en
curl -d "key=val" -X POST uri
wordt .Invoke-WebRequest -Body "key=val" -Method POST -Uri uri
Een verificatietoken voor de service-principal ophalen
Beheer REST-aanvragen worden geverifieerd met een impliciete OAuth2-stroom. Deze verificatiestroom maakt gebruik van een token dat wordt geleverd door de service-principal van uw abonnement. U hebt het volgende nodig om dit token op te halen:
- Uw tenant-id (het identificeren van de organisatie waartoe uw abonnement behoort)
- Uw client-id (die wordt gekoppeld aan het gemaakte token)
- Uw clientgeheim (die u moet beveiligen)
U moet deze waarden hebben uit het antwoord op het maken van uw service-principal. Het ophalen van deze waarden wordt besproken in Verificatie instellen voor Azure Machine Learning-resources en -werkstromen. Als u uw bedrijfsabonnement gebruikt, bent u mogelijk niet gemachtigd om een service-principal te maken. In dat geval moet u een gratis of betaald persoonlijk abonnement gebruiken.
Een token ophalen:
- Een terminalvenster openen
- Voer de volgende code in op de opdrachtregel
- Vervang uw eigen waarden door
<YOUR-TENANT-ID>
,<YOUR-CLIENT-ID>
en<YOUR-CLIENT-SECRET>
. In dit artikel zijn tekenreeksen tussen punthaken variabelen die u moet vervangen door uw eigen juiste waarden. - De opdracht uitvoeren
curl -X POST https://login.microsoftonline.com/<YOUR-TENANT-ID>/oauth2/token \
-d "grant_type=client_credentials&resource=https%3A%2F%2Fmanagement.azure.com%2F&client_id=<YOUR-CLIENT-ID>&client_secret=<YOUR-CLIENT-SECRET>" \
Het antwoord moet een toegangstoken opgeven dat één uur goed is:
{
"token_type": "Bearer",
"expires_in": "3599",
"ext_expires_in": "3599",
"expires_on": "1578523094",
"not_before": "1578519194",
"resource": "https://management.azure.com/",
"access_token": "YOUR-ACCESS-TOKEN"
}
Noteer het token, omdat u dit gebruikt om alle beheeraanvragen te verifiëren. U doet dit door een autorisatieheader in te stellen in alle aanvragen:
curl -h "Authorization:Bearer <YOUR-ACCESS-TOKEN>" ...more args...
Notitie
De waarde begint met de tekenreeks Bearer, inclusief één spatie voordat u het token toevoegt.
Een lijst met resourcegroepen ophalen die zijn gekoppeld aan uw abonnement
Voer de volgende opdracht uit om de lijst met resourcegroepen op te halen die aan uw abonnement zijn gekoppeld:
curl https://management.azure.com/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups?api-version=2022-04-01 -H "Authorization:Bearer <YOUR-ACCESS-TOKEN>"
In Azure worden veel REST API's gepubliceerd. Elke serviceprovider werkt hun API op eigen frequentie bij, maar doet dit zonder bestaande programma's te verbreken. De serviceprovider gebruikt het api-version
argument om compatibiliteit te garanderen.
Belangrijk
Het api-version
argument varieert van service tot service. Voor de Machine Learning Service is 2023-10-01
bijvoorbeeld de huidige API-versie. Als u de nieuwste API-versie voor andere Azure-services wilt vinden, raadpleegt u de Naslaginformatie over de Azure REST API voor de specifieke service.
Alle REST-aanroepen moeten het api-version
argument instellen op de verwachte waarde. U kunt afhankelijk zijn van de syntaxis en semantiek van de opgegeven versie, zelfs als de API zich blijft ontwikkelen. Als u een aanvraag verzendt naar een provider zonder het api-version
argument, bevat het antwoord een door mensen leesbare lijst met ondersteunde waarden.
De bovenstaande aanroep resulteert in een gecomprimeerd JSON-antwoord van het formulier:
{
"value": [
{
"id": "/subscriptions/12345abc-abbc-1b2b-1234-57ab575a5a5a/resourceGroups/RG1",
"name": "RG1",
"type": "Microsoft.Resources/resourceGroups",
"location": "westus2",
"properties": {
"provisioningState": "Succeeded"
}
},
{
"id": "/subscriptions/12345abc-abbc-1b2b-1234-57ab575a5a5a/resourceGroups/RG2",
"name": "RG2",
"type": "Microsoft.Resources/resourceGroups",
"location": "eastus",
"properties": {
"provisioningState": "Succeeded"
}
}
]
}
Inzoomen op werkruimten en hun resources
Als u de set werkruimten in een resourcegroep wilt ophalen, voert u het volgende uit, vervangt <YOUR-SUBSCRIPTION-ID>
, <YOUR-RESOURCE-GROUP>
en <YOUR-ACCESS-TOKEN>
:
curl https://management.azure.com/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>/providers/Microsoft.MachineLearningServices/workspaces/?api-version=2023-10-01 \
-H "Authorization:Bearer <YOUR-ACCESS-TOKEN>"
Ook hier ontvangt u een JSON-lijst, deze keer met een lijst, elk item waarvan de details van een werkruimte worden beschreven:
{
"id": "/subscriptions/12345abc-abbc-1b2b-1234-57ab575a5a5a/resourceGroups/DeepLearningResourceGroup/providers/Microsoft.MachineLearningServices/workspaces/my-workspace",
"name": "my-workspace",
"type": "Microsoft.MachineLearningServices/workspaces",
"location": "centralus",
"tags": {},
"etag": null,
"properties": {
"friendlyName": "",
"description": "",
"creationTime": "2023-01-03T19:56:09.7588299+00:00",
"storageAccount": "/subscriptions/12345abc-abbc-1b2b-1234-57ab575a5a5a/resourcegroups/DeepLearningResourceGroup/providers/microsoft.storage/storageaccounts/myworkspace0275623111",
"containerRegistry": null,
"keyVault": "/subscriptions/12345abc-abbc-1b2b-1234-57ab575a5a5a/resourcegroups/DeepLearningResourceGroup/providers/microsoft.keyvault/vaults/myworkspace2525649324",
"applicationInsights": "/subscriptions/12345abc-abbc-1b2b-1234-57ab575a5a5a/resourcegroups/DeepLearningResourceGroup/providers/microsoft.insights/components/myworkspace2053523719",
"hbiWorkspace": false,
"workspaceId": "cba12345-abab-abab-abab-ababab123456",
"subscriptionState": null,
"subscriptionStatusChangeTimeStampUtc": null,
"discoveryUrl": "https://centralus.experiments.azureml.net/discovery"
},
"identity": {
"type": "SystemAssigned",
"principalId": "abcdef1-abab-1234-1234-abababab123456",
"tenantId": "1fedcba-abab-1234-1234-abababab123456"
},
"sku": {
"name": "Basic",
"tier": "Basic"
}
}
Als u met resources in een werkruimte wilt werken, schakelt u over van de algemene management.azure.com-server naar een REST API-server die specifiek is voor de locatie van de werkruimte. Noteer de waarde van de discoveryUrl
sleutel in het bovenstaande JSON-antwoord. Als u deze URL krijgt, ontvangt u een antwoord dat er ongeveer als volgt uitziet:
{
"api": "https://centralus.api.azureml.ms",
"catalog": "https://catalog.cortanaanalytics.com",
"experimentation": "https://centralus.experiments.azureml.net",
"gallery": "https://gallery.cortanaintelligence.com/project",
"history": "https://centralus.experiments.azureml.net",
"hyperdrive": "https://centralus.experiments.azureml.net",
"labeling": "https://centralus.experiments.azureml.net",
"modelmanagement": "https://centralus.modelmanagement.azureml.net",
"pipelines": "https://centralus.aether.ms",
"studiocoreservices": "https://centralus.studioservice.azureml.com"
}
De waarde van het api
antwoord is de URL van de server die u gaat gebruiken voor meer aanvragen. Als u bijvoorbeeld experimenten wilt weergeven, verzendt u de volgende opdracht. Vervang door REGIONAL-API-SERVER
de waarde van het api
antwoord (bijvoorbeeld centralus.api.azureml.ms
). YOUR-SUBSCRIPTION-ID
Vervang ook, YOUR-RESOURCE-GROUP
, YOUR-WORKSPACE-NAME
en YOUR-ACCESS-TOKEN
zoals gewoonlijk:
curl https://<REGIONAL-API-SERVER>/history/v1.0/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>/\
providers/Microsoft.MachineLearningServices/workspaces/<YOUR-WORKSPACE-NAME>/experiments?api-version=2023-10-01 \
-H "Authorization:Bearer <YOUR-ACCESS-TOKEN>"
Als u geregistreerde modellen in uw werkruimte wilt ophalen, verzendt u:
curl https://<REGIONAL-API-SERVER>/modelmanagement/v1.0/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>/\
providers/Microsoft.MachineLearningServices/workspaces/<YOUR-WORKSPACE-NAME>/models?api-version=2023-10-01 \
-H "Authorization:Bearer <YOUR-ACCESS-TOKEN>"
Als u experimenten wilt weergeven, begint het pad met history/v1.0
het weergeven van modellen, begint het pad met modelmanagement/v1.0
. De REST API is onderverdeeld in verschillende operationele groepen, elk met een afzonderlijk pad.
Gebied | Pad |
---|---|
Artifacts | /rest/api/azureml |
Gegevensopslag | /azure/machine-learning/how-to-access-data |
Hyperparameters afstemmen | hyperdrive/v1.0/ |
Modellen | modelmanagement/v1.0/ |
Uitvoergeschiedenis | execution/v1.0/ en history/v1.0/ |
U kunt de REST API verkennen met behulp van het algemene patroon van:
URL-onderdeel | Opmerking |
---|---|
https:// | |
REGIONAL-API-SERVER/ | centralus.api.azureml.ms/ |
operations-path/ | geschiedenis/v1.0/ |
abonnementen/UW ABONNEMENT-ID/ | abonnementen/abcde123-abab-abab-1234-0123456789abc/ |
resourceGroups/YOUR-RESOURCE-GROUP/ | resourceGroups/MyResourceGroup/ |
providers/operation-provider/ | providers/Microsoft.MachineLearningServices/ |
provider-resource-path/ | werkruimten/MyWorkspace/experimenten/FirstExperiment/runs/1/ |
operations-endpoint/ | artefacten/metagegevens/ |
Resources maken en wijzigen met BEHULP van PUT- en POST-aanvragen
Naast het ophalen van resources met het GET-werkwoord ondersteunt de REST API het maken van alle resources die nodig zijn voor het trainen, implementeren en bewaken van ML-oplossingen.
Voor het trainen en uitvoeren van ML-modellen zijn rekenresources vereist. U kunt de rekenresources van een werkruimte weergeven met:
curl https://management.azure.com/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>/\
providers/Microsoft.MachineLearningServices/workspaces/<YOUR-WORKSPACE-NAME>/computes?api-version=2023-10-01 \
-H "Authorization:Bearer <YOUR-ACCESS-TOKEN>"
Als u een benoemde rekenresource wilt maken of overschrijven, gebruikt u een PUT-aanvraag. In het volgende voorbeeld, naast de nu bekende vervangingen van , , en , en , vervangen YOUR-COMPUTE-NAME
, en waarden voor location
, vmSize
, en vmPriority
, en scaleSettings
.YOUR-ACCESS-TOKEN
YOUR-WORKSPACE-NAME
YOUR-RESOURCE-GROUP
YOUR-SUBSCRIPTION-ID
Met de volgende opdracht maakt u een toegewezen Standard_D1 met één knooppunt (een eenvoudige CPU-rekenresource) die na 30 minuten omlaag wordt geschaald:
curl -X PUT \
'https://management.azure.com/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>/providers/Microsoft.MachineLearningServices/workspaces/<YOUR-WORKSPACE-NAME>/computes/<YOUR-COMPUTE-NAME>?api-version=2023-10-01' \
-H 'Authorization:Bearer <YOUR-ACCESS-TOKEN>' \
-H 'Content-Type: application/json' \
-d '{
"location": "eastus",
"properties": {
"computeType": "AmlCompute",
"properties": {
"vmSize": "Standard_D1",
"vmPriority": "Dedicated",
"scaleSettings": {
"maxNodeCount": 1,
"minNodeCount": 0,
"nodeIdleTimeBeforeScaleDown": "PT30M"
}
}
}
}'
Notitie
In Windows-terminals moet u mogelijk ontsnappen aan de dubbele aanhalingstekens bij het verzenden van JSON-gegevens. Dat wil gezegd, tekst zoals "location"
wordt \"location\"
.
Een geslaagde aanvraag krijgt een 201 Created
antwoord, maar houd er rekening mee dat dit antwoord alleen betekent dat het inrichtingsproces is gestart. U moet pollen (of de portal gebruiken) om te bevestigen dat de voltooiing is voltooid.
Een werkruimte maken met REST
Elke Azure Machine Learning-werkruimte heeft een afhankelijkheid van vier andere Azure-resources: een Azure Container Registry-resource, Azure Key Vault, Azure-toepassing Insights en een Azure Storage-account. U kunt pas een werkruimte maken als deze resources bestaan. Raadpleeg de REST API-verwijzing voor de details van het maken van elke resource.
Als u een werkruimte wilt maken, plaatst u een aanroep die vergelijkbaar is met de volgende management.azure.com
. Hoewel u voor deze aanroep een groot aantal variabelen moet instellen, is het structureel identiek aan andere aanroepen die in dit artikel zijn besproken.
curl -X PUT \
'https://management.azure.com/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>\
/providers/Microsoft.MachineLearningServices/workspaces/<YOUR-NEW-WORKSPACE-NAME>?api-version=2023-10-01' \
-H 'Authorization: Bearer <YOUR-ACCESS-TOKEN>' \
-H 'Content-Type: application/json' \
-d '{
"location": "AZURE-LOCATION>",
"identity" : {
"type" : "systemAssigned"
},
"properties": {
"friendlyName" : "<YOUR-WORKSPACE-FRIENDLY-NAME>",
"description" : "<YOUR-WORKSPACE-DESCRIPTION>",
"containerRegistry" : "/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>/\
providers/Microsoft.ContainerRegistry/registries/<YOUR-REGISTRY-NAME>",
keyVault" : "/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>\
/providers/Microsoft.Keyvault/vaults/<YOUR-KEYVAULT-NAME>",
"applicationInsights" : "subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>/\
providers/Microsoft.insights/components/<YOUR-APPLICATION-INSIGHTS-NAME>",
"storageAccount" : "/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>/\
providers/Microsoft.Storage/storageAccounts/<YOUR-STORAGE-ACCOUNT-NAME>"
}
}'
U ontvangt een 202 Accepted
antwoord en, in de geretourneerde headers, een Location
URI. U kunt deze URI ophalen voor informatie over de implementatie, inclusief nuttige foutopsporingsgegevens als er een probleem is met een van uw afhankelijke resources (bijvoorbeeld als u vergeten bent beheerderstoegang in te schakelen voor uw containerregister).
Een werkruimte maken met een door de gebruiker toegewezen beheerde identiteit
Wanneer u een werkruimte maakt, kunt u een door de gebruiker toegewezen beheerde identiteit opgeven die wordt gebruikt voor toegang tot de bijbehorende resources: ACR, KeyVault, Storage en App Insights. Als u een werkruimte wilt maken met een door de gebruiker toegewezen beheerde identiteit, gebruikt u de onderstaande aanvraagbody.
curl -X PUT \
'https://management.azure.com/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>\
/providers/Microsoft.MachineLearningServices/workspaces/<YOUR-NEW-WORKSPACE-NAME>?api-version=2023-10-01' \
-H 'Authorization: Bearer <YOUR-ACCESS-TOKEN>' \
-H 'Content-Type: application/json' \
-d '{
"location": "AZURE-LOCATION>",
"identity": {
"type": "SystemAssigned,UserAssigned",
"userAssignedIdentities": {
"/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>/\
providers/Microsoft.ManagedIdentity/userAssignedIdentities/<YOUR-MANAGED-IDENTITY>": {}
}
},
"properties": {
"friendlyName" : "<YOUR-WORKSPACE-FRIENDLY-NAME>",
"description" : "<YOUR-WORKSPACE-DESCRIPTION>",
"containerRegistry" : "/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>/\
providers/Microsoft.ContainerRegistry/registries/<YOUR-REGISTRY-NAME>",
keyVault" : "/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>\
/providers/Microsoft.Keyvault/vaults/<YOUR-KEYVAULT-NAME>",
"applicationInsights" : "subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>/\
providers/Microsoft.insights/components/<YOUR-APPLICATION-INSIGHTS-NAME>",
"storageAccount" : "/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>/\
providers/Microsoft.Storage/storageAccounts/<YOUR-STORAGE-ACCOUNT-NAME>"
}
}'
Een werkruimte maken met door de klant beheerde versleutelingssleutels
Standaard worden metagegevens voor de werkruimte opgeslagen in een Azure Cosmos DB-exemplaar dat Door Microsoft wordt onderhouden. Deze gegevens worden versleuteld met door Microsoft beheerde sleutels. In plaats van de door Microsoft beheerde sleutel te gebruiken, kunt u ook uw eigen sleutel opgeven. Hiermee maakt u een andere set resources in uw Azure-abonnement om uw gegevens op te slaan.
Als u een werkruimte wilt maken die gebruikmaakt van uw sleutels voor versleuteling, moet u voldoen aan de volgende vereisten:
- De Service-principal van Azure Machine Learning moet inzendertoegang hebben tot uw Azure-abonnement.
- U moet een bestaande Azure Key Vault hebben die een versleutelingssleutel bevat.
- De Azure Key Vault moet aanwezig zijn in dezelfde Azure-regio waar u de Azure Machine Learning-werkruimte maakt.
- Azure Key Vault moet voorlopig verwijderen en opschonen zijn ingeschakeld om te beveiligen tegen gegevensverlies als er onbedoelde verwijdering is.
- U moet een toegangsbeleid hebben in Azure Key Vault waarmee toegang tot de Azure Cosmos DB-toepassing wordt verleend, verpakt en uitpakt.
Als u een werkruimte wilt maken die gebruikmaakt van een door de gebruiker toegewezen beheerde identiteit en door de klant beheerde sleutels voor versleuteling, gebruikt u de onderstaande aanvraagbody. Wanneer u een door de gebruiker toegewezen beheerde identiteit voor de werkruimte gebruikt, stelt u de userAssignedIdentity
eigenschap ook in op de resource-id van de beheerde identiteit.
curl -X PUT \
'https://management.azure.com/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>\
/providers/Microsoft.MachineLearningServices/workspaces/<YOUR-NEW-WORKSPACE-NAME>?api-version=2023-10-01' \
-H 'Authorization: Bearer <YOUR-ACCESS-TOKEN>' \
-H 'Content-Type: application/json' \
-d '{
"location": "eastus2euap",
"identity": {
"type": "SystemAssigned"
},
"properties": {
"friendlyName": "<YOUR-WORKSPACE-FRIENDLY-NAME>",
"description": "<YOUR-WORKSPACE-DESCRIPTION>",
"containerRegistry" : "/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>/\
providers/Microsoft.ContainerRegistry/registries/<YOUR-REGISTRY-NAME>",
"keyVault" : "/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>\
/providers/Microsoft.Keyvault/vaults/<YOUR-KEYVAULT-NAME>",
"applicationInsights" : "subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>/\
providers/Microsoft.insights/components/<YOUR-APPLICATION-INSIGHTS-NAME>",
"storageAccount" : "/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>/\
providers/Microsoft.Storage/storageAccounts/<YOUR-STORAGE-ACCOUNT-NAME>",
"encryption": {
"status": "Enabled",
"identity": {
"userAssignedIdentity": null
},
"keyVaultProperties": {
"keyVaultArmId": "/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>/\
providers/Microsoft.KeyVault/vaults/<YOUR-VAULT>",
"keyIdentifier": "https://<YOUR-VAULT>.vault.azure.net/keys/<YOUR-KEY>/<YOUR-KEY-VERSION>",
"identityClientId": ""
}
},
"hbiWorkspace": false
}
}'
Resources verwijderen die u niet meer nodig hebt
Sommige, maar niet alle resources ondersteunen het delete-woord. Controleer de API-verwijzing voordat u de REST API doorvoert voor gebruiksvoorbeelden voor verwijdering. Als u bijvoorbeeld een model wilt verwijderen, kunt u het volgende gebruiken:
curl
-X DELETE \
'https://<REGIONAL-API-SERVER>/modelmanagement/v1.0/subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>/providers/Microsoft.MachineLearningServices/workspaces/<YOUR-WORKSPACE-NAME>/models/<YOUR-MODEL-ID>?api-version=2022-05-01' \
-H 'Authorization:Bearer <YOUR-ACCESS-TOKEN>'
Probleemoplossing
Fouten met resourceprovider
Wanneer u een Azure Machine Learning-werkruimte maakt of een resource die door de werkruimte wordt gebruikt, ontvangt u mogelijk een foutbericht die op een van de volgende berichten lijkt:
No registered resource provider found for location {location}
The subscription is not registered to use namespace {resource-provider-namespace}
De meeste resourceproviders worden automatisch geregistreerd, maar niet allemaal. Als u dit bericht ontvangt, moet u de vermelde provider registreren.
De volgende tabel bevat een lijst met de resourceproviders die vereist zijn voor Azure Machine Learning:
Resourceprovider | Waarom dit nodig is |
---|---|
Microsoft.MachineLearningServices | De Azure Machine Learning-werkruimte maken. |
Microsoft.Storage | Azure Storage-account wordt gebruikt als de standaardopslag voor de werkruimte. |
Microsoft.ContainerRegistry | Azure Container Registry wordt door de werkruimte gebruikt om Docker-installatiekopieën te bouwen. |
Microsoft.KeyVault | Azure Key Vault wordt door de werkruimte gebruikt om geheimen op te slaan. |
Microsoft.Notebooks | Geïntegreerde notebooks in een Azure Machine Learning-rekenproces. |
Microsoft.ContainerService | Als u van plan bent getrainde modellen te implementeren in Azure Kubernetes Services. |
Als u van plan bent om een door de klant beheerde sleutel te gebruiken met Azure Machine Learning, moeten de volgende serviceproviders zijn geregistreerd:
Resourceprovider | Waarom dit nodig is |
---|---|
Microsoft.DocumentDB | Azure CosmosDB-exemplaar dat metagegevens voor de werkruimte registreert. |
Microsoft.Search | Azure Search biedt indexeringsmogelijkheden voor de werkruimte. |
Als u van plan bent om een beheerd virtueel netwerk te gebruiken met Azure Machine Learning, moet de resourceprovider Microsoft.Network worden geregistreerd. Deze resourceprovider wordt door de werkruimte gebruikt bij het maken van privé-eindpunten voor het beheerde virtuele netwerk.
Zie Fouten oplossen voor de registratie van de resourceprovider voor informatie over het registreren van resourceproviders.
De werkruimte verplaatsen
Waarschuwing
Het verplaatsen van uw Azure Machine Learning-werkruimte naar een ander abonnement of het verplaatsen van het eigen abonnement naar een nieuwe tenant wordt niet ondersteund. Als u dit doet, kan dit fouten veroorzaken.
Azure Container Registry verwijderen
De Azure Machine Learning-werkruimte maakt gebruik van Azure Container Registry (ACR) voor sommige bewerkingen. Er wordt automatisch een ACR-exemplaar gemaakt wanneer deze er eerst een nodig heeft.
Waarschuwing
Zodra een Azure Container Registry voor een werkruimte is gemaakt, verwijdert u deze niet. Hierdoor wordt uw Azure Machine Learning-werkruimte verbroken.
Volgende stappen
- Verken de volledige naslaginformatie over de Azure Machine Learning REST API.
- Azure Machine Learning verkennen met Jupyter-notebooks.