
rohitg00/ai-engineering-from-scratch
Developer toolsLearn it. Build it. Ship it for others.
Overview
This curriculum closes that gap. 503 lessons. 20 phases. ~320 hours. Python, TypeScript, Rust, Julia. Every lesson ships a reusable artifact: a prompt, a skill, an agent, an MCP server. Free, open source, MIT. You don't just learn AI. You build it. End-to-end. By hand. 150,639 readers · 241,669 page views in the last 30 days · as of 2026-06-07 Most AI material teaches in scattered pieces. A paper here, a fine-tuning post there, a flashy agent demo somewhere else. The pieces rarely line up. You ship a chatbot but can't explain its loss curve. You hook a function to an agent but can't say what attention does inside the model that's calling it. This curriculum is the spine. 20 phases, 503 lessons, four languages: Python, TypeScript, Rust, Julia. Linear algebra at one end, autonomous swarms at the other. Every algorithm gets built from raw math first. Backprop. Tokenizer. Attention. Agent loop.
README
Implement model internals, retrieval pipelines, and agent runtimes. Test them, inspect failures, and keep the code and evaluation results.
Start learning · Choose a path · Try a lab · Build a project · Browse the curriculum
Free, open source, MIT. Learn on the website, with a coding agent, or by running local code.
542 lessons. 20 phases. Python, TypeScript, Rust, Julia.
Sponsors
Your support keeps every lesson free and open source. See all supporters · Become a sponsor
Learning paths
| Route | Starting lesson |
|---|---|
| Model foundations | Setup and tooling |
| LLM systems | Prompt engineering |
| Agents and delivery | The agent loop |
Compare career paths · Prerequisites and study time
Gradient descent
Twenty starting points follow gradient descent on a quadratic loss. The graph shows their positions and mean loss after each update.
Adjust the learning rate in the lesson · Compare GD, momentum, and Adam in code
Projects
Three projects with staged starters, reference implementations, and local graders. Run commands from the repository root after setup. Starters fail until you implement the stages.
Browse all projects · Career practice guide
Choose how to learn
On the website
Open any completed lesson on aiengineeringfromscratch.com or expand a phase under Contents. No setup, no cloning.
With an AI tutor
If Node.js, npx, and a skill-capable coding agent are already installed, your coding agent can become your tutor. A repository clone is not needed to install or read the tutor. Runnable focused-path labs need python3. Agent Skills host labs also need a selected host and a writable user or project skill scope.
npx skills add rohitg00/ai-engineering-from-scratch
Choose the host and scope when the installer asks. Use start-learning in Codex, /start-learning in Claude Code, or ask your host to use the skill by name.
Run local code
git clone https://github.com/rohitg00/ai-engineering-from-scratch.git
cd ai-engineering-from-scratch
python3 phases/00-setup-and-tooling/01-dev-environment/code/verify.py --route beginner
python3 phases/01-math-foundations/01-linear-algebra-intuition/code/vectors.py
The preflight separates requirements needed now from tools needed later. Every
required failure includes the detected reason and a corrective command. The
vectors.py command is a dependency-free lesson and ends by showing that a matrix
times a vector is the operation inside a neural network layer. Save that
terminal output as your first evidence.
Choose a learning path
You do not need to scan 542 lessons before beginning. Pick one goal. Each link opens the same curriculum on GitHub or the website, and both versions use the same lesson code.
| Your goal | Learn on GitHub | Learn on the website |
|---|---|---|
| I am new and want the complete foundation | Phase 0: Setup and Tooling | Dev Environment |
| I know Python and want math plus ML foundations | Phase 1: Math Foundations | Linear Algebra Intuition |
| I want to build production LLM applications | Phase 11: LLM Engineering | Prompt Engineering |
| I want to build agents | Phase 14: Agent Engineering | The Agent Loop |
| I want to use coding agents on real repositories | Agent-Assisted Engineering path | Agent-Assisted Engineering |
| I want to shape the right build before implementation | Product Judgment and Delivery path | Product Judgment and Delivery |
Not sure where you fit? Use the start-learning placement tutor
or the website prerequisites guide.
Compare four core domains and six career routes in the AI Engineering Learning Paths.
The shape of the curriculum
Twenty phases stack on top of each other. Math is the floor. Agents and production are the roof. Skip ahead if you already know the lower layers, but don’t skip and then wonder why something at the top is breaking.
%%{init: {'theme':'base','themeVariables':{'primaryColor':'#fafaf5','primaryTextColor':'#1a1a1a','primaryBorderColor':'#3553ff','lineColor':'#3553ff','fontFamily':'JetBrains Mono','fontSize':'12px'}}}%%
flowchart TB
P0["Phase 0 — Setup & Tooling"] --> P1["Phase 1 — Math Foundations"]
P1 --> P2["Phase 2 — ML Fundamentals"]
P2 --> P3["Phase 3 — Deep Learning Core"]
P3 --> P4["Phase 4 — Vision"]
P3 --> P5["Phase 5 — NLP"]
P3 --> P6["Phase 6 — Speech & Audio"]
P3 --> P9["Phase 9 — RL"]
P5 --> P7["Phase 7 — Transformers"]
P7 --> P8["Phase 8 — GenAI"]
P7 --> P10["Phase 10 — LLMs from Scratch"]
P10 --> P11["Phase 11 — LLM Engineering"]
P10 --> P12["Phase 12 — Multimodal"]
P11 --> P13["Phase 13 — Tools & Protocols"]
P13 --> P14["Phase 14 — Agent Engineering"]
P14 --> P15["Phase 15 — Autonomous Systems"]
P15 --> P16["Phase 16 — Multi-Agent & Swarms"]
P14 --> P17["Phase 17 — Infrastructure & Production"]
P15 --> P18["Phase 18 — Ethics & Alignment"]
P16 --> P19["Phase 19 — Capstone Projects"]
P17 --> P19
P18 --> P19
Contents
Twenty phases. Click any phase to expand its lesson list.
Phase 0: Setup & Tooling 13 lessons
Get your environment ready for everything that follows.
| # | Lesson | Type | Lang |
|---|---|---|---|
| 01 | Dev Environment | Build | Python |
| 02 | Git & Collaboration | Learn | — |
| 03 | GPU Setup & Cloud | Build | Python |
| 04 | APIs & Keys | Build | Python |
| 05 | Jupyter Notebooks | Build | Python |
| 06 | Python Environments | Build | Shell |
| 07 | Docker for AI | Build | Docker |
| 08 | Editor Setup | Build | — |
| 09 | Data Management | Build | Python |
| 10 | Terminal & Shell | Learn | — |
| 11 | Linux for AI | Learn | — |
| 12 | Debugging & Profiling | Build | Python |
| 13 | Python for AI Engineering | Build | Python |
Books and certifications
The toolkit
Every lesson produces a reusable artifact. Install one in your agent or use the scripts below from the repository root.
Contributing
| Goal | Read |
|---|---|
| Contribute a lesson or fix | CONTRIBUTING.md |
| Fork for your team or school | FORKING.md |
| Lesson template | LESSON_TEMPLATE.md |
| Track progress | ROADMAP.md |
| Glossary | glossary/terms.md |
| Code of conduct | CODE_OF_CONDUCT.md |
Before submitting a lesson, run the invariant check:
python3 scripts/audit_lessons.py # full curriculum
python3 scripts/audit_lessons.py --phase 14 # single phase
python3 scripts/audit_lessons.py --json # CI-friendly output
Exit code is non-zero when any rule fails. Rules (L001–L010) validate directory
shape, docs/en.md presence + H1, code/ non-emptiness, quiz.json schema
(rejects the legacy q/choices/answer keys that caused issue #102), and
relative links inside lesson docs.
Sponsor the work
114,584 readers · 181,995 page views in the last 30 days · as of 2026-08-29
Free, MIT-licensed, 542 lessons. Thank you to the sponsors and backers who make the work possible. See all sponsors and backers.
Want to support the work? See sponsorship options, including hardware sponsorships, or sponsor on GitHub.
If this manual helped you, star the repo. It keeps the project alive.
License
MIT. Use it however you want — fork it, teach it, sell it, ship it. Attribution appreciated, not required.
Maintained by Rohit Ghumare and the community.
@ghumare64 · aiengineeringfromscratch.com · Report / Suggest
Recommended Tools
Try a different keyword or remove a filter.
Install
npx skillfish add rohitg00/ai-engineering-from-scratch