Integrar o Azure Machine Learning com ferramentas de DevOps
Imagine que você trabalha com uma equipe de ciência de dados em um projeto de aprendizado de máquina. Sua equipe pode optar por usar o Azure DevOps ou o GitHub para planejar o trabalho, armazenar o repositório de código e automatizar fluxos de trabalho.
Com qualquer um dos conjuntos de ferramentas, geralmente há duas funções:
- Administrator: configura o ambiente de DevOps e gerencia as ferramentas.
- do usuário final: contribui para o projeto colaborando no desenvolvimento. Conecta-se às ferramentas, mas tem acesso restrito à configuração do ambiente de DevOps.
O administrador é responsável por conectar o Azure Machine Learning ao Azure DevOps ou ao GitHub. Para entender como a integração com o Azure Machine Learning é configurada, vamos explorar como um administrador conectaria com segurança o Azure DevOps e o GitHub ao Azure Machine Learning.
Configurar o Azure DevOps
Para conectar o Azure DevOps ao Azure Machine Learning, primeiro você precisará criar uma organização e um projeto. Você usará a organização para agrupar e gerenciar projetos.
Comece entrando no de DevOps do Azure com uma conta da Microsoft ou do GitHub.
Depois de entrar, você pode criar uma organização .
Dentro de uma organização, você pode criar vários projetos .
Para cada projeto, você terá acesso a ferramentas como Boards, Repose Pipelines aplicar os princípios de DevOps em seu projeto.
Conectar o Azure DevOps ao Azure Machine Learning
Para aceder com segurança à sua área de trabalho do Azure Machine Learning a partir do Azure DevOps, terá de criar uma ligação de serviço .
Ao criar uma conexão de serviço, você define como o Azure DevOps será autenticado para se conectar a outro serviço. Quando você trabalha com o Azure Machine Learning, a opção recomendada é permitir que o Azure DevOps crie uma entidade de serviço para você.
Uma entidade de serviço é criada como uma identidade no Microsoft Entra ID . Em vez de usar as credenciais de um membro da equipe para se conectar ao Azure Machine Learning, o Azure DevOps usa as credenciais da entidade de serviço.
Quando um projeto do Azure DevOps é criado, você pode se conectar a um espaço de trabalho existente do Azure Machine Learning:
- Dentro de um projeto, vá para Configurações do Projeto.
- Selecione as conexões de serviço e crie uma nova.
- Escolha Azure Resource Manager.
- Opte por autenticar-se com um Service Principal automático .
- Defina o nível de âmbito para Espaço de Trabalho de Machine Learning e conecte-se a um espaço de trabalho existente do Azure Machine Learning a que tem acesso.
- Conceda permissão de acesso a todos os pipelines.
- Dê um nome à sua conexão de serviço. Você usará o nome sempre que precisar autenticar o Azure DevOps para gerenciar o espaço de trabalho do Azure Machine Learning.
Depois que a conexão de serviço for criada, você notará que uma entidade de serviço recém-criada tem acesso Colaborador ao seu espaço de trabalho do Azure Machine Learning.
Configurar GitHub
Para conectar o GitHub ao Azure Machine Learning, primeiro você precisará criar um repositório do GitHub.
Comece entrando no GitHub.
Depois de entrar no GitHub, você pode escolher se, como indivíduo, deseja ser proprietário do repositório ou se ele deve ser de propriedade de uma organização do GitHub.
Dica
Saiba mais sobre usando organizações do GitHub para gerir repositórios.
Conectar o GitHub ao Azure Machine Learning
Para usar o GitHub para automatizar fluxos de trabalho de aprendizado de máquina, você pode autenticar o GitHub para se conectar ao Azure Machine Learning. Para configurar uma ligação segura, terá de:
- Crie uma entidade de serviço no Azure.
- Adicione as credenciais do principal de serviço aos segredos do repositório.
Para criar uma entidade de serviço, você pode usar a CLI do Azure. Para trabalhar com a CLI, uma opção é enviar comandos no Azure Cloud Shell.
Você pode criar uma entidade de serviço chamada github-aml-sp
que receberá Colaborador acesso ao espaço de trabalho do Azure Machine Learning com o seguinte comando:
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
Depois que a entidade de serviço é criada, um texto JSON é retornado para você como saída, que inclui as credenciais que o GitHub precisará para se conectar ao seu grupo de recursos do Azure. Copie o texto JSON e salve-o para a próxima etapa.
Para armazenar essas credenciais no GitHub:
- Vá para as suas Configurações do repositório .
- Navegue até a página Segredos.
- Selecione Ações.
- Adicione um novo segredo de repositório.
- Digite
AZURE_CREDENTIALS
como o nome. - Cole o JSON de saída com as credenciais e adicione o segredo.
Depois que o segredo for adicionado ao GitHub, você poderá usar o segredo AZURE_CREDENTIALS
sempre que precisar que o GitHub seja autenticado para trabalhar com seu espaço de trabalho do Azure Machine Learning.
Dica
Continue seu aprendizado sobre a integração do GitHub com o Azure Machine Learning e explore como usar as Ações do GitHub com o Azure Machine Learning. O tutorial usa o segredo AZURE_CREDENTIALS
para se conectar ao Azure.