الفصل 1: أتمتة خطوط أنابيب تعلم الآلة
GitHub Actions لتعلم الآلة
# .github/workflows/ml-pipeline.yml
name: ML Training Pipeline
on:
push:
branches: [main]
paths:
- 'src/**'
- 'data/**'
schedule:
- cron: '0 0 * * 0' # Weekly
jobs:
train:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.10'
- name: Install dependencies
run: pip install -r requirements.txt
- name: Pull data with DVC
run: dvc pull
env:
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_KEY }}
- name: Train model
run: python src/train.py
- name: Evaluate model
run: python src/evaluate.py
- name: Model validation gate
run: |
python -c "
import json
with open('metrics.json') as f:
metrics = json.load(f)
assert metrics['auc_roc'] > 0.85, 'Model did not meet AUC threshold'
"
- name: Push model to registry
if: success()
run: python src/register_model.py
التالي: الفصل 2: اختبار أنظمة تعلم الآلة