Learn how to combine machine learning with software engineering to build production-grade applications.
MLOps concepts are interweaved and cannot be run in isolation, so be sure to complement the code in this repository with the detailed MLOps lessons.
- Lessons: https://madewithml.com/#mlops
- Code: GokuMohandas/mlops-course
🎨 Design | 💻 Developing | ♻️ Reproducibility |
Product | Packaging | Git |
Engineering | Organization | Pre-commit |
Project | Logging | Versioning |
🔢 Data | Documentation | Docker |
Exploration | Styling | 🚀 Production |
Labeling | Makefile | Dashboard |
Preprocessing | 📦 Serving | CI/CD |
Splitting | Command-line | Monitoring |
Augmentation | RESTful API | Systems design |
📈 Modeling | ✅ Testing | ⎈ Data engineering |
Baselines | Code | Data stack |
Evaluation | Data | Orchestration |
Experiment tracking | Models | Feature store |
Optimization |
python3 -m venv venv
source venv/bin/activate
python3 -m pip install --upgrade pip setuptools wheel
python3 -m pip install -e ".[dev]"
pre-commit install
pre-commit autoupdate
If the commands above do not work, please refer to the packaging lesson. We highly recommend using Python version
3.7.13
.
tagifai/
├── data.py - data processing utilities
├── evaluate.py - evaluation components
├── main.py - training/optimization operations
├── predict.py - inference utilities
├── train.py - training utilities
└── utils.py - supplementary utilities
python tagifai/main.py elt-data
python tagifai/main.py optimize --args-fp="config/args.json" --study-name="optimization" --num-trials=10
python tagifai/main.py train-model --args-fp="config/args.json" --experiment-name="baselines" --run-name="sgd"
python tagifai/main.py predict-tag --text="Transfer learning with transformers for text classification."
uvicorn app.api:app --host 0.0.0.0 --port 8000 --reload --reload-dir tagifai --reload-dir app # dev
gunicorn -c app/gunicorn.py -k uvicorn.workers.UvicornWorker app.api:app # prod
To cite this content, please use:
@misc{madewithml,
author = {Goku Mohandas},
title = {MLOps Course - Made With ML},
howpublished = {\url{https://madewithml.com/}},
year = {2022}
}