Azure Machine Learning-werkruimten beheren met de Python SDK (v1)
VAN TOEPASSING OP: Python SDK azureml v1
In dit artikel maakt, bekijkt en verwijdert u Azure Machine Learning-werkruimten voor Azure Machine Learning met behulp van de SDK voor Python.
Naarmate uw behoeften veranderen of de vereisten voor automatisering toenemen, kunt u ook werkruimten beheren met behulp van de CLI of via de VS Code-extensie.
Vereisten
- Een Azure-abonnement. Als u nog geen abonnement op Azure hebt, maak dan een gratis account aan voordat u begint. Probeer vandaag nog de gratis of betaalde versie van Azure Machine Learning.
- Als u de Python SDK gebruikt, installeert u de SDK.
Beperkingen
Wanneer u een nieuwe werkruimte maakt, kunt u automatisch services maken die nodig zijn voor de werkruimte of bestaande services gebruiken. Als u bestaande services van een ander Azure-abonnement wilt gebruiken dan de werkruimte, moet u de Azure Machine Learning-naamruimte registreren in het abonnement dat deze services bevat. Als u bijvoorbeeld een werkruimte maakt in abonnement A die gebruikmaakt van een opslagaccount in abonnement B, moet de Azure Machine Learning-naamruimte zijn geregistreerd in abonnement B voordat de werkruimte het opslagaccount kan gebruiken.
De resourceprovider voor Azure Machine Learning is Microsoft.MachineLearningServices. Zie Azure-resourceproviders en -typen voor meer informatie over het registreren of registreren ervan.
Belangrijk
Deze informatie is alleen van toepassing op resources die worden verstrekt tijdens het maken van de werkruimte: Azure Storage-accounts, Azure Container Registry, Azure Key Vault en Application Insights.
Standaard maakt het maken van een werkruimte ook een Azure Container Registry (ACR). Aangezien ACR momenteel geen unicode-tekens in resourcegroepnamen ondersteunt, gebruikt u een resourcegroep die deze tekens niet bevat.
Azure Machine Learning biedt geen ondersteuning voor hiërarchische naamruimte (Azure Data Lake Storage Gen2-functie) voor het standaardopslagaccount van de werkruimte.
Tip
Er wordt een Azure-toepassing Insights-exemplaar gemaakt wanneer u de werkruimte maakt. U kunt het Application Insights-exemplaar verwijderen nadat het cluster is gemaakt. Als u deze verwijdert, worden de gegevens die zijn verzameld uit de werkruimte beperkt en kan het lastiger zijn om problemen op te lossen. Als u het Application Insights-exemplaar verwijdert dat door de werkruimte is gemaakt, kunt u deze alleen opnieuw maken door de werkruimte te verwijderen en opnieuw te maken.
Zie Gegevens van Machine Learning-webservice-eindpunten bewaken en verzamelen voor meer informatie over het gebruik van het Application Insights-exemplaar.
Een werkruimte maken
U kunt rechtstreeks in Azure Machine Learning-studio een werkruimte maken met beperkte opties. Of gebruik een van de onderstaande methoden voor meer controle over opties.
Standaardspecificatie. Afhankelijke resources en de resourcegroep worden standaard automatisch gemaakt. Met deze code maakt u een werkruimte met de naam
myworkspace
en een resourcegroep met de naammyresourcegroup
ineastus2
.VAN TOEPASSING OP: Python SDK azureml v1
from azureml.core import Workspace ws = Workspace.create(name='myworkspace', subscription_id='<azure-subscription-id>', resource_group='myresourcegroup', create_resource_group=True, location='eastus2' )
Stel
create_resource_group
deze optie in op False als u een bestaande Azure-resourcegroep hebt die u voor de werkruimte wilt gebruiken.Meerdere tenants. Als u meerdere accounts hebt, voegt u de tenant-id van de Microsoft Entra-id toe die u wilt gebruiken. Zoek uw tenant-id in Azure Portal onder Microsoft Entra ID, Externe identiteiten.
VAN TOEPASSING OP: Python SDK azureml v1
from azureml.core.authentication import InteractiveLoginAuthentication from azureml.core import Workspace interactive_auth = InteractiveLoginAuthentication(tenant_id="my-tenant-id") ws = Workspace.create(name='myworkspace', subscription_id='<azure-subscription-id>', resource_group='myresourcegroup', create_resource_group=True, location='eastus2', auth=interactive_auth )
Onafhankelijke cloud. U hebt extra code nodig om te verifiëren bij Azure als u in een onafhankelijke cloud werkt.
VAN TOEPASSING OP: Python SDK azureml v1
from azureml.core.authentication import InteractiveLoginAuthentication from azureml.core import Workspace interactive_auth = InteractiveLoginAuthentication(cloud="<cloud name>") # for example, cloud="AzureUSGovernment" ws = Workspace.create(name='myworkspace', subscription_id='<azure-subscription-id>', resource_group='myresourcegroup', create_resource_group=True, location='eastus2', auth=interactive_auth )
Zie de naslaginformatie over de Workspace SDK voor meer informatie.
Als u problemen ondervindt bij het openen van uw abonnement, raadpleegt u Verificatie instellen voor Azure Machine Learning-resources en -werkstromen en de verificatie in Azure Machine Learning-notebook .
Netwerken
Belangrijk
Zie Netwerkisolatie en privacy voor meer informatie over het gebruik van een privé-eindpunt en virtueel netwerk met uw werkruimte.
De Azure Machine Learning Python SDK biedt de PrivateEndpointConfig-klasse , die kan worden gebruikt met Workspace.create() om een werkruimte met een privé-eindpunt te maken. Voor deze klasse is een bestaand virtueel netwerk vereist.
Geavanceerd
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.
Als u de gegevens wilt beperken die Door Microsoft in uw werkruimte worden verzameld, selecteert u een werkruimte met hoge bedrijfsimpact in de portal of stelt hbi_workspace=true
u deze in Python in. Zie Versleuteling-at-rest voor meer informatie over deze instelling.
Belangrijk
Het selecteren van grote zakelijke impact kan alleen worden uitgevoerd bij het maken van een werkruimte. U kunt deze instelling niet wijzigen nadat de werkruimte is gemaakt.
Uw eigen gegevensversleutelingssleutel gebruiken
U kunt uw eigen sleutel opgeven voor gegevensversleuteling. Hiermee maakt u het Azure Cosmos DB-exemplaar waarin metagegevens in uw Azure-abonnement worden opgeslagen. Zie Door de klant beheerde sleutels voor Azure Machine Learning voor meer informatie.
Gebruik de volgende stappen om uw eigen sleutel op te geven:
Belangrijk
Voordat u deze stappen uitvoert, moet u eerst de volgende acties uitvoeren:
Volg de stappen in Door de klant beheerde sleutels configureren voor:
- De Azure Cosmos DB-provider registreren
- Een Azure Key Vault maken en configureren
- Een sleutel genereren
Gebruik cmk_keyvault
en resource_cmk_uri
om de door de klant beheerde sleutel op te geven.
from azureml.core import Workspace
ws = Workspace.create(name='myworkspace',
subscription_id='<azure-subscription-id>',
resource_group='myresourcegroup',
create_resource_group=True,
location='eastus2'
cmk_keyvault='subscriptions/<azure-subscription-id>/resourcegroups/myresourcegroup/providers/microsoft.keyvault/vaults/<keyvault-name>',
resource_cmk_uri='<key-identifier>'
)
Een configuratiebestand downloaden
Als u een rekenproces in uw werkruimte gebruikt om uw code uit te voeren, slaat u deze stap over. Het rekenproces maakt en slaat een kopie van dit bestand voor u op.
Als u van plan bent code te gebruiken in uw lokale omgeving die verwijst naar deze werkruimte (ws
), schrijft u het configuratiebestand:
VAN TOEPASSING OP: Python SDK azureml v1
ws.write_config()
Plaats het bestand in de mapstructuur met uw Python-scripts of Jupyter Notebooks. Deze kan zich in dezelfde map, een submap met de naam .azureml of in een bovenliggende map bevinden. Wanneer u een rekenproces maakt, wordt dit bestand voor u toegevoegd aan de juiste map op de VIRTUELE machine.
Verbinding maken met een werkruimte
In uw Python-code maakt u een werkruimteobject om verbinding te maken met uw werkruimte. Met deze code wordt de inhoud van het configuratiebestand gelezen om uw werkruimte te vinden. U krijgt een prompt om u aan te melden als u nog niet bent geverifieerd.
VAN TOEPASSING OP: Python SDK azureml v1
from azureml.core import Workspace
ws = Workspace.from_config()
Meerdere tenants. Als u meerdere accounts hebt, voegt u de tenant-id van de Microsoft Entra-id toe die u wilt gebruiken. Zoek uw tenant-id in Azure Portal onder Microsoft Entra ID, Externe identiteiten.
VAN TOEPASSING OP: Python SDK azureml v1
from azureml.core.authentication import InteractiveLoginAuthentication from azureml.core import Workspace interactive_auth = InteractiveLoginAuthentication(tenant_id="my-tenant-id") ws = Workspace.from_config(auth=interactive_auth)
Onafhankelijke cloud. U hebt extra code nodig om te verifiëren bij Azure als u in een onafhankelijke cloud werkt.
VAN TOEPASSING OP: Python SDK azureml v1
from azureml.core.authentication import InteractiveLoginAuthentication from azureml.core import Workspace interactive_auth = InteractiveLoginAuthentication(cloud="<cloud name>") # for example, cloud="AzureUSGovernment" ws = Workspace.from_config(auth=interactive_auth)
Als u problemen ondervindt bij het openen van uw abonnement, raadpleegt u Verificatie instellen voor Azure Machine Learning-resources en -werkstromen en de verificatie in Azure Machine Learning-notebook .
Een werkruimte zoeken
Bekijk een lijst met alle werkruimten die u kunt gebruiken.
Zoek uw abonnementen op de pagina Abonnementen in Azure Portal. Kopieer de id en gebruik deze in de onderstaande code om alle werkruimten te zien die beschikbaar zijn voor dat abonnement.
VAN TOEPASSING OP: Python SDK azureml v1
from azureml.core import Workspace
Workspace.list('<subscription-id>')
De methode Workspace.list(..) retourneert niet het volledige werkruimteobject. Het bevat alleen basisinformatie over bestaande werkruimten in het abonnement. Als u een volledig object voor een specifieke werkruimte wilt ophalen, gebruikt u Workspace.get(.).
Een werkruimte verwijderen
Wanneer u een werkruimte niet meer nodig hebt, verwijdert u deze.
Waarschuwing
Als voorlopig verwijderen is ingeschakeld voor de werkruimte, kan deze na verwijdering worden hersteld. Als voorlopig verwijderen niet is ingeschakeld of u de optie selecteert om de werkruimte permanent te verwijderen, kan deze niet worden hersteld. Zie Een verwijderde werkruimte herstellen voor meer informatie.
Tip
Het standaardgedrag voor Azure Machine Learning is om de werkruimte voorlopig te verwijderen . Dit betekent dat de werkruimte niet onmiddellijk wordt verwijderd, maar in plaats daarvan is gemarkeerd voor verwijdering. Zie Voorlopig verwijderen voor meer informatie.
De werkruimte ws
verwijderen:
VAN TOEPASSING OP: Python SDK azureml v1
ws.delete(delete_dependent_resources=False, no_wait=False)
De standaardactie is niet om resources te verwijderen die zijn gekoppeld aan de werkruimte, dat wil gezegd: containerregister, opslagaccount, sleutelkluis en Application Insights. Stel in op delete_dependent_resources
Waar om deze resources ook te verwijderen.
Resources opschonen
Belangrijk
De resources die u hebt gemaakt, kunnen worden gebruikt als de vereisten voor andere Azure Machine Learning-zelfstudies en artikelen met procedures.
Als u niet van plan bent om een van de resources te gebruiken die u hebt gemaakt, verwijdert u deze zodat er geen kosten in rekening worden gebracht:
Selecteer Resourcegroepen links in Azure Portal.
Selecteer de resourcegroep die u hebt gemaakt uit de lijst.
Selecteer Resourcegroep verwijderen.
Voer de naam van de resourcegroup in. Selecteer daarna Verwijderen.
Probleemoplossing
Ondersteunde browsers in Azure Machine Learning-studio: u wordt aangeraden de meest recente browser te gebruiken die compatibel is met uw besturingssysteem. De volgende browsers worden ondersteund:
- Microsoft Edge (de nieuwe Versie van Microsoft Edge, nieuwste versie. Niet verouderd voor Microsoft Edge)
- Safari (nieuwste versie, alleen Mac)
- Chrome (nieuwste versie)
- Firefox (nieuwste versie)
Azure Portal:
- Als u rechtstreeks naar uw werkruimte gaat via een sharekoppeling vanuit de SDK of Azure Portal, kunt u de standaardoverzichtspagina met abonnementsgegevens in de extensie niet weergeven. In dit scenario kunt u ook niet overschakelen naar een andere werkruimte. Als u een andere werkruimte wilt weergeven, gaat u rechtstreeks naar Azure Machine Learning-studio en zoekt u de naam van de werkruimte.
- Alle assets (gegevens, experimenten, berekeningen, enzovoort) zijn alleen beschikbaar in Azure Machine Learning-studio. Ze zijn niet beschikbaar vanuit Azure Portal.
- Als u probeert een sjabloon te exporteren voor een werkruimte vanuit Azure Portal, kan er een fout worden geretourneerd die vergelijkbaar is met de volgende tekst:
Could not get resource of the type <type>. Resources of this type will not be exported.
Gebruik als tijdelijke oplossing een van de sjablonen die zijn https://github.com/Azure/azure-quickstart-templates/tree/master/quickstarts/microsoft.machinelearningservices opgegeven als basis voor uw sjabloon.
Werkruimtediagnose
U kunt diagnostische gegevens uitvoeren in uw werkruimte vanuit Azure Machine Learning-studio of de Python SDK. Nadat diagnostische gegevens zijn uitgevoerd, wordt een lijst met gedetecteerde problemen geretourneerd. Deze lijst bevat koppelingen naar mogelijke oplossingen. Zie Diagnostische gegevens over werkruimten gebruiken voor meer informatie.
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.
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
Zodra u een werkruimte hebt, leert u hoe u een model traint en implementeert.
Zie Azure Machine Learning organiseren en instellen voor meer informatie over het plannen van een werkruimte voor de vereisten van uw organisatie.
Als u een werkruimte naar een ander Azure-abonnement wilt verplaatsen, raadpleegt u Hoe u een werkruimte verplaatst.
Zie Zoeken naar Azure Machine Learning-assets (preview) om een werkruimte te vinden.
Zie Beheer van beveiligingsproblemen voor informatie over het up-to-date houden van Azure Machine Learning met de nieuwste beveiligingsupdates.