Intégrer Azure Machine Learning aux outils DevOps
Imaginez que vous travaillez avec une équipe de science des données sur un projet Machine Learning. Votre équipe peut choisir d’utiliser Azure DevOps ou GitHub pour planifier le travail, stocker le référentiel de code et automatiser les workflows.
Avec les deux ensembles d’outils, il existe généralement deux rôles :
- Administrateur : configure l’environnement DevOps et gère les outils.
- Utilisateur final : contribue au projet en travaillant sur le développement. Se connecte aux outils, mais a un accès restreint à la configuration de l’environnement DevOps.
L’administrateur est responsable de la connexion d’Azure Machine Learning avec Azure DevOps ou GitHub. Pour comprendre comment l’intégration à Azure Machine Learning est configurée, examinons comment un administrateur connecterait en toute sécurité Azure DevOps et GitHub à Azure Machine Learning.
Configurer Azure DevOps
Pour connecter Azure DevOps à Azure Machine Learning, vous devez d’abord créer une organisation et un projet. Vous allez utiliser l’organisation pour regrouper et gérer des projets.
Commencez par vous connecter à Azure DevOps avec un compte Microsoft ou GitHub.
Une fois connecté, vous pouvez créer une organisation.

Au sein d’une organisation, vous pouvez créer plusieurs projets.

Pour chaque projet, vous aurez accès à des outils tels que Boards, Repos et Pipelines pour appliquer des principes DevOps dans votre projet.
Connecter Azure DevOps à Azure Machine Learning
Pour accéder en toute sécurité à votre espace de travail Azure Machine Learning à partir d’Azure DevOps, vous devez créer une connexion de service.
Lorsque vous créez une connexion de service, vous définissez la façon dont Azure DevOps sera authentifié pour vous connecter à un autre service. Lorsque vous travaillez avec Azure Machine Learning, l’option recommandée consiste à laisser Azure DevOps créer un principal de service pour vous.
Un principal de service est créé en tant qu’identité dans Microsoft Entra ID. Au lieu d’utiliser les informations d’identification d’un membre de l’équipe pour se connecter à Azure Machine Learning, Azure DevOps utilise les informations d’identification du principal de service.
Quand un projet Azure DevOps est créé, vous pouvez vous connecter à un espace de travail Azure Machine Learning existant :
- Dans un projet, accédez aux paramètres du projet.
- Sélectionnez les connexions de service et créez-en une.
- Choisissez Azure Resource Manager.
- Choisissez de s’authentifier auprès d’un principal de service automatique.
- Définissez le niveau d’étendue sur l’espace de travail Machine Learning et connectez-vous à un espace de travail Azure Machine Learning existant auquel vous avez accès.
- Accordez l’autorisation d’accès à tous les pipelines.
- Donnez un nom à votre connexion de service. Vous utiliserez le nom chaque fois que vous devez authentifier Azure DevOps pour gérer l’espace de travail Azure Machine Learning.

Une fois la connexion de service créée, vous remarquerez qu’un principal de service nouvellement créé dispose d’un accès Contributeur à votre espace de travail Azure Machine Learning.
Configurer GitHub
Pour connecter GitHub à Azure Machine Learning, vous devez d’abord créer un dépôt GitHub.
Commencez par vous connecter à GitHub.
Après vous être connecté à GitHub, vous pouvez choisir si vous en tant qu’individu souhaitez posséder le dépôt ou s’il doit être détenu par une organisation GitHub.

Conseil / Astuce
En savoir plus sur l’utilisation des organisations GitHub pour gérer les dépôts.
Connecter GitHub à Azure Machine Learning
Pour utiliser GitHub pour automatiser les flux de travail Machine Learning, vous pouvez authentifier GitHub pour vous connecter à Azure Machine Learning. Pour configurer une connexion sécurisée, vous devez :
- Créez un principal de service dans Azure.
- Ajoutez les informations d’identification du principal de service aux secrets de votre référentiel.
Pour créer un principal de service, vous pouvez utiliser Azure CLI. Pour utiliser l’interface CLI, une option consiste à envoyer des commandes dans Azure Cloud Shell.
Vous pouvez créer un principal de service nommé github-aml-sp qui aura accès contributeur à l’espace de travail Azure Machine Learning avec la commande suivante :
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
Une fois le principal de service créé, un texte JSON vous est retourné comme résultat, comprenant les informations d’identification nécessaires que GitHub utilisera pour se connecter à votre groupe de ressources Azure. Copiez le texte JSON et enregistrez-le pour l’étape suivante.
Pour stocker ces informations d’identification dans GitHub :
- Accédez aux paramètres de votre référentiel.
- Accédez à la page Secrets .
- Sélectionnez Actions.
- Ajoutez un nouveau secret de référentiel.
- Saisir
AZURE_CREDENTIALScomme nom. - Collez le json de sortie avec les informations d’identification et ajoutez le secret.

Une fois que le secret est ajouté à GitHub, vous pouvez utiliser le AZURE_CREDENTIALS secret chaque fois que vous avez besoin que GitHub soit authentifié pour travailler avec votre espace de travail Azure Machine Learning.
Conseil / Astuce
Poursuivez votre apprentissage sur l’intégration de GitHub à Azure Machine Learning et explorez comment utiliser GitHub Actions avec Azure Machine Learning. Le tutoriel utilise le AZURE_CREDENTIALS secret pour se connecter à Azure.