cs249r_book

Introduction to Machine Learning Systems

https://github.com/harvard-edge/cs249r_book

Science Score: 26.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (12.5%) to scientific vocabulary

Keywords

artificial-intelligence cloud-ml computer-systems courseware deep-learning edge-machine-learning embedded-ml machine-learning machine-learning-systems mobile-ml textbook tinyml
Last synced: 6 months ago · JSON representation

Repository

Introduction to Machine Learning Systems

Basic Info
  • Host: GitHub
  • Owner: harvard-edge
  • License: other
  • Language: Python
  • Default Branch: dev
  • Homepage: http://mlsysbook.ai/
  • Size: 1.17 GB
Statistics
  • Stars: 2,266
  • Watchers: 32
  • Forks: 260
  • Open Issues: 74
  • Releases: 4
Topics
artificial-intelligence cloud-ml computer-systems courseware deep-learning edge-machine-learning embedded-ml machine-learning machine-learning-systems mobile-ml textbook tinyml
Created over 2 years ago · Last pushed 6 months ago
Metadata Files
Readme Changelog License Code of conduct Citation

README.md

Machine Learning Systems

Principles and Practices of Engineering Artificially Intelligent Systems

[![Build](https://img.shields.io/github/actions/workflow/status/harvard-edge/cs249r_book/validate-dev.yml?branch=dev&label=Build&logo=githubactions&cacheSeconds=300)](https://github.com/harvard-edge/cs249r_book/actions/workflows/validate-dev.yml) ![Last Commit](https://img.shields.io/github/last-commit/harvard-edge/cs249r_book/dev?label=Last%20Commit&logo=git&cacheSeconds=300)

[![Website](https://img.shields.io/website?url=https%3A%2F%2Fmlsysbook.ai&label=Website&logo=readthedocs)](https://mlsysbook.ai) [![Ecosystem](https://img.shields.io/website?url=https%3A%2F%2Fmlsysbook.org&label=Ecosystem&logo=internet-explorer)](https://mlsysbook.org) [![Paper](https://img.shields.io/badge/Paper-MLSysBook.AI%20Overview-blue?logo=academia)](LINK_TO_PAPER)

[![Funding](https://img.shields.io/badge/Fund%20Us-Open%20Collective-blue.svg?logo=open-collective)](https://opencollective.com/mlsysbook) [![License](https://img.shields.io/badge/License-CC--BY--NC--SA%204.0-blue.svg)](https://github.com/harvard-edge/cs249r_book/blob/dev/LICENSE) [![Powered by Netlify](https://img.shields.io/badge/Powered%20by-Netlify-00C7B7?logo=netlify&logoColor=white)](https://www.netlify.com)

**[ Read Online](https://mlsysbook.ai)** **[ Download PDF](https://mlsysbook.ai/pdf)** **[ Download ePub](https://mlsysbook.ai/epub)** **[ Explore Ecosystem](https://mlsysbook.org)**

**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](https://img.shields.io/github/stars/harvard-edge/cs249r_book?style=for-the-badge&logo=github&color=gold)](https://github.com/harvard-edge/cs249r_book/stargazers) **Goal:** 10,000 stars = $100,000 in additional education funding [** Star Now**](https://github.com/harvard-edge/cs249r_book) *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](https://img.shields.io/badge/%20Support%20AI%20Education-Open%20Collective-blue.svg?style=for-the-badge)](https://opencollective.com/mlsysbook) *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

```bash

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

```bash git clone https://github.com/harvard-edge/cs249rbook.git cd cs249rbook

Quick setup (recommended)

./binder setup # Setup environment and dependencies ./binder doctor # Check system health

Fast development workflow

./binder preview intro # Fast chapter development ./binder build intro # Build specific chapter ./binder build # Build complete book (HTML) ./binder help # See all commands ```


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

Book Binder CLI (Recommended)

The Book Binder is our lightning-fast development CLI for streamlined building and iteration:

```bash

Chapter development (fast iteration)

./binder preview intro # Build and preview single chapter ./binder preview intro,ml_systems # Build and preview multiple chapters

Complete book building

./binder build # Build complete website (HTML) ./binder pdf # Build complete PDF ./binder epub # Build complete EPUB

Management

./binder clean # Clean artifacts ./binder status # Show current status ./binder doctor # Run health check ./binder help # Show all commands ```

Development Commands

```bash

Book Binder CLI (Recommended)

./binder setup # First-time setup ./binder build # Build complete HTML book ./binder pdf # Build complete PDF book
./binder epub # Build complete EPUB book ./binder preview intro # Preview chapter development

Traditional setup (if needed)

python3 -m venv .venv source .venv/bin/activate pip install -r tools/dependencies/requirements.txt pre-commit install ```

Project Structure

MLSysBook/ binder # Fast development CLI (recommended) quarto/ # Main book content (Quarto) contents/ # Chapter content core/ # Core chapters labs/ # Hands-on labs frontmatter/ # Preface, acknowledgments backmatter/ # References and resources parts/ # Book parts and sections _extensions/ # Quarto extensions config/ # Build configurations _quarto-html.yml # Website build configuration _quarto-pdf.yml # PDF build configuration data/ # Cross-reference and metadata files assets/ # Images, styles, media filters/ # Lua filters scripts/ # Build scripts _quarto.yml # Active config (symlink) tools/ # Development automation scripts/ # Organized development scripts content/ # Content management tools cross_refs/ # Cross-reference management genai/ # AI-assisted content tools maintenance/ # System maintenance scripts testing/ # Test and validation scripts utilities/ # General utility scripts dependencies/ # Package requirements setup/ # Setup and configuration config/ # Project configuration dev/ # Development configurations linting/ # Code quality configurations quarto/ # Quarto publishing settings docs/ # Documentation BINDER.md # Binder CLI guide BUILD.md # Build instructions DEVELOPMENT.md # Development guide contribute.md # Contribution guidelines CHANGELOG.md # Project changelog CITATION.bib # Citation information pyproject.toml # Python project configuration README.md # This file

Documentation

Publishing

```bash

Interactive publishing (recommended)

./binder publish

Command-line publishing

./binder publish "Description" COMMIT_HASH

Manual workflow (if needed)

./binder build html && ./binder build pdf

Then use GitHub Actions to deploy

```

Publishing Options: - ./binder publish Unified command with interactive and command-line modes - GitHub Actions Automated deployment via workflows

Getting Started

```bash

First time setup

./binder setup

Check system health

./binder doctor

Quick preview

./binder preview intro ```


Citation & License

Citation

bibtex @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 AttributionNonCommercialShareAlike 4.0 International (CC BY-NC-SA 4.0). You may share and adapt the material for non-commercial purposes with appropriate credit.


Contributors

Thanks goes to these wonderful people who have contributed to making this resource better for everyone:

Vijay Janapa Reddi
Vijay Janapa Reddi

Zeljko Hrcek
Zeljko Hrcek

Marcelo Rovai
Marcelo Rovai

jasonjabbour
jasonjabbour

Ikechukwu Uchendu
Ikechukwu Uchendu

Kai Kleinbard
Kai Kleinbard

Naeem Khoshnevis
Naeem Khoshnevis

Sara Khosravi
Sara Khosravi

Douwe den Blanken
Douwe den Blanken

Jeffrey Ma
Jeffrey Ma

shanzehbatool
shanzehbatool

Elias
Elias

Jared Ping
Jared Ping

Itai Shapira
Itai Shapira

Maximilian Lam
Maximilian Lam

Jayson Lin
Jayson Lin

Andrea
Andrea

Sophia Cho
Sophia Cho

Alex Rodriguez
Alex Rodriguez

Korneel Van den Berghe
Korneel Van den Berghe

Zishen Wan
Zishen Wan

Colby Banbury
Colby Banbury

Mark Mazumder
Mark Mazumder

Divya Amirtharaj
Divya Amirtharaj

Srivatsan Krishnan
Srivatsan Krishnan

Abdulrahman Mahmoud
Abdulrahman Mahmoud

Aghyad Deeb
Aghyad Deeb

marin-llobet
marin-llobet

Haoran Qiu
Haoran Qiu

oishib
oishib

Jared Ni
Jared Ni

ELSuitorHarvard
ELSuitorHarvard

Emil Njor
Emil Njor

Michael Schnebly
Michael Schnebly

Aditi Raju
Aditi Raju

Jae-Won Chung
Jae-Won Chung

Yu-Shun Hsiao
Yu-Shun Hsiao

Henry Bae
Henry Bae

Shvetank Prakash
Shvetank Prakash

Emeka Ezike
Emeka Ezike

Andrew Bass
Andrew Bass

Jennifer Zhou
Jennifer Zhou

Arya Tschand
Arya Tschand

Pong Trairatvorakul
Pong Trairatvorakul

Matthew Stewart
Matthew Stewart

Marco Zennaro
Marco Zennaro

Eura Nofshin
Eura Nofshin

Bruno Scaglione
Bruno Scaglione

Tauno Erik
Tauno Erik

Alex Oesterling
Alex Oesterling

gnodipac886
gnodipac886

Fin Amin
Fin Amin

Allen-Kuang
Allen-Kuang

TheHiddenLayer
TheHiddenLayer

Gauri Jain
Gauri Jain

Fatima Shah
Fatima Shah

Sercan Aygn
Sercan Aygn

The Random DIY
The Random DIY

Baldassarre Cesarano
Baldassarre Cesarano

Yang Zhou
Yang Zhou

yanjingl
yanjingl

Abenezer Angamo
Abenezer Angamo

Jason Yik
Jason Yik

  | Arnav Shukla
| Arnav Shukla

Aritra Ghosh
Aritra Ghosh

happyappledog
happyappledog

abigailswallow
abigailswallow

Bilge Acun
Bilge Acun

Andy Cheng
Andy Cheng

Cursor Agent
Cursor Agent

Emmanuel Rassou
Emmanuel Rassou

Jessica Quaye
Jessica Quaye

Vijay Edupuganti
Vijay Edupuganti

Shreya Johri
Shreya Johri

Sonia Murthy
Sonia Murthy

Costin-Andrei Oncescu
Costin-Andrei Oncescu

formlsysbookissue
formlsysbookissue

Annie Laurie Cook
Annie Laurie Cook

Jothi Ramaswamy
Jothi Ramaswamy

Batur Arslan
Batur Arslan

Curren Iyer
Curren Iyer

Fatima Shah
Fatima Shah

Edward Jin
Edward Jin

a-saraf
a-saraf

songhan
songhan

jvijay
jvijay

Zishen
Zishen


**Made with for AI learners worldwide** Our goal is to educate 1 million AI systems engineers for the future at the edge of AI.

Trigger build

Owner

  • Name: Harvard Edge Computing
  • Login: harvard-edge
  • Kind: organization

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 323
  • Total pull requests: 411
  • Average time to close issues: 24 days
  • Average time to close pull requests: 2 days
  • Total issue authors: 43
  • Total pull request authors: 39
  • Average comments per issue: 0.62
  • Average comments per pull request: 0.24
  • Merged pull requests: 319
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 197
  • Pull requests: 269
  • Average time to close issues: 10 days
  • Average time to close pull requests: about 20 hours
  • Issue authors: 29
  • Pull request authors: 25
  • Average comments per issue: 0.68
  • Average comments per pull request: 0.23
  • Merged pull requests: 211
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • profvjreddi (170)
  • BravoBaldo (56)
  • jasonjabbour (17)
  • 18jeffreyma (9)
  • hpssjellis (9)
  • formlsysbookissue (7)
  • Sara-Khosravi (5)
  • Mjrovai (5)
  • hzeljko (3)
  • huskydj1 (3)
  • zishenwan (3)
  • shanzehbatool (2)
  • emmanuel2406 (2)
  • FinAminToastCrunch (2)
  • AaryaPakhale (2)
Pull Request Authors
  • profvjreddi (182)
  • hzeljko (86)
  • jasonjabbour (22)
  • Mjrovai (21)
  • kai4avaya (15)
  • Sara-Khosravi (15)
  • BravoBaldo (9)
  • eliasab16 (8)
  • 18jeffreyma (6)
  • Naeemkh (5)
  • colbybanbury (3)
  • zishenwan (3)
  • shanzehbatool (2)
  • uchendui (2)
  • mip686 (2)
Top Labels
Issue Labels
improvement (91) maintainence (65) pdfbuild (6) bug (6) Socratiq AI (5) good first issue (4) new (4) socratiq ai (3) website (2) ePub (1) question (1) errata (1)
Pull Request Labels
improvement (15) maintainence (5) new (3) website (1)