GitHub Actions
Pokud chcete automatizovat pracovní postupy pomocí GitHubu, použijete GitHub Actions.
GitHub se primárně používá k hostování projektů kódu. Při hostování kódu strojového učení v úložišti GitHubu (úložiště) můžete vytvořit GitHub Actions, který automaticky sestaví, otestuje a nasadí váš kód.
Poznámka:
Pokud chcete používat GitHub Actions s kanály Azure Machine Learning, musíte svému úložišti GitHub povolit přístup k pracovnímu prostoru Azure Machine Learning přes zabezpečené připojení.
Dozvíte se, jak pomocí GitHub Actions spustit kanál Azure Machine Learning.
Vytvoření akce GitHubu
- Definujte událost, která aktivuje pracovní postup.
- Spusťte pracovní postup, který se skládá z úloh.
- Úloha obsahuje jeden nebo více kroků.
- Jako krok spusťte kanál Služby Azure Machine Learning.
- Kanál Služby Azure Machine Learning se skládá ze skriptů nebo komponent služby Azure Machine Learning.
Pokud chcete vytvořit pracovní postup pro GitHub Actions, definujete kroky, které chcete spustit v souboru YAML. Do souboru YAML zahrnete:
- Událost: Jak chcete aktivovat pracovní postup.
- Úloha: Skupina kroků, které chcete spustit u spouštěče. Pro úlohy strojového učení budete pravděpodobně používat virtuální počítač s Ubuntu Linuxem.
-
Krok: Skript nebo akce, které chcete spustit. Například příkaz rozhraní příkazového řádku pro zahájení kanálu služby Azure Machine Learning (
az ml job create
).
Tip
Přečtěte si další informace o základních konceptech používaných v GitHub Actions.
Pokud chcete spustit kanál Azure Machine Learning při každém nasdílení změn do úložiště, můžete použít soubor YAML takto:
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
Ukázkový pracovní postup:
- Podívejte se na úložiště, aby bylo dostupné na spouštěči.
- Nainstalujte rozšíření Azure Machine Learning pro rozhraní příkazového řádku.
- Přihlaste se k Azure pomocí předdefinované
AZURE_CREDENTIALS
. - Přejděte do
src
složky, která obsahuje veškerý produkční kód. - Spusťte kanál Služby Azure Machine Learning.
Spuštění pracovního postupu pomocí GitHub Actions
Předpokládejme, že jste vytvořili soubor YAML pro definování pracovního postupu. Soubor YAML uložíte do .github/workflows/
adresáře ve vašem úložišti.
Pokud chcete zobrazit pracovní postup, přejděte na kartu GitHub Actions vašeho úložiště.
GitHub automaticky vyzvedne všechny pracovní postupy uložené v adresáři .github/workflows/
.
Tip
Pokud přidáte workflow_dispatch:
do souboru YAML pracovního postupu, můžete ho spustit ručně z karty Akce .
Pracovní postup můžete aktivovat událostmi zadanými v souboru YAML pracovního postupu. V tomto příkladu se nasdílení změn do úložiště aktivuje spuštění pracovního postupu. Kdykoli provedete změnu a odešlete potvrzení do úložiště (místně v editoru Visual Studio Code nebo přímo na GitHubu), pracovní postup se spustí.
Vyberte nejnovější spuštění a zkontrolujte, jestli se všechny kroky úspěšně spustily nebo jaké chybové zprávy jste obdrželi.
Když pracovní postup aktivuje kanál Služby Azure Machine Learning, měli byste také zkontrolovat spuštění kanálu v pracovním prostoru Azure Machine Learning, protože v kanálu Azure Machine Learning se můžou stále vyskytovat chyby. Všechny chybové zprávy se zobrazí ve složce výstupů spuštění experimentu kanálu Služby Azure Machine Learning.