Skip to content

harvard-edge/cs249r_book

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Machine Learning Systems

Principles and Practices of Engineering Artificially Intelligent Systems

Build Status Website Ecosystem License Open Collective

πŸ“– Read Online β€’ πŸ’Ύ Download PDF β€’ 🌐 Explore Ecosystem

πŸ“š Hardcopy edition coming 2026 via MIT Press!


About This Book

The open-source textbook that teaches you to build real-world AI systems β€” from edge devices to cloud deployment. Originally developed as Harvard University's CS249r course by Prof. Vijay Janapa Reddi, now used by universities and students worldwide.

Our mission: Expand access to AI systems education worldwide β€” empowering learners, one chapter and one lab at a time.

Why This Book Exists

"This grew out of a concern that while students could train AI models, few understood how to build the systems that actually make them work. As AI becomes more capable and autonomous, the critical bottleneck won't be the algorithms - it will be the engineers who can build efficient, scalable, and sustainable systems that safely harness that intelligence."

β€” Vijay Janapa Reddi


πŸ“š What You'll Learn

Go beyond training models β€” master the full stack of real-world ML systems.

Topic What You'll Build
System Design Scalable, maintainable ML architectures
Data Engineering Robust pipelines for collection, labeling, and processing
Model Deployment Production-ready systems from prototypes
MLOps & Monitoring Reliable, continuously operating systems
Edge AI Resource-efficient deployment on mobile, embedded, and IoT

⭐ Support This Work

Show Your Support

Star this repository to help us demonstrate the value of open AI education to funders and institutions.

Stars

Goal: 10,000 stars = $100,000 in additional education funding

⭐ Star Now β€” takes 2 seconds!

Fund the Mission (New!)

We've graduated this project from Harvard to enable global access and expand AI systems education worldwide. Please help us support educators globally, especially in the Global South, by providing TinyML kits for students, funding workshops, and sustaining our open-source infrastructure.

Open Collective

From $15/month to sponsor a learner to $250 for workshops β€” every contribution democratizes AI education.


🌐 Community & Resources

Resource Description
πŸ“š Main Site Complete learning platform
πŸ”₯ TinyTorch Educational ML framework
πŸ’¬ Discussions Ask questions, share insights
πŸ‘₯ Community Join our global learning community

🎯 For Different Audiences

πŸŽ“ Students

πŸ‘©β€πŸ« Educators

πŸ› οΈ Contributors


πŸš€ Quick Start

For Readers

# Read online (continuously updated)
open https://mlsysbook.ai

# Or download PDF for offline access
curl -O https://mlsysbook.ai/Machine-Learning-Systems.pdf

For Contributors

git clone https://github.com/harvard-edge/cs249r_book.git
cd cs249r_book
make setup-hooks  # Setup automated quality controls
make install      # Install dependencies
make preview      # Start development server

🀝 Contributing

We welcome contributions from the global community! Here's how you can help:

Ways to Contribute

  • πŸ“ Content β€” Suggest edits, improvements, or new examples
  • πŸ› οΈ Tools β€” Enhance development scripts and automation
  • 🎨 Design β€” Improve figures, diagrams, and visual elements
  • 🌍 Localization β€” Translate content for global accessibility
  • πŸ”§ Infrastructure β€” Help with build systems and deployment

Quality Standards

All contributions benefit from automated quality assurance:

  • βœ… Pre-commit validation β€” Automatic cleanup and checks
  • πŸ“‹ Content review β€” Formatting and style validation
  • πŸ§ͺ Testing β€” Build and link verification
  • πŸ‘₯ Peer review β€” Community feedback

Start Contributing β†’


πŸ› οΈ Development

Quick Commands

# Building
make build          # Build HTML version
make build-pdf      # Build PDF version
make preview        # Start development server

# Quality Control  
make clean          # Clean build artifacts
make test           # Run validation tests
make lint           # Check for issues

# Get help
make help           # Show all commands

Project Structure

MLSysBook/
β”œβ”€β”€ book/                    # Main book content (Quarto)
β”‚   β”œβ”€β”€ contents/            # Chapter content
β”‚   β”‚   β”œβ”€β”€ core/            # Core chapters
β”‚   β”‚   β”œβ”€β”€ labs/            # Hands-on labs
β”‚   β”‚   β”œβ”€β”€ frontmatter/     # Preface, acknowledgments
β”‚   β”‚   └── parts/           # Book parts and sections
β”‚   β”œβ”€β”€ _quarto.yml          # Book configuration
β”‚   β”œβ”€β”€ index.qmd            # Main entry point
β”‚   └── assets/              # Images, styles, media
β”œβ”€β”€ build/                   # Build artifacts (git-ignored)
β”‚   β”œβ”€β”€ html/                # HTML website output
β”‚   β”œβ”€β”€ pdf/                 # PDF book output
β”‚   └── dist/                # Distribution files
β”œβ”€β”€ tools/                   # Development automation
β”‚   β”œβ”€β”€ scripts/             # Organized development scripts
β”‚   β”‚   β”œβ”€β”€ build/           # Build and development tools
β”‚   β”‚   β”œβ”€β”€ content/         # Content management tools
β”‚   β”‚   β”œβ”€β”€ maintenance/     # System maintenance scripts
β”‚   β”‚   β”œβ”€β”€ testing/         # Test and validation scripts
β”‚   β”‚   β”œβ”€β”€ utilities/       # General utility scripts
β”‚   β”‚   └── docs/            # Script documentation
β”‚   β”œβ”€β”€ dependencies/        # Package requirements  
β”‚   └── setup/               # Setup and configuration
β”œβ”€β”€ config/                  # Build configuration
β”‚   β”œβ”€β”€ _extensions/         # Quarto extensions
β”‚   β”œβ”€β”€ lua/                 # Lua scripts
β”‚   └── tex/                 # LaTeX templates
β”œβ”€β”€ assets/                  # Global assets (covers, icons)
β”œβ”€β”€ docs/                    # Documentation
β”‚   β”œβ”€β”€ DEVELOPMENT.md       # Development guide
β”‚   β”œβ”€β”€ MAINTENANCE_GUIDE.md # Daily workflow guide
β”‚   β”œβ”€β”€ BUILD.md             # Build instructions
β”‚   └── contribute.md        # Contribution guidelines
└── Makefile                 # Development commands

Documentation


πŸ“‹ Citation & License

Citation

@inproceedings{reddi2024mlsysbook,
  title        = {MLSysBook.AI: Principles and Practices of Machine Learning Systems Engineering},
  author       = {Reddi, Vijay Janapa},
  booktitle    = {2024 International Conference on Hardware/Software Codesign and System Synthesis (CODES+ ISSS)},
  pages        = {41--42},
  year         = {2024},
  organization = {IEEE},
  url          = {https://mlsysbook.org}
}

License

This work is licensed under Creative Commons Attribution–NonCommercial–ShareAlike 4.0 International (CC BY-NC-SA 4.0). You may share and adapt the material for non-commercial purposes with appropriate credit.


Made for the global AI education community with ❀️

Empowering the next generation of AI systems engineers