Learn AI Engineering! Learn it. Build it. Ship it for others.

★ 78,200⑂ 13,906👁 459⑃ 605● 128▤ 10◈ 10
PythonMITCreated 2026-03-18aiengineeringfromscratch.com
78,200
stars
+277+1,823
13,906
forks
459
watchers
605
prs
128
issues
10
releases
10
discussions

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, Go.


  
  
  
  
  



Read in your language


  🇬🇧 English ·
  🇨🇳 简体中文 ·
  🇹🇼 繁體中文(台灣) ·
  🇯🇵 日本語 ·
  🇰🇷 한국어 ·
  🇵🇹 Português ·
  🇧🇷 Português (Brasil) ·
  🇪🇸 Español ·
  🇩🇪 Deutsch ·
  🇫🇷 Français ·
  🇮🇹 Italiano ·
  🇳🇱 Nederlands ·
  🇵🇱 Polski ·
  🇨🇿 Čeština ·
  🇷🇴 Română ·
  🇭🇺 Magyar ·
  🇬🇷 Ελληνικά ·
  🇸🇪 Svenska ·
  🇩🇰 Dansk ·
  🇳🇴 Norsk ·
  🇫🇮 Suomi ·
  🇷🇺 Русский ·
  🇺🇦 Українська ·
  🇹🇷 Türkçe ·
  🇮🇱 עברית ·
  🇸🇦 العربية ·
  🇮🇷 فارسی ·
  🇮🇳 हिन्दी ·
  🇧🇩 বাংলা ·
  🇵🇰 اردو ·
  🇹🇭 ไทย ·
  🇻🇳 Tiếng Việt ·
  🇮🇩 Bahasa Indonesia ·
  🇵🇭 Tagalog




 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.


01 · Retrieval Evaluation Lab · Python · Ranking metrics and regression checks

A candidate improves mean NDCG while one query ranks its most relevant evidence lower. Build a query-by-query comparison that reports the regression and can fail a release check.

Use Python 3.10+. Review RAG and model evaluation. Implement ranking validation, precision and recall, rank-sensitive metrics, then system comparison.

bash
python3 scripts/project_test.py retrieval-evaluation-lab \
  --init learning-artifacts/retrieval-evaluation-lab
python3 scripts/project_test.py retrieval-evaluation-lab \
  --stage 1 --path learning-artifacts/retrieval-evaluation-lab --strict
python3 scripts/project_test.py retrieval-evaluation-lab \
  --all --path learning-artifacts/retrieval-evaluation-lab --strict


Keep: a reproducible comparison with per-query deltas and the judgments used to score them. Metrics describe those judgments; they do not establish answer correctness.

Start the project · Inspect the reference · Run on your own inputs




02 · Agent Trace Debugger · TypeScript · Trace parsing and timing

A supplied trace still takes 100 ms, but total token usage rises by 200 and one span starts failing. Separate over

Top issues

Discussions

Latest release

Edition 2026.11.1: Interview Bank and Incident Scenarios v2026.11.1 2026-11-03
Practise for AI engineering interviews against the course itself. This edition adds an interview bank of 482 questions and 60 measured incident scenarios, a mock interview skill, and code blocks rendered at build time.

Interviews · Scenarios · Skills · Start learning

!Browsing the interview bank

 Interview bank

- 482 questions in 23 cards, from math and classical ML to inference serving, agents, protocols, sandboxes and system design.
- Each question shows the prompt first and folds the answer, so you answer before you read. A short answer, a full answer, follow-ups from L1 to L4, and the 

Snapshot: 2026-11-10T09:35:25Z · Data license Apache-2.0 · JSON