การดําเนินการ GitHub

เสร็จสมบูรณ์เมื่อ

เมื่อคุณต้องการทําเวิร์กโฟลว์ให้เป็นอัตโนมัติด้วย GitHub คุณต้องใช้การดําเนินการ GitHub

GitHub ถูกใช้เป็นหลักเพื่อโฮสต์โครงการโค้ด เมื่อคุณโฮสต์โค้ดการเรียนรู้ของเครื่องของคุณในที่เก็บข้อมูล GitHub (repo) คุณสามารถสร้างการดําเนินการ GitHub เพื่อสร้าง ทดสอบ และปรับใช้โค้ดของคุณโดยอัตโนมัติ

หมายเหตุ

หากต้องการใช้การดําเนินการ GitHub กับไปป์ไลน์ Azure Machine Learning คุณจําเป็นต้องอนุญาตให้ที่เก็บ GitHub ของคุณเข้าถึงพื้นที่ทํางาน Azure Machine Learning ของคุณผ่านการเชื่อมต่อที่ปลอดภัย

คุณจะได้เรียนรู้วิธีการใช้การดําเนินการ GitHub เพื่อเรียกใช้ไปป์ไลน์ Azure Machine Learning

สร้างการดําเนินการ GitHub

แผนภาพลําดับชั้นของไปป์ไลน์

  1. กําหนด เหตุการณ์ ที่จะทริกเกอร์เวิร์กโฟลว์
  2. เรียกใช้ เวิร์กโฟลว์ซึ่งประกอบด้วยงาน
  3. งานประกอบด้วยอย่างน้อยหนึ่งขั้นตอน
  4. ตามขั้นตอน ให้เรียกใช้ไปป์ไลน์ Azure Machine Learning
  5. ไปป์ไลน์ Azure Machine Learning ถูกสร้างขึ้นจาก สคริปต์ หรือ คอมโพเนนต์ Azure Machine Learning

เมื่อต้องการสร้างเวิร์กโฟลว์สําหรับการดําเนินการ GitHub คุณต้องกําหนดขั้นตอนที่คุณต้องการเรียกใช้ในไฟล์ YAML ในไฟล์ YAML คุณจะมี:

  • เหตุการณ์: วิธีที่คุณต้องการทริกเกอร์เวิร์กโฟลว์
  • งาน: กลุ่มของขั้นตอนที่คุณต้องการดําเนินการบนรองชนะเลิศ สําหรับปริมาณงานการเรียนรู้ของเครื่อง คุณอาจใช้เครื่องเสมือน Ubuntu Linux
  • ขั้นตอน: สคริปต์หรือการดําเนินการที่คุณต้องการเรียกใช้ ตัวอย่างเช่น คําสั่ง CLI เพื่อเริ่มต้นไปป์ไลน์ Azure Machine Learning (az ml job create)

เคล็ดลับ

เรียนรู้เพิ่มเติมเกี่ยวกับแนวคิดหลัก ที่ใช้ใน การดําเนินการ GitHub

เมื่อต้องการเรียกใช้ไปป์ไลน์ Azure Machine Learning เมื่อใดก็ตามที่มีการส่งการเปลี่ยนแปลงไปยัง repo คุณสามารถใช้ไฟล์ YAML ดังนี้:

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

เวิร์กโฟลว์ตัวอย่างจะ:

  1. ตรวจสอบ repo เพื่อให้พร้อมใช้งานบนรันเนอร์
  2. ติดตั้งส่วนขยาย Azure Machine Learning สําหรับ CLI
  3. ลงชื่อเข้าใช้ Azure โดยใช้ ที่กําหนดไว้ AZURE_CREDENTIALSล่วงหน้า
  4. นําทางไปยัง src โฟลเดอร์ ซึ่งประกอบด้วยรหัสการผลิตทั้งหมดของคุณ
  5. เรียกใช้ไปป์ไลน์ Azure Machine Learning

เรียกใช้เวิร์กโฟลว์ด้วยการดําเนินการ GitHub

สมมติว่าคุณได้สร้างไฟล์ YAML เพื่อกําหนดเวิร์กโฟลว์ คุณจัดเก็บไฟล์ YAML ในไดเรกทอรีใน .github/workflows/ ที่เก็บของคุณ

เมื่อต้องการดูเวิร์กโฟลว์ ให้นําทางไปยังแท็บ การดําเนินการ GitHub ของ repo ของคุณ

สกรีนช็อตของภาพรวมการดําเนินการ GitHub

GitHub จะเลือกเวิร์กโฟลว์ใด ๆ ที่จัดเก็บไว้ใน .github/workflows/ ไดเรกทอรีโดยอัตโนมัติ

เคล็ดลับ

ถ้าคุณเพิ่มลงใน workflow_dispatch: ไฟล์ YAML เวิร์กโฟลว์ของคุณ คุณสามารถทริกเกอร์เวิร์กโฟลว์เพื่อเรียกใช้จากแท็บ การดําเนินการ ได้ด้วยตนเอง

คุณสามารถทริกเกอร์เวิร์กโฟลว์ด้วยเหตุการณ์ที่ระบุในเวิร์กโฟลว์ไฟล์ YAML ของคุณ ในตัวอย่าง การส่งไปยัง repo จะทริกเกอร์เวิร์กโฟลว์เพื่อเรียกใช้ ทุกครั้งที่คุณทําการเปลี่ยนแปลงและส่งการยอมรับของคุณไปยังที่เก็บ (ภายในเครื่องใน Visual Studio Code หรือใน GitHub โดยตรง) เวิร์กโฟลว์จะทํางาน

เลือกการเรียกใช้ล่าสุดเพื่อตรวจสอบว่าขั้นตอนทั้งหมดได้ดําเนินการเสร็จเรียบร้อยแล้วหรือข้อความแสดงข้อผิดพลาดใดที่คุณได้รับ

สกรีนช็อตของเวิร์กโฟลว์ที่ดําเนินการเสร็จเรียบร้อยแล้ว

เมื่อเวิร์กโฟลว์ทริกเกอร์ไปป์ไลน์ Azure Machine Learning คุณควรตรวจสอบการเรียกใช้ไปป์ไลน์ในพื้นที่ทํางาน Azure Machine Learning เนื่องจากข้อผิดพลาดอาจยังคงเกิดขึ้นภายในไปป์ไลน์ Azure Machine Learning ข้อความข้อผิดพลาดใด ๆ จะสามารถดูได้ในโฟลเดอร์ผลลัพธ์ของการทํางานของการทดลองของไปป์ไลน์ Azure Machine Learning