About this project

Made With ML is an educational repository and companion course focused on building production-grade machine learning applications. It combines machine learning with software engineering practices, guiding learners from experimentation through deployment and iteration. The material is organized as lessons hosted on madewithml.com, with the code in this repository. It emphasizes first-principles understanding of ML concepts, software engineering best practices, scaling ML workloads in Python, connecting MLOps components, moving from development to production, and building CI/CD workflows. The intended audience includes software and infrastructure engineers, data scientists, college graduates, and product or leadership roles seeking a technical foundation. Setup instructions cover local machines, Anyscale workspaces, and other cloud, Kubernetes, or on-prem options. A Jupyter notebook provides an interactive walkthrough of core ML workloads, while refactored Python scripts under madewithml/ cover configuration, data, evaluation, models, prediction, serving, training, tuning, and utilities. Workflows include training and hyperparameter tuning with configurable workers and resources, experiment tracking via MLflow, evaluation against a holdout dataset, inference, and model serving. Testing spans code, data, and model tests with coverage reporting. Production deployment uses Anyscale Jobs and Services, with cluster environment and compute configuration files, authentication setup, and service rollout, query, rollback, and termination commands. CI/CD is implemented with GitHub Actions: pull requests trigger training and evaluation workflows that post results as comments, and merging to main triggers a serve workflow that rolls out the new service. The repository also discusses continual learning, connecting scheduled runs, data pipelines, monitoring, and online evaluation. An FAQ addresses Jupyter notebook kernel configuration. The project is distributed as open-source code and course content, with a community of tens of thousands of developers referenced in the README.