Použití GitHub Actions pro trénování modelu

Dokončeno

GitHub Actions je platforma, která umožňuje automatizovat úlohy aktivované událostmi, ke kterým dochází v úložišti GitHub. Pracovní postup GitHub Actions se skládá z úloh. Úloha seskupí sadu kroků , které můžete definovat. Jedním z těchto kroků můžete pomocí rozhraní příkazového řádku (v2) spustit úlohu azure machine Učení k trénování modelu.

Pokud chcete automatizovat trénování modelů pomocí GitHub Actions, budete muset:

  • Vytvořte instanční objekt pomocí Azure CLI.
  • Uložte přihlašovací údaje Azure do tajného kódu GitHubu.
  • Definujte akci GitHubu v YAML.

Vytvoření instančního objektu služby

Pokud k automatizaci úloh Azure Machine Učení použijete GitHub Actions, musíte k ověření GitHubu použít instanční objekt ke správě pracovního prostoru Azure Machine Učení. Pokud chcete například trénovat model pomocí služby Azure Machine Učení compute, musíte mít oprávnění k používání daného výpočetního prostředí vy nebo jakýkoli nástroj, který používáte.

Tip

Další informace o tom, jak se pomocí GitHub Actions připojit k Azure

Uložení přihlašovacích údajů Azure

Přihlašovací údaje Azure, které potřebujete k ověření, by neměly být uložené ve vašem kódu nebo ve formátu prostého textu a měly by být uložené v tajném kódu GitHubu.

Přidání tajného kódu do úložiště GitHub:

  1. Přejděte na kartu Nastavení.

    Screenshot of settings tab in GitHub repository.

  2. Na kartě Nastavení rozbalte v části Zabezpečení možnost Tajné kódy a vyberte Akce.

    Screenshot of secrets option in security section.

  3. Zadejte přihlašovací údaje Azure jako tajný klíč a pojmenujte ho AZURE_CREDENTIALS.

  4. Pokud chcete použít tajný kód obsahující přihlašovací údaje Azure v akci GitHubu, projděte si tajný kód v souboru YAML.

    on: [push]
    
    name: Azure Login Sample
    
    jobs:
      build-and-deploy:
        runs-on: ubuntu-latest
        steps:
          - name: Log in with Azure
            uses: azure/login@v1
            with:
              creds: '${{secrets.AZURE_CREDENTIALS}}'
    

Definování akce GitHubu

Pokud chcete definovat pracovní postup, budete muset vytvořit soubor YAML. Pracovní postup můžete aktivovat k ručnímu trénování modelu nebo události push. Ruční aktivace pracovního postupu je ideální pro testování, zatímco automatizace s událostí je lepší pro automatizaci.

Pokud chcete nakonfigurovat pracovní postup GitHub Actions, abyste ho mohli aktivovat ručně, použijte on: workflow_dispatch. Chcete-li aktivovat pracovní postup s událostí push, použijte on: [push].

Po aktivaci pracovního postupu GitHub Actions můžete do úlohy přidat různé kroky. Pomocí kroku můžete například spustit úlohu Učení azure machine:

name: Manually trigger an Azure Machine Learning job

on:
  workflow_dispatch:

jobs:
  train-model:
    runs-on: ubuntu-latest
    steps:
    - name: Trigger Azure Machine Learning job
      run: |
        az ml job create --file src/job.yml