labs/README.md
Content may be incomplete or change without notice. The published curriculum lives at <a href="https://mlsysbook.ai"><b>mlsysbook.ai</b></a>.</p>
<p> <a href="https://github.com/harvard-edge/cs249r_book/tree/dev"></a> <a href="https://mlsysbook.ai"></a> </p> </td></tr> </table> </div> <!-- DEV-BANNER-END --> <div align="center"> <h1>Co-Labs</h1> <blockquote> <b>33 Interactive Labs Powered by MLSysยทIM</b><i>Predict โ Discover โ Explain</i>
Co-Labs are interactive Marimo notebooks that bridge the gap between reading about ML systems (the textbook) and building them from scratch (TinyTorch). Every lab runs in your browser via WebAssembly โ no installation required.
<p align="center"> </p>Each lab follows a consistent structure:
Every prediction is structured (radio buttons or numeric entry, never free text). You predict first, then explore the instruments to discover whether you were right. The gap between prediction and reality is the learning moment.
Every lab saves your predictions and design decisions to the Design Ledger โ a persistence layer in your browser's localStorage. Later labs read earlier decisions: Lab 08's training memory budget builds on Lab 05's activation analysis, which builds on Lab 01's magnitude calibration. The capstone labs synthesize your full Design Ledger into a portfolio.
Visit the Co-Labs site and click any lab. They run via Marimo + WebAssembly with zero setup.
pip install mlsysim[labs]
git clone https://github.com/harvard-edge/cs249r_book.git
cd cs249r_book/labs
marimo run vol1/lab_01_ml_intro.py
See PROTOCOL.md for the lab development specification and TEMPLATE.md for the cell architecture and quality checklist.
pytest tests/test_static.py -v
Thanks to these wonderful people who helped build the labs!
<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section --> <!-- prettier-ignore-start --> <!-- markdownlint-disable --> <table> <tbody> <tr> <td align="center" valign="top" width="14.28%"><a href="https://github.com/profvjreddi"> <sub><b>Vijay Janapa Reddi</b></sub></a> ๐งโ๐ป ๐จ โ๏ธ</td> <td align="center" valign="top" width="14.28%"><a href="https://github.com/salmanmkc"> <sub><b>Salman Chishti</b></sub></a> ๐งโ๐ป</td> <td align="center" valign="top" width="14.28%"><a href="https://github.com/Pratham-ja"> <sub><b>Pratham Chaudhary</b></sub></a> ๐งโ๐ป</td> </tr> </tbody> </table> <!-- markdownlint-restore --> <!-- prettier-ignore-end --> <!-- ALL-CONTRIBUTORS-LIST:END -->Recognize a contributor: Comment on any issue or PR:
@all-contributors please add @username for code, tutorial, test, or doc
<b>Predict. Discover. Explain.</b>
</div>