Azure Machine Learning integreren met DevOps-hulpprogramma's

Voltooid

Stel dat u met een data science-team werkt aan een machine learning-project. Uw team kan ervoor kiezen om Azure DevOps of GitHub te gebruiken om werk te plannen, de codeopslagplaats op te slaan en werkstromen te automatiseren.

Bij beide sets hulpprogramma's zijn er over het algemeen twee rollen:

  • Beheer istrator: stelt de DevOps-omgeving in en beheert de hulpprogramma's.
  • Eindgebruiker: draagt bij aan het project door samen te werken aan de ontwikkeling. Verbinding maken naar de hulpprogramma's, maar heeft beperkte toegang tot de configuratie van de DevOps-omgeving.

De beheerder is verantwoordelijk voor het verbinden van Azure Machine Learning met Azure DevOps of GitHub. Als u wilt weten hoe de integratie met Azure Machine Learning is ingesteld, gaan we eens kijken hoe een beheerder Azure DevOps en GitHub veilig zou verbinden met Azure Machine Learning.

Azure DevOps instellen

Als u Azure DevOps wilt verbinden met Azure Machine Learning, moet u eerst een organisatie en een project maken. U gebruikt de organisatie om projecten te groeperen en te beheren.

Meld u eerst aan bij Azure DevOps met een Microsoft- of GitHub-account.

Zodra u zich hebt aangemeld, kunt u een organisatie maken.

New organization in Azure DevOps

Binnen een organisatie kunt u meerdere projecten maken.

New project in Azure DevOps

Voor elk project hebt u toegang tot hulpprogramma's zoals Borden, Opslagplaatsen en Pijplijnen om DevOps-principes in uw project toe te passen.

Verbinding maken Azure DevOps naar Azure Machine Learning

Als u veilig toegang wilt krijgen tot uw Azure Machine Learning-werkruimte vanuit Azure DevOps, moet u een serviceverbinding maken.

Wanneer u een serviceverbinding maakt, definieert u hoe Azure DevOps wordt geverifieerd om verbinding te maken met een andere service. Wanneer u met Azure Machine Learning werkt, is de aanbevolen optie om Azure DevOps een service-principal voor u te laten maken.

Er wordt een service-principal gemaakt als een identiteit in de Microsoft Entra-id. In plaats van de referenties van een teamlid te gebruiken om verbinding te maken met Azure Machine Learning, gebruikt Azure DevOps de referenties van de service-principal.

Wanneer een Azure DevOps-project wordt gemaakt, kunt u verbinding maken met een bestaande Azure Machine Learning-werkruimte:

  1. Ga in een project naar Project Instellingen.
  2. Selecteer serviceverbindingen en maak een nieuwe.
  3. Kies Azure Resource Manager.
  4. Kies ervoor om te verifiëren met een automatische service-principal.
  5. Stel het bereikniveau in op Machine Learning-werkruimte en maak verbinding met een bestaande Azure Machine Learning-werkruimte waar u toegang toe hebt.
  6. Verleen toegang tot alle pijplijnen.
  7. Geef uw serviceverbinding een naam. U gebruikt de naam wanneer u Azure DevOps moet verifiëren om de Azure Machine Learning-werkruimte te beheren.

New service connection in Azure DevOps

Zodra de serviceverbinding is gemaakt, ziet u dat een nieuw gemaakte service-principal inzendertoegang heeft tot uw Azure Machine Learning-werkruimte.

GitHub instellen

Als u GitHub wilt verbinden met Azure Machine Learning, moet u eerst een GitHub-opslagplaats maken.

Meld u eerst aan bij GitHub.

Nadat u zich hebt aangemeld bij GitHub, kunt u kiezen of u als individu de eigenaar van de opslagplaats wilt zijn of dat deze eigendom moet zijn van een GitHub-organisatie.

New repo in GitHub

Verbinding maken GitHub met Azure Machine Learning

Als u GitHub wilt gebruiken om machine learning-werkstromen te automatiseren, kunt u GitHub verifiëren om verbinding te maken met Azure Machine Learning. Als u een beveiligde verbinding wilt instellen, moet u het volgende doen:

  • Maak een service-principal in Azure.
  • Voeg de referenties van de service-principal toe aan de geheimen van uw opslagplaats.

Als u een service-principal wilt maken, kunt u de Azure CLI gebruiken. Als u met de CLI wilt werken, kunt u opdrachten verzenden in De Azure Cloud Shell.

U kunt een service-principal maken met de naam github-aml-sp die inzender toegang krijgt tot de Azure Machine Learning-werkruimte met de volgende opdracht:

az ad sp create-for-rbac --name "github-aml-sp" --role contributor \
                            --scopes /subscriptions/<subscription-id>/resourceGroups/<group-name>/providers/Microsoft.MachineLearningServices/workspaces/<workspace-name> \
                            --sdk-auth

Zodra de service-principal is gemaakt, wordt er een JSON-tekst geretourneerd als uitvoer die de referenties bevat die GitHub bevat om verbinding te maken met uw Azure-resourcegroep. Kopieer de JSON-tekst en sla deze op voor de volgende stap.

Ga als volgt te werk om deze referenties op te slaan in GitHub:

  1. Ga naar de Instellingen van uw opslagplaats.
  2. Navigeer naar de pagina Geheimen .
  3. Selecteer Acties.
  4. Voeg een nieuw opslagplaatsgeheim toe.
  5. Voer de AZURE_CREDENTIALS naam in.
  6. Plak de uitvoer-JSON met de referenties en voeg het geheim toe.

New secret in GitHub

Zodra het geheim is toegevoegd aan GitHub, kunt u het AZURE_CREDENTIALS geheim gebruiken wanneer u GitHub nodig hebt om te worden geverifieerd voor gebruik met uw Azure Machine Learning-werkruimte.

Tip

Ga verder met leren over het integreren van GitHub met Azure Machine Learning en ontdek hoe u GitHub Actions gebruikt met Azure Machine Learning. In de zelfstudie wordt het AZURE_CREDENTIALS geheim gebruikt om verbinding te maken met Azure.