{"id":13425245,"url":"https://github.com/chiphuyen/machine-learning-systems-design","last_synced_at":"2026-01-27T23:47:00.114Z","repository":{"id":37900938,"uuid":"223824546","full_name":"chiphuyen/machine-learning-systems-design","owner":"chiphuyen","description":"A booklet on machine learning systems design with exercises. NOT the repo for the book \"Designing Machine Learning Systems\", which is `dmls-book`","archived":false,"fork":false,"pushed_at":"2023-04-15T16:33:50.000Z","size":1408,"stargazers_count":9595,"open_issues_count":10,"forks_count":1491,"subscribers_count":301,"default_branch":"master","last_synced_at":"2025-10-14T11:35:25.549Z","etag":null,"topics":["data-science","machine-learning-production","mlops"],"latest_commit_sha":null,"homepage":"https://huyenchip.com/machine-learning-systems-design/toc.html","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/chiphuyen.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2019-11-24T23:16:28.000Z","updated_at":"2025-10-13T12:15:03.000Z","dependencies_parsed_at":"2023-01-21T12:33:38.669Z","dependency_job_id":"e896e1dd-9996-4f14-8e95-29dd2a150233","html_url":"https://github.com/chiphuyen/machine-learning-systems-design","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/chiphuyen/machine-learning-systems-design","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chiphuyen%2Fmachine-learning-systems-design","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chiphuyen%2Fmachine-learning-systems-design/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chiphuyen%2Fmachine-learning-systems-design/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chiphuyen%2Fmachine-learning-systems-design/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/chiphuyen","download_url":"https://codeload.github.com/chiphuyen/machine-learning-systems-design/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chiphuyen%2Fmachine-learning-systems-design/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28827902,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-27T23:29:49.665Z","status":"ssl_error","status_checked_at":"2026-01-27T23:25:58.379Z","response_time":168,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["data-science","machine-learning-production","mlops"],"created_at":"2024-07-31T00:01:08.201Z","updated_at":"2026-01-27T23:47:00.092Z","avatar_url":"https://github.com/chiphuyen.png","language":"HTML","readme":"# Machine Learning Systems Design\n\n**Read this booklet [here](https://huyenchip.com/machine-learning-systems-design/toc.html).**\n\n\u003e\u003eThis booklet was my initial attempt to write about machine learning systems design back in 2019. My understanding of the topic has gone through significant iterations since then. My book [Designing Machine Learning Systems](https://www.amazon.com/Designing-Machine-Learning-Systems-Production-Ready/dp/1098107969) (O'Reilly, June 2022) is much more comprehensive and up-to-date. [The new book's repo](https://github.com/chiphuyen/dmls-book) contains the full table of contents, chapter summaries, and random thoughts on MLOps tooling.\n\nThis booklet covers four main steps of designing a machine learning system:\n\n1. Project setup\n2. Data pipeline\n3. Modeling: selecting, training, and debugging\n4. Serving: testing, deploying, and maintaining\n\nIt comes with links to practical resources that explain each aspect in more details. It also suggests case studies written by machine learning engineers at major tech companies who have deployed machine learning systems to solve real-world problems.\n\nAt the end, the booklet contains 27 open-ended machine learning systems design questions that might come up in machine learning interviews. The answers for these questions will be published in the book **Machine Learning Interviews**. You can look at and contribute to community answers to these questions on GitHub [here](https://github.com/chiphuyen/machine-learning-systems-design/tree/master/answers). You can read more about the book and sign up for the book's mailing list [here](https://huyenchip.com/2019/07/21/machine-learning-interviews.html).\n\n\n## Contribute\nThis is work-in-progress so any type of contribution is very much appreciated. Here are a few ways you can contribute:\n\n1. Improve the text by fixing any lexical, grammatical, or technical error\n1. Add more relevant resources to each aspect of the machine learning project flow\n1. Add/edit questions\n1. Add/edit answers\n1. Other\n\nThis book was created using the wonderful [`magicbook`](https://github.com/magicbookproject/magicbook) package. For detailed instructions on how to use the package, see their GitHub repo. The package requires that you have `node`. If you're on Mac, you can install `node` using:\n\n```\nbrew install node\n```\n\nInstall `magicbook` with:\n\n```\nnpm install magicbook\n```\n\nClone this repository:\n\n```\ngit clone https://github.com/chiphuyen/machine-learning-systems-design.git\ncd machine-learning-systems-design\n```\n\nAfter you've made changes to the content in the `content` folder, you can build the booklet by the following steps:\n\n```\nmagicbook build\n```\n\nYou'll find the generated HTML and PDF files in the folder `build`.\n\n## Acknowledgment\n\nI'd like to thank Ben Krause for being a great friend and helping me with this draft!\n\n\n## Citation\n","funding_links":[],"categories":["HTML","ML systems design \u0026 Applications","Please find below the links to awesome cheat-sheet and resources:","A01_机器学习教程","🎤 AI Interview Preparation"],"sub_categories":["Machine-Learning/Data Science/AI/DL:","Resources"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchiphuyen%2Fmachine-learning-systems-design","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchiphuyen%2Fmachine-learning-systems-design","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchiphuyen%2Fmachine-learning-systems-design/lists"}