GitHub Actions
Când doriți să automatizați fluxurile de lucru cu GitHub, utilizați GitHub Actions.
GitHub este folosit în principal pentru a găzdui proiecte de cod. Când găzduiți codul de învățare automată într-un depozit GitHub (repo), puteți crea acțiuni GitHub pentru a construi, testa și implementa automat codul.
Notă
Pentru a utiliza GitHub Actions cu conducte Azure Machine Learning, trebuie să permiteți depozitului GitHub să acceseze spațiul de lucru Azure Machine Learning printr-o conexiune securizată.
Veți învăța cum să utilizați GitHub Actions pentru a rula o conductă Azure Machine Learning.
Creați o acțiune GitHub
- Definiți un eveniment care va declanșa fluxul de lucru.
- Rulați fluxul de lucru, care constă din lucrări.
- Un loc de muncă conține unul sau mai mulți pași.
- Ca pas, rulați o conductă Azure Machine Learning.
- Conducta Azure Machine Learning este alcătuită din scripturi sau componente Azure Machine Learning.
Pentru a crea fluxul de lucru pentru GitHub Actions, definiți pașii pe care doriți să îi rulați într-un fișier YAML. În fișierul YAML, veți include:
- Eveniment: Cum doriți să declanșați fluxul de lucru.
- Job: Un grup de pași pe care doriți să îi executați pe un alergător. Pentru sarcinile de lucru de învățare automată, probabil că veți utiliza o mașină virtuală Ubuntu Linux .
-
Pas: Un script sau o acțiune pe care doriți să o rulați. De exemplu, o comandă CLI pentru a iniția conducta Azure Machine Learning (
az ml job create).
Sfat
Aflați mai multe despre conceptele de bază utilizate în GitHub Actions.
Pentru a rula o conductă Azure Machine Learning ori de câte ori modificările sunt împinse în depozit, puteți utiliza un fișier YAML ca acesta:
name: Train model
on:
push:
branches: [ main ]
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: check out repo
uses: actions/checkout@v2
- name: install az ml extension
run: az extension add -n ml -y
- name: azure login
uses: azure/login@v1
with:
creds: ${{secrets.AZURE_CREDENTIALS}}
- name: set current directory
run: cd src
- name: run pipeline
run: az ml job create --file src/aml_service/pipeline-job.yml --resource-group dev-ml-rg --workspace-name dev-ml-ws
Exemplul de flux de lucru:
- Verificați depozitul pentru a-l face disponibil pe alergător.
- Instalați extensia Azure Machine Learning pentru CLI.
- Conectați-vă la Azure utilizând fișierul
AZURE_CREDENTIALSpredefinit . - Navigați la folderul
srccare conține tot codul de producție. - Rulați conducta Azure Machine Learning.
Rulați un flux de lucru cu GitHub Actions
Să presupunem că ați creat fișierul YAML pentru a defini fluxul de lucru. Stocați fișierul YAML în directorul .github/workflows/ din depozit.
Pentru a vizualiza fluxul de lucru, navigați la fila Acțiuni GitHub a depozitului.
GitHub va prelua automat toate fluxurile de lucru stocate în director..github/workflows/
Sfat
Dacă adăugați workflow_dispatch: la fluxul de lucru fișierul YAML, puteți declanșa manual fluxul de lucru să ruleze din fila Acțiuni .
Puteți declanșa fluxul de lucru cu evenimentele specificate în fișierul YAML al fluxului de lucru. În exemplu, o împingere către depozit va declanșa rularea fluxului de lucru. De fiecare dată când efectuați o modificare și împingeți comiterile în depozit (local în Visual Studio Code sau direct în GitHub), fluxul de lucru va rula.
Selectați cea mai recentă rulare pentru a inspecta în continuare dacă toți pașii s-au executat cu succes sau ce mesaje de eroare ați primit.
Atunci când un flux de lucru declanșează o conductă Azure Machine Learning, ar trebui să revizuiți și conducta rulată în spațiul de lucru Azure Machine Learning, deoarece pot apărea în continuare erori în cadrul conductei Azure Machine Learning. Orice mesaje de eroare vor putea fi vizualizate în folderul de ieșiri al execuției experimentului de conductă Azure Machine Learning.