กลับไปหน้า Tools

GetNotes Tools

rohitg00/ai-engineering-from-scratch

Tool นี้คืออะไร

AI Engineering from Scratch เป็นหลักสูตรที่ครอบคลุมและลงมือปฏิบัติจริงสำหรับนักพัฒนาที่ต้องการสร้างและทำความเข้าใจ AI ตั้งแต่พื้นฐานทางคณิตศาสตร์ไปจนถึงระบบเอเจนต์และระบบการผลิต โดยมีเป้าหมายเพื่อปิดช่องว่างระหว่างการใช้เครื่องมือ AI กับการเตรียมพร้อมสำหรับการใช้งานในระดับมืออาชีพ

ข้อมูลโปรเจกต์

ดาว

54.4K

Forks

9.5K

License

MIT

อัปเดต GitHub ล่าสุด

7 ก.ย. 2569

เพิ่มใน GetNotes

30 ก.ค. 2569

Repository

rohitg00/ai-engineering-from-scratch

เหมาะกับงาน

AI และ AgentsAutomation

เหมาะกับอาชีพ

Ecosystem

Python

แปลและเรียบเรียงโดย AI

เนื้อหาฉบับภาษาไทย

ใช้อ่านเพื่อทำความเข้าใจเบื้องต้น โปรดตรวจสอบรายละเอียดสำคัญกับเอกสารต้นฉบับด้านล่าง

ใบอนุญาต MIT503 บทเรียน20 เฟสดาว GitHubเว็บไซต์

จากผู้สร้าง Agent Memory - #1 Persistent memory ⭐ ดาว GitHub ซึ่งทำงานร่วมกับเอเจนต์หรือผู้ช่วยแชทใดๆ ได้อย่างเป็นธรรมชาติ

code
░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒

84% ของนักเรียนใช้เครื่องมือ AI อยู่แล้ว แต่มีเพียง 18% เท่านั้นที่รู้สึกพร้อมที่จะใช้งานอย่างมืออาชีพ หลักสูตรนี้จะช่วยปิดช่องว่างนั้น

503 บทเรียน 20 เฟส ใช้เวลาประมาณ 320 ชั่วโมง Python, TypeScript, Rust, Julia ทุกบทเรียนมาพร้อมกับสิ่งประดิษฐ์ที่นำกลับมาใช้ใหม่ได้: prompt, skill, agent, หรือ MCP server ฟรี, open source, MIT

คุณไม่ได้แค่เรียนรู้ AI แต่คุณสร้างมันขึ้นมา ตั้งแต่ต้นจนจบ ด้วยมือของคุณเอง

วิธีการทำงาน

เนื้อหา AI ส่วนใหญ่สอนเป็นชิ้นส่วนกระจัดกระจาย บทความหนึ่งที่นี่ โพสต์การปรับแต่งที่นั่น การสาธิตเอเจนต์ที่น่าตื่นเต้นที่อื่น ชิ้นส่วนเหล่านี้ไม่ค่อยเชื่อมโยงกัน คุณสร้างแชทบอทแต่ไม่สามารถอธิบาย loss curve ของมันได้ คุณเชื่อมฟังก์ชันเข้ากับเอเจนต์แต่ไม่สามารถบอกได้ว่า attention ทำอะไรภายในโมเดลที่เรียกใช้มัน

หลักสูตรนี้คือแกนหลัก 20 เฟส, 503 บทเรียน, สี่ภาษา: Python, TypeScript, Rust, Julia ตั้งแต่พีชคณิตเชิงเส้นไปจนถึงฝูงระบบอัตโนมัติ ทุกอัลกอริทึมจะถูกสร้างขึ้นจากคณิตศาสตร์ดิบก่อน Backprop. Tokenizer. Attention. Agent loop. เมื่อ PyTorch ปรากฏขึ้น คุณจะรู้แล้วว่ามันกำลังทำอะไรอยู่ภายใต้พื้นฐาน

แต่ละบทเรียนจะดำเนินตามวงจรเดียวกัน: อ่านปัญหา, สร้างคณิตศาสตร์, เขียนโค้ด, รันการทดสอบ, เก็บสิ่งประดิษฐ์ ไม่มีวิดีโอห้านาที, ไม่มีการคัดลอกและวางเพื่อปรับใช้, ไม่มีการจับมือสอน ฟรี, open source และสร้างขึ้นเพื่อรันบนแล็ปท็อปของคุณเอง

code
░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒

โครงสร้างของหลักสูตร

ยี่สิบเฟสซ้อนทับกัน คณิตศาสตร์คือพื้น เอเจนต์และการผลิตคือหลังคา ข้ามไปข้างหน้าได้หากคุณรู้เลเยอร์ล่างๆ อยู่แล้ว แต่อย่าข้ามแล้วมาสงสัยว่าทำไมบางอย่างที่อยู่ด้านบนถึงพัง

mermaid
%%{init: {'theme':'base','themeVariables':{'primaryColor':'#fafaf5','primaryTextColor':'#1a1a1a','primaryBorderColor':'#3553ff','lineColor':'#3553ff','fontFamily':'JetBrains Mono','fontSize':'12px'}}}%%
flowchart TB
  P0["เฟส 0 — การตั้งค่าและเครื่องมือ"] --> P1["เฟส 1 — พื้นฐานคณิตศาสตร์"]
  P1 --> P2["เฟส 2 — พื้นฐาน ML"]
  P2 --> P3["เฟส 3 — แกนหลัก Deep Learning"]
  P3 --> P4["เฟส 4 — วิทัศน์"]
  P3 --> P5["เฟส 5 — NLP"]
  P3 --> P6["เฟส 6 — เสียงและออดิโอ"]
  P3 --> P9["เฟส 9 — RL"]
  P5 --> P7["เฟส 7 — Transformers"]
  P7 --> P8["เฟส 8 — GenAI"]
  P7 --> P10["เฟส 10 — LLM จากศูนย์"]
  P10 --> P11["เฟส 11 — วิศวกรรม LLM"]
  P10 --> P12["เฟส 12 — มัลติโมดัล"]
  P11 --> P13["เฟส 13 — เครื่องมือและโปรโตคอล"]
  P13 --> P14["เฟส 14 — วิศวกรรมเอเจนต์"]
  P14 --> P15["เฟส 15 — ระบบอัตโนมัติ"]
  P15 --> P16["เฟส 16 — หลายเอเจนต์และฝูง"]
  P14 --> P17["เฟส 17 — โครงสร้างพื้นฐานและการผลิต"]
  P15 --> P18["เฟส 18 — จริยธรรมและการจัดแนว"]
  P16 --> P19["เฟส 19 — โครงการ Capstone"]
  P17 --> P19
  P18 --> P19
code
░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒

โครงสร้างของบทเรียน

แต่ละบทเรียนจะอยู่ในโฟลเดอร์ของตัวเอง โดยมีโครงสร้างเดียวกันตลอดทั้งหลักสูตร:

code
phases/<NN>-<phase-name>/<NN>-<lesson-name>/
├── code/      การนำไปใช้งานที่รันได้ (Python, TypeScript, Rust, Julia)
├── docs/
│   └── en.md  เนื้อหาบทเรียน
└── outputs/   prompts, skills, agents, หรือ MCP servers ที่บทเรียนนี้สร้างขึ้น

ทุกบทเรียนจะดำเนินตามหกขั้นตอน การแบ่ง Build It / Use It คือแกนหลัก — คุณจะนำอัลกอริทึมไปใช้ตั้งแต่เริ่มต้นก่อน จากนั้นจึงรันสิ่งเดียวกันผ่านไลบรารีการผลิต คุณจะเข้าใจว่าเฟรมเวิร์กกำลังทำอะไรอยู่ เพราะคุณได้เขียนเวอร์ชันที่เล็กกว่าด้วยตัวเอง

mermaid
%%{init: {'theme':'base','themeVariables':{'primaryColor':'#fafaf5','primaryTextColor':'#1a1a1a','primaryBorderColor':'#3553ff','lineColor':'#3553ff','fontFamily':'JetBrains Mono','fontSize':'13px'}}}%%
flowchart LR
  M["คติประจำใจ<br/><sub>แนวคิดหลักหนึ่งบรรทัด</sub>"] --> Pr["ปัญหา<br/><sub>ปัญหาที่จับต้องได้</sub>"]
  Pr --> C["แนวคิด<br/><sub>แผนภาพและสัญชาตญาณ</sub>"]
  C --> B["สร้างมัน<br/><sub>คณิตศาสตร์ดิบ ไม่มีเฟรมเวิร์ก</sub>"]
  B --> U["ใช้งานมัน<br/><sub>สิ่งเดียวกันใน PyTorch / sklearn</sub>"]
  U --> S["ส่งมอบมัน<br/><sub>prompt · skill · agent · MCP</sub>"]

เริ่มต้นใช้งาน

มีสามวิธีในการเริ่มต้น เลือกหนึ่งวิธี

ตัวเลือก A — อ่าน เปิดบทเรียนที่เสร็จสมบูรณ์ใดๆ บน aiengineeringfromscratch.com หรือขยายเฟสภายใต้ Contents ไม่ต้องตั้งค่า ไม่ต้องโคลน

ตัวเลือก B — โคลนและรัน

bash
git clone https://github.com/rohitg00/ai-engineering-from-scratch.git
cd ai-engineering-from-scratch
python phases/01-math-foundations/01-linear-algebra-intuition/code/vectors.py

*ตัวเลือก C — ค้นหาระดับของคุณ (แนะนำ).* ข้ามไปข้างหน้าอย่างชาญฉลาด ภายใน Claude, Cursor, Codex, OpenClaw, Hermes หรือเอเจนต์ใดๆ ที่ติดตั้งทักษะหลักสูตรแล้ว:

bash
/find-your-level

สิบคำถาม จับคู่ความรู้ของคุณกับเฟสเริ่มต้น สร้างเส้นทางส่วนบุคคลพร้อมประมาณการชั่วโมงเรียน หลังจากแต่ละเฟส:

bash
/check-understanding 3        # ทดสอบตัวเองในเฟส 3
ls phases/03-deep-learning-core/05-loss-functions/outputs/
# ├── prompt-loss-function-selector.md
# └── prompt-loss-debugger.md

ข้อกำหนดเบื้องต้น

  • คุณสามารถเขียนโค้ดได้ (ภาษาใดก็ได้; Python จะช่วยได้)
  • คุณต้องการทำความเข้าใจว่า AI ทำงานอย่างไรจริงๆ ไม่ใช่แค่เรียกใช้ API

ทักษะเอเจนต์ในตัว (Claude, Cursor, Codex, OpenClaw, Hermes)

ทักษะสิ่งที่ทำ
/find-your-levelแบบทดสอบวัดระดับสิบคำถาม จับคู่ความรู้ของคุณกับเฟสเริ่มต้นและสร้างเส้นทางส่วนบุคคลพร้อมประมาณการชั่วโมงเรียน
/check-understanding <phase>แบบทดสอบรายเฟส แปดคำถาม พร้อมข้อเสนอแนะและบทเรียนเฉพาะที่ต้องทบทวน
code
░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒

อ่านเป็นหนังสือ

หลักสูตรทั้งหมดรวบรวมเป็นชุดหนังสือหกเล่ม ไฟล์ EPUB และ PDF ถูกสร้างโดย CI จากแหล่งที่มาของบทเรียนเดียวกันและแนบมากับทุก GitHub release ลิงก์ด้านล่างจะนำไปสู่ release ล่าสุดเสมอ หมายเลขเล่มใช้สำหรับจัดทำดัชนีชุดหนังสือ ไม่ใช่เวอร์ชัน: สำเนาแต่ละชุดจะมีตราประทับวันที่ของฉบับ และฉบับเก่าสามารถดาวน์โหลดได้จาก release ของมัน

เล่มชื่อเรื่องเฟสดาวน์โหลด
1พื้นฐาน · คณิตศาสตร์, เครื่องมือ, และแมชชีนเลิร์นนิงแบบดั้งเดิม00-02EPUB · PDF
2Deep Learning · เครือข่าย, วิทัศน์, และเสียงพูด03, 04, 06EPUB · PDF
3ภาษา · พื้นฐาน NLP และ Transformer05, 07EPUB · PDF
4โมเดลภาษาขนาดใหญ่ · การสร้าง, การเสริมแรง, การฝึกอบรมล่วงหน้า, และวิศวกรรม08-11EPUB · PDF
5เอเจนต์ · มัลติโมดัล, โปรโตคอล, ระบบอัตโนมัติ, และฝูง12-16EPUB · PDF
6การผลิต · โครงสร้างพื้นฐาน, ความปลอดภัย, และโครงการ Capstone17-19EPUB · PDF

หนังสือคือภาพรวม ส่วน repository นี้คือฉบับที่ยังมีชีวิต ทุกบทจะจบลงด้วยลิงก์กลับไปยังภาพเคลื่อนไหวของบทเรียน แบบทดสอบ และโค้ดที่รันได้ สร้างหนังสือในเครื่องด้วย python3 scripts/build_book.py (ต้องมี pandoc); รายละเอียดของ pipeline อยู่ใน book/README.md

text
░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒

ทุกบทเรียนมีผลลัพธ์

หลักสูตรอื่น ๆ มักจะจบลงด้วย "ขอแสดงความยินดี คุณได้เรียนรู้ X แล้ว" แต่ละบทเรียนที่นี่จะจบลงด้วย เครื่องมือที่นำกลับมาใช้ใหม่ได้ ซึ่งคุณสามารถติดตั้งหรือนำไปใช้ในเวิร์กโฟลว์ประจำวันของคุณได้

ติดตั้งทั้งหมดด้วย python3 scripts/install_skills.py นี่คือเครื่องมือจริง ไม่ใช่การบ้าน เมื่อจบคอร์ส คุณจะมีผลงาน 503 ชิ้นที่คุณเข้าใจอย่างแท้จริง เพราะคุณเป็นคนสร้างมันขึ้นมา

FIG_002 · ตัวอย่างการทำงาน

Phase 14, บทเรียนที่ 1: agent loop โค้ด Python บริสุทธิ์ประมาณ 120 บรรทัด ไม่มี dependency

code/agent_loop.py &nbsp; สร้างมันขึ้นมา

python
def run(query, tools):
    history = [user(query)]
    for step in range(MAX_STEPS):
        msg = llm(history)
        if msg.tool_calls:
            for call in msg.tool_calls:
                result = tools[call.name](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/**call.args)
                history.append(tool_result(call.id, result))
            continue
        return msg.content
    raise StepLimitExceeded

outputs/skill-agent-loop.md &nbsp; ส่งมอบมัน

markdown
---
name: agent-loop
description: ReAct-style loop for any tool list
phase: 14
lesson: 01
---

Implement a minimal agent loop that...

outputs/prompt-debug-agent.md

markdown
You are an agent debugger. Given the trace
of an agent run, identify the step where
the agent went wrong and explain why...
code
░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒

สารบัญ

มีทั้งหมด 20 phase คลิกที่ phase ใดก็ได้เพื่อขยายรายการบทเรียน

Phase 0: การตั้งค่าและเครื่องมือ 12 บทเรียน

เตรียมสภาพแวดล้อมของคุณให้พร้อมสำหรับทุกสิ่งที่ตามมา

#บทเรียนประเภทภาษา
01สภาพแวดล้อมการพัฒนาสร้างPython
02Git และการทำงานร่วมกันเรียนรู้
03การตั้งค่า GPU และ Cloudสร้างPython
04API และคีย์สร้างPython
05Jupyter Notebooksสร้างPython
06สภาพแวดล้อม Pythonสร้างShell
07Docker สำหรับ AIสร้างDocker
08การตั้งค่า Editorสร้าง
09การจัดการข้อมูลสร้างPython
10Terminal และ Shellเรียนรู้
11Linux สำหรับ AIเรียนรู้
12การดีบักและ Profilingสร้างPython
#บทเรียนประเภทภาษา
01ความเข้าใจเชิงเส้นพีชคณิตเรียนรู้Python, Julia
02เวกเตอร์ เมทริกซ์ และการดำเนินการสร้างPython, Julia
03การแปลงเมทริกซ์และค่า Eigenvalueสร้างPython, Julia
04แคลคูลัสสำหรับ ML: อนุพันธ์และ Gradientเรียนรู้Python
05Chain Rule และ Automatic Differentiationสร้างPython
06ความน่าจะเป็นและการแจกแจงเรียนรู้Python
07ทฤษฎีบทของ Bayes และการคิดเชิงสถิติสร้างPython
08การปรับให้เหมาะสม: ตระกูล Gradient Descentสร้างPython
09ทฤษฎีสารสนเทศ: Entropy, KL Divergenceเรียนรู้Python
10การลดมิติ: PCA, t-SNE, UMAPสร้างPython
11การแยกค่าเอกฐาน (Singular Value Decomposition)สร้างPython, Julia
12การดำเนินการ Tensorสร้างPython
13ความเสถียรเชิงตัวเลขสร้างPython
14Norms และระยะทางสร้างPython
15สถิติสำหรับ MLสร้างPython
16วิธีการสุ่มตัวอย่างสร้างPython
17ระบบเชิงเส้นสร้างPython
18การปรับให้เหมาะสมแบบ Convexสร้างPython
19จำนวนเชิงซ้อนสำหรับ AIเรียนรู้Python
20การแปลงฟูเรียร์สร้างPython
21ทฤษฎีกราฟสำหรับ MLสร้างPython
22กระบวนการสุ่มเรียนรู้Python
#บทเรียนประเภทภาษา
01What Is Machine Learningเรียนรู้Python
02Linear Regression from Scratchสร้างPython
03Logistic Regression & Classificationสร้างPython
04Decision Trees & Random Forestsสร้างPython
05Support Vector Machinesสร้างPython
06KNN & Distance Metricsสร้างPython
07Unsupervised Learning: K-Means, DBSCANสร้างPython
08Feature Engineering & Selectionสร้างPython
09Model Evaluation: Metrics, Cross-Validationสร้างPython
10Bias, Variance & the Learning Curveเรียนรู้Python
11Ensemble Methods: Boosting, Bagging, Stackingสร้างPython
12Hyperparameter Tuningสร้างPython
13ML Pipelines & Experiment Trackingสร้างPython
14Naive Bayesสร้างPython
15Time Series Fundamentalsสร้างPython
16Anomaly Detectionสร้างPython
17Handling Imbalanced Dataสร้างPython
18Feature Selectionสร้างPython
#บทเรียนประเภทภาษา
01The Perceptron: Where It All Startedสร้างPython
02Multi-Layer Networks & Forward Passสร้างPython
03Backpropagation from Scratchสร้างPython
04Activation Functions: ReLU, Sigmoid, GELU & Whyสร้างPython
05Loss Functions: MSE, Cross-Entropy, Contrastiveสร้างPython
06Optimizers: SGD, Momentum, Adam, AdamWสร้างPython
07Regularization: Dropout, Weight Decay, BatchNormสร้างPython
08Weight Initialization & Training Stabilityสร้างPython
09Learning Rate Schedules & Warmupสร้างPython
10Build Your Own Mini Frameworkสร้างPython
11Introduction to PyTorchสร้างPython
12Introduction to JAXสร้างPython
13Debugging Neural Networksสร้างPython
#บทเรียนประเภทภาษา
01Image Fundamentals: Pixels, Channels, Color Spacesเรียนรู้Python
02Convolutions from Scratchสร้างPython
03CNNs: LeNet to ResNetสร้างPython
04Image Classificationสร้างPython
05Transfer Learning & Fine-Tuningสร้างPython
06Object Detection — YOLO from Scratchสร้างPython
07Semantic Segmentation — U-Netสร้างPython
08Instance Segmentation — Mask R-CNNสร้างPython
09Image Generation — GANsสร้างPython
10Image Generation — Diffusion Modelsสร้างPython
11Stable Diffusion — Architecture & Fine-Tuningสร้างPython
12Video Understanding — Temporal Modelingสร้างPython
133D Vision: Point Clouds, NeRFsสร้างPython
14Vision Transformers (ViT)สร้างPython
15Real-Time Vision: Edge Deploymentสร้างPython
16Build a Complete Vision Pipelineสร้างPython
17Self-Supervised Vision — SimCLR, DINO, MAEสร้างPython
18Open-Vocabulary Vision — CLIPสร้างPython
19OCR & Document Understandingสร้างPython
20Image Retrieval & Metric Learningสร้างPython
21Keypoint Detection & Pose Estimationสร้างPython
223D Gaussian Splatting from Scratchสร้างPython
23Diffusion Transformers & Rectified Flowสร้างPython
24SAM 3 & Open-Vocabulary Segmentationสร้างPython
25Vision-Language Models (ViT-MLP-LLM)สร้างPython
26Monocular Depth & Geometry Estimationสร้างPython
27Multi-Object Tracking & Video Memoryสร้างPython
28World Models & Video Diffusionสร้างPython
#บทเรียนประเภทภาษา
01การประมวลผลข้อความ: Tokenization, Stemming, LemmatizationBuildPython
02Bag of Words, TF-IDF และการนำเสนอข้อความBuildPython
03Word Embeddings: Word2Vec ตั้งแต่เริ่มต้นBuildPython
04GloVe, FastText และ Subword EmbeddingsBuildPython
05การวิเคราะห์ความรู้สึกBuildPython
06การรู้จำชื่อเอนทิตี (NER)BuildPython
07การติดแท็ก POS และการแยกวิเคราะห์โครงสร้างประโยคBuildPython
08การจัดหมวดหมู่ข้อความ — CNNs และ RNNs สำหรับข้อความBuildPython
09โมเดล Sequence-to-SequenceBuildPython
10กลไก Attention — ความก้าวหน้าครั้งสำคัญBuildPython
11การแปลภาษาด้วยเครื่องBuildPython
12การสรุปข้อความBuildPython
13ระบบตอบคำถามBuildPython
14การดึงข้อมูลและการค้นหาBuildPython
15การสร้างแบบจำลองหัวข้อ: LDA, BERTopicBuildPython
16การสร้างข้อความBuildPython
17แชทบอท: ตั้งแต่แบบ Rule-Based ถึง NeuralBuildPython
18NLP หลายภาษาBuildPython
19Subword Tokenization: BPE, WordPiece, Unigram, SentencePieceLearnPython
20เอาต์พุตที่มีโครงสร้างและการถอดรหัสแบบมีข้อจำกัดBuildPython
21NLI และ Textual EntailmentLearnPython
22เจาะลึก Embedding ModelsLearnPython
23กลยุทธ์การแบ่งส่วน (Chunking) สำหรับ RAGBuildPython
24การแก้ปัญหาการอ้างอิงร่วมLearnPython
25การเชื่อมโยงเอนทิตีและการขจัดความกำกวมBuildPython
26การสกัดความสัมพันธ์และการสร้าง Knowledge GraphBuildPython
27การประเมิน LLM: RAGAS, DeepEval, G-EvalBuildPython
28การประเมิน Long-Context: NIAH, RULER, LongBench, MRCRLearnPython
29การติดตามสถานะบทสนทนาBuildPython
#บทเรียนประเภทภาษา
01พื้นฐานเสียง: รูปคลื่น, การสุ่มตัวอย่าง, FFTLearnPython
02สเปกโทรแกรม, Mel Scale และคุณสมบัติเสียงBuildPython
03การจำแนกประเภทเสียงBuildPython
04การรู้จำเสียงพูด (ASR)BuildPython
05Whisper: สถาปัตยกรรมและการปรับแต่งBuildPython
06การรู้จำและยืนยันผู้พูดBuildPython
07การแปลงข้อความเป็นเสียงพูด (TTS)BuildPython
08การโคลนเสียงและการแปลงเสียงBuildPython
09การสร้างเพลงBuildPython
10โมเดลภาษาเสียงBuildPython
11การประมวลผลเสียงแบบเรียลไทม์BuildPython
12สร้างไปป์ไลน์ผู้ช่วยเสียงBuildPython
13ตัวแปลงสัญญาณเสียงแบบโครงข่ายประสาท — EnCodec, SNAC, Mimi, DACLearnPython
14การตรวจจับกิจกรรมเสียงและการสลับตาพูดBuildPython
15การสตรีมเสียงพูดเป็นเสียงพูด — Moshi, HibikiLearnPython
16การป้องกันการปลอมแปลงเสียงและการใส่ลายน้ำเสียงBuildPython
17การประเมินเสียง — WER, MOS, MMAU, LeaderboardsLearnPython
#บทเรียนประเภทภาษา
01ทำไมต้อง Transformers: ปัญหาของ RNNsเรียนรู้Python
02Self-Attention ตั้งแต่เริ่มต้นสร้างPython
03Multi-Head Attentionสร้างPython
04Positional Encoding: Sinusoidal, RoPE, ALiBiสร้างPython
05Transformer ฉบับเต็ม: Encoder + Decoderสร้างPython
06BERT — Masked Language Modelingสร้างPython
07GPT — Causal Language Modelingสร้างPython
08T5, BART — โมเดล Encoder-Decoderเรียนรู้Python
09Vision Transformers (ViT)สร้างPython
10Audio Transformers — สถาปัตยกรรม Whisperเรียนรู้

เอกสารโปรเจกต์

อ่านเอกสารต้นฉบับ

README วิธีติดตั้ง วิธีใช้งาน และข้อกำหนดจาก repository ต้นฉบับ

ดูไฟล์บน GitHub
AI Engineering from Scratch — reference manual banner
MIT License523 lessons20 phasesGitHub starsWebsite

From the creator of Agent Memory - #1 Persistent memory ⭐ GitHub stars which naturally works with any agents or chat assistants.

text
░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒

84% of students already use AI tools. Only 18% feel prepared to use them professionally. This curriculum closes that gap.

523 lessons. 20 phases. ~342 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.

Start here: choose what you want to build

You do not need to scan 523 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 goalLearn on GitHubLearn on the website
I am new and want the complete foundationPhase 0: Setup and ToolingDev Environment
I know Python and want math plus ML foundationsPhase 1: Math FoundationsLinear Algebra Intuition
I want to build production LLM applicationsPhase 11: LLM EngineeringPrompt Engineering
I want to build agentsPhase 14: Agent EngineeringThe Agent Loop
I want to use coding agents on real repositoriesAgent-Assisted Engineering pathAgent-Assisted Engineering
I want to shape the right build before implementationProduct Judgment and Delivery pathProduct Judgment and Delivery
I want to build with Model Context Protocol (MCP)Model Context Protocol (MCP) routeModel Context Protocol (MCP) path
I want to write and ship Agent SkillsFocused Agent Skills routeAgent Skills path
I want to prepare for a Claude certificationCertification onboardingCertification Academy

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.

Sponsors

SerpApi. Web Search API for your AI apps. Available in Markdown and JSON for any integration.

Use every lesson the same way

  1. 1Read docs/en.md and explain the core idea in your own words.
  2. 2Type and build the important code instead of treating the code block as decoration.
  3. 3Run the lesson command from the repository root, the directory containing README.md and phases/.
  4. 4Keep evidence: the command, working directory, exit code, meaningful output, and the artifact you changed or produced.
  5. 5Continue only when you can explain the output and make one small change without guessing.

Commands in lesson pages are paths from the repository root unless the lesson explicitly says to change directories. If a lesson offers several languages, run the implementation for the language you are learning.

Clone it and produce your first evidence

bash
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 second 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.

Add the AI tutor in 30 seconds

If Node.js, npx, and a skill-capable coding agent are already installed, your coding agent can become your tutor in two commands. 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.

Check the local requirements first:

bash
node --version
npx --version
python3 --version

Then install the curriculum skills and choose the host and scope you intend to use when the installer asks:

bash
npx skills add rohitg00/ai-engineering-from-scratch

Invocation syntax belongs to the host, not to the portable SKILL.md format:

HostStart the courseStart Model Context Protocol (MCP)Start Agent SkillsRun a phase quiz
Codexstart-learning, or choose it from /skillslearn-mcp, or choose it from /skillslearn-agent-skills, or choose it from /skillscheck-understanding 13, or choose it from /skills
Claude Code/start-learning/learn-mcp/learn-agent-skills/check-understanding 13
Other compatible hostsUse start-learning to begin the course.Use learn-mcp to start the Model Context Protocol (MCP) path.Use learn-agent-skills to start the Agent Skills Engineering path.Use check-understanding to quiz me on Phase 13.

A ten-question placement quiz maps what you already know to a starting phase and saves a personalized study plan to LEARNING.md. From there, the learn skill teaches one lesson per session: concept, math, code, quiz. It streams lessons straight from this repo, and the course-guide skill jumps you to the exact lesson that covers anything you are stuck on. In Codex, invoke these skills with learn and course-guide; in Claude Code, use /learn and /course-guide; in other compatible hosts, ask to use the skill by name.

Only want Model Context Protocol (MCP)? Use the MCP invocation for your host. It creates MCP-LEARNING.md and follows one 17-lesson route through stateless requests, transports, bidirectional work, security, reliability, registry governance, and conformance evidence. The exact order and checkpoints live in the Model Context Protocol (MCP) manifest.

Only want Agent Skills? Use the Agent Skills invocation for your host. It creates AGENT-SKILLS-LEARNING.md and follows one coherent five-lesson route: contract, discovery, invocation, sandbox boundaries, then release evals and real-host portability. Start on the web with the Agent Skills path.

The installer lists the hosts it can configure and asks where to install. If you do not have Node.js, npx, python3, a supported host, or a writable scope yet, use the website or read docs/en.md manually. That path teaches the concepts, but real-host discovery, invocation, script, and uninstall evidence remains pending until the preflight is available. Read the lessons at aiengineeringfromscratch.com.

How this works

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, 523 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. By the time PyTorch shows up, you already know what it's doing under the hood.

Each lesson runs the same loop: read the problem, derive the math, write the code, run the test, keep the artifact. No five-minute videos, no copy-paste deploys, no hand-holding. Free, open source, and built to run on your own laptop.

text
░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒

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.

mermaid
%%{init: {'theme':'base','themeVariables':{'primaryColor':'#fafaf5','primaryTextColor':'#1a1a1a','primaryBorderColor':'#3553ff','lineColor':'#3553ff','fontFamily':'JetBrains Mono','fontSize':'12px'}}}%%
flowchart TB
  P0["Phase 0 — Setup &amp; 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 &amp; 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 &amp; Protocols"]
  P13 --> P14["Phase 14 — Agent Engineering"]
  P14 --> P15["Phase 15 — Autonomous Systems"]
  P15 --> P16["Phase 16 — Multi-Agent &amp; Swarms"]
  P14 --> P17["Phase 17 — Infrastructure &amp; Production"]
  P15 --> P18["Phase 18 — Ethics &amp; Alignment"]
  P16 --> P19["Phase 19 — Capstone Projects"]
  P17 --> P19
  P18 --> P19
text
░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒

The shape of a lesson

Each lesson lives in its own folder, with the same structure across the entire curriculum:

text
phases/<NN>-<phase-name>/<NN>-<lesson-name>/
├── code/      runnable implementations (Python, TypeScript, Rust, Julia)
├── docs/
│   └── en.md  lesson narrative
└── outputs/   prompts, skills, agents, or MCP servers this lesson produces

Every lesson follows six beats. The Build It / Use It split is the spine — you implement the algorithm from scratch first, then run the same thing through the production library. You understand what the framework is doing because you wrote the smaller version yourself.

mermaid
%%{init: {'theme':'base','themeVariables':{'primaryColor':'#fafaf5','primaryTextColor':'#1a1a1a','primaryBorderColor':'#3553ff','lineColor':'#3553ff','fontFamily':'JetBrains Mono','fontSize':'13px'}}}%%
flowchart LR
  M["MOTTO<br/><sub>one-line core idea</sub>"] --> Pr["PROBLEM<br/><sub>concrete pain</sub>"]
  Pr --> C["CONCEPT<br/><sub>diagrams &amp; intuition</sub>"]
  C --> B["BUILD IT<br/><sub>raw math, no frameworks</sub>"]
  B --> U["USE IT<br/><sub>same thing in PyTorch / sklearn</sub>"]
  U --> S["SHIP IT<br/><sub>prompt · skill · agent · MCP</sub>"]

Getting started

Three ways in. Pick one.

*Option A — learn in your terminal (recommended).* After the Node.js, npx, host, and scope preflight above, install the learning skills into a compatible agent and let the course drive itself:

bash
npx skills add rohitg00/ai-engineering-from-scratch

Use the host-specific invocation table above. The installed skills provide start-learning, learn, course-guide, and the focused learn-mcp and learn-agent-skills routes. Lesson prose can stream from this repository without a clone. A local clone is required for copied repository code commands and executable MCP or Agent Skills labs. Progress lives in LEARNING.md, MCP-LEARNING.md, or AGENT-SKILLS-LEARNING.md in your project, so every session can resume.

Option B — read. Open any completed lesson on aiengineeringfromscratch.com or expand a phase under Contents. No setup, no cloning.

Option C — clone and run.

bash
git clone https://github.com/rohitg00/ai-engineering-from-scratch.git
cd ai-engineering-from-scratch
python3 phases/01-math-foundations/01-linear-algebra-intuition/code/vectors.py

Cloning also auto-loads the learning skills in Claude Code, and gives every lesson's code to the learn tutor for real execution instead of read-along.

Prerequisites

  • You can write code (any language; Python helps).
  • You want to understand how AI actually works, not just call APIs.

Prepare for Claude certifications

The Claude Certification Academy is a free, open-source preparation program for all four official Claude certification tracks: Associate Foundations, Developer Foundations, Architect Foundations, and Architect Professional. Each route combines blueprint-mapped lessons, runnable labs, a diagnostic, capstone work, and a full-length original practice exam.

Use the AI-native GitHub onboarding guide with Claude Code, Codex, ChatGPT, Cursor, or another agent. Run claude-certification in Codex, /claude-certification in Claude Code, or ask another host to use claude-certification. It chooses a track, creates a persistent route in CLAUDE-CERTIFICATION.md, teaches one step at a time, runs the real labs, and gives artifact-based feedback. The same curriculum remains available on the certification website.

The academy is independent study material based on public exam objectives. It is not affiliated with Anthropic, does not reproduce live exam questions, and cannot guarantee a passing score.

The learning skills

SkillWhat it does
start-learningOne-time onboarding: why you're learning, placement quiz, personalized plan saved to LEARNING.md.
learnThe tutor loop. Warm-up recall, then the next lesson taught interactively, then its quiz; records progress and a review queue.
course-guideTopic router. "Where do I learn attention?" or "my loss is NaN" → the exact lessons, with links.
learn-mcpFocused Model Context Protocol (MCP) tutor. Creates MCP-LEARNING.md, follows the 17-lesson manifest, and records wire, security, reliability, and conformance evidence.
learn-agent-skillsFocused Agent Skills tutor. Creates AGENT-SKILLS-LEARNING.md, teaches lessons 22, 24, 25, 26, and 27, and records real-host evidence.
claude-certificationCertification tutor. Chooses CCAO-F, CCDV-F, CCAR-F, or CCAR-P; teaches each lesson; runs labs; reviews artifacts; administers diagnostics and mocks; saves progress.
find-your-levelTen-question placement quiz. Maps your knowledge to a starting phase and produces a personalized path with hour estimates.
check-understanding <phase>Per-phase quiz, eight questions, with feedback and specific lessons to review. Use the Codex, Claude Code, or natural-language form in the invocation table above.
text
░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒

Read the core curriculum as a book

The 20-phase core curriculum under phases/ compiles into a six-volume book series. EPUB and PDF are built by CI from the same core lesson sources and attached to every GitHub release; the links below always resolve to the newest release. Volume numbers index the series, not versions: each copy carries a dated edition stamp, and older editions stay downloadable from their release.

Certification curricula are intentionally not converted into the books. Their AI tutor state, runnable labs, interactive figures, diagnostics, and timed mocks remain first-class on GitHub and the website.

VolTitlePhasesDownload
1Foundations · Math, Tooling, and Classical Machine Learning00-02EPUB · PDF
2Deep Learning · Networks, Vision, and Speech03, 04, 06EPUB · PDF
3Language · NLP Foundations and the Transformer05, 07EPUB · PDF
4Large Language Models · Generation, Reinforcement, Pretraining, and Engineering08-11EPUB · PDF
5Agents · Multimodality, Protocols, Autonomy, and Swarms12-16EPUB · PDF
6Production · Infrastructure, Safety, and Capstones17-19EPUB · PDF

The book is the snapshot; this repository is the living edition. Every chapter ends with links back to the lesson's animated figures, quiz, and runnable code. Build locally with python3 scripts/build_book.py (pandoc required); pipeline details in book/README.md.

text
░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒

Every lesson ships something

Other curricula end with "congratulations, you learned X." Each lesson here ends with a reusable tool you can install or paste into your daily workflow.

FIG_001.A promptsFIG_001.B skillsFIG_001.C agentsFIG_001.D MCP servers

Install the lot with python3 scripts/install_skills.py <target>. Real tools, not homework. By the end of the curriculum, you have a portfolio of 523 artifacts you actually understand because you built them.

FIG_002 · A worked sample

Phase 14, lesson 1: the agent loop. ~120 lines of pure Python, no dependencies.

code/agent_loop.py &nbsp; build it

python
def run(query, tools):
    history = [user(query)]
    for step in range(MAX_STEPS):
        msg = llm(history)
        if msg.tool_calls:
            for call in msg.tool_calls:
                result = tools[call.name](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/**call.args)
                history.append(tool_result(call.id, result))
            continue
        return msg.content
    raise StepLimitExceeded

outputs/skill-agent-loop.md &nbsp; ship it

markdown
---
name: agent-loop
description: ReAct-style loop for any tool list
phase: 14
lesson: 01
---

Implement a minimal agent loop that...

outputs/prompt-debug-agent.md

markdown
You are an agent debugger. Given the trace
of an agent run, identify the step where
the agent went wrong and explain why...
text
░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒

Contents

Twenty phases. Click any phase to expand its lesson list.

Phase 0: Setup & Tooling 12 lessons

Get your environment ready for everything that follows.

#LessonTypeLang
01Dev EnvironmentBuildPython
02Git & CollaborationLearn
03GPU Setup & CloudBuildPython
04APIs & KeysBuildPython
05Jupyter NotebooksBuildPython
06Python EnvironmentsBuildShell
07Docker for AIBuildDocker
08Editor SetupBuild
09Data ManagementBuildPython
10Terminal & ShellLearn
11Linux for AILearn
12Debugging & ProfilingBuildPython
#LessonTypeLang
01MDPs, States, Actions & RewardsLearnPython
02Dynamic ProgrammingBuildPython
03Monte Carlo MethodsBuildPython
04Q-Learning, SARSABuildPython
05Deep Q-Networks (DQN)BuildPython
06Policy Gradients — REINFORCEBuildPython
07Actor-Critic — A2C, A3CBuildPython
08PPOBuildPython
09Reward Modeling & RLHFBuildPython
10Multi-Agent RLBuildPython
11Sim-to-Real TransferBuildPython
12RL for GamesBuildPython
#LessonTypeLang
01The Tool InterfaceLearnPython
02Function Calling Deep DiveBuildPython
03Parallel and Streaming Tool CallsBuildPython
04Structured OutputBuildPython
05Tool Schema DesignLearnPython
06MCP Fundamentals: Stateless Requests and JSON-RPCLearnPython
07Building an MCP Server: Stateless Python and TypeScriptBuildPython, TypeScript
08Building an MCP Client: Discovery, Routing, and Dual-Era FallbackBuildPython
09MCP Transports: stdio and Stateless Streamable HTTPLearnPython
10MCP Resources and Prompts: Addressable Context for Stateless ServersBuildPython
11MCP Model Input: Sampling Migration and Stateless MRTRBuildPython
12Explicit Scope and Stateless ElicitationBuildPython
13MCP Tasks Extension: Durable Work on a Stateless CoreBuildPython
14MCP Apps on the Stateless ProtocolBuildPython
15MCP Security: Poisoned Metadata, Routing, and MRTR StateLearnPython
16MCP Authorization: CIMD, Issuer Binding, PKCE, and Step-UpBuildPython
17Stateless MCP Gateways and Registry AdmissionLearnPython
18MCP Auth in Production: Issuer-Bound Enrollment and TokensBuildPython
19A2A ProtocolBuildPython
20OpenTelemetry GenAIBuildPython
21LLM Routing LayerLearnPython
22Agent Skills: Portable Contract and Runtime BoundaryBuildPython
23Capstone: Stateless Tool EcosystemBuildPython
24Skill Discovery and Progressive DisclosureBuildPython
25Skill Invocation and RoutingBuildPython
26Skill Permissions, Sandboxes, and TrustBuildPython
27Skill Evals, Packaging, and PortabilityBuildPython
28MCP Tool Contracts and ContentBuildPython
29MCP Reliability, Cancellation, and Flow ControlBuildPython
30MCP Registry Supply Chain: Admission, Drift, and RollbackBuildPython
31MCP Conformance Engineering: Versioning, Evidence, and OperationsBuildPython

Lessons 06-18 and 28-31 form the focused Model Context Protocol (MCP) path. Its manifest order is 06, 07, 08, 09, 10, 11, 12, 13, 14, 15, 16, 18, 17, 28, 29, 30, 31. Start it with the host-specific learn-mcp invocation above. Lesson 23 is its only optional capstone and also requires Lessons 19 and 20.

Lessons 22 and 24-27 form the focused Agent Skills learning path, from package contract through real-host release gates. Start it with the host-specific learn-agent-skills invocation shown above; do not follow numeric next navigation from 22 to 23.

#LessonTypeLang
01The Agent LoopBuildPython
02ReWOO and Plan-and-ExecuteBuildPython
03Reflexion and Verbal Reinforcement LearningBuildPython
04Tree of Thoughts and LATSBuildPython
05Self-Refine and CRITICBuildPython
06Tool Use and Function CallingBuildPython
07Agent Memory — Virtual Context and Memory PagingBuildPython
08Memory Blocks and Sleep-Time ComputeBuildPython
09Hybrid Memory — Vector + Graph + KVBuildPython
10Skill Libraries and Lifelong Learning (Voyager)BuildPython
11Planning with HTN and Evolutionary SearchBuildPython
12Anthropic's Workflow PatternsBuildPython
13Stateful Graph Orchestration — Durable Execution and CheckpointsBuildPython
14The Actor Model for AgentsBuildPython
15Role-Based Agent Teams — Roles, Tasks, ProcessesBuildPython
16OpenAI Agents SDK — Handoffs, Guardrails, TracingBuildPython
17The Harness as a Library — Subagents and Session StoreBuildPython
18Production Agent RuntimesLearnPython
19Benchmarks — SWE-bench, GAIA, AgentBenchLearnPython
20Benchmarks — WebArena and OSWorldLearnPython
21Computer Use — Claude, OpenAI CUA, GeminiBuildPython
22Voice Agents — Pipecat and LiveKitBuildPython
23OpenTelemetry GenAI Semantic ConventionsBuildPython
24Agent Observability — Langfuse, Phoenix, OpikLearnPython
25Multi-Agent Debate and CollaborationBuildPython
26Failure Modes — Why Agents BreakBuildPython
27Prompt Injection and the PVE DefenseBuildPython
28Orchestration Patterns — Supervisor, Swarm, HierarchicalBuildPython
29Production Runtimes — Queue, Event, CronLearnPython
30Eval-Driven Agent DevelopmentBuildPython
31Agent Workbench: Why Capable Models Still FailLearnPython
32The Minimal Agent WorkbenchBuildPython
33Agent Instructions as Executable ConstraintsBuildPython
34Repo Memory and Durable StateBuildPython
35Initialization Scripts for AgentsBuildPython
36Scope Contracts and Task BoundariesBuildPython
37Runtime Feedback LoopsBuildPython
38Verification GatesBuildPython
39Reviewer Agent: Separate Builder from MarkerBuildPython
40Multi-Session HandoffBuildPython
41The Workbench on a Real RepoBuildPython
42Capstone: Ship a Reusable Agent Workbench PackBuildPython
43Frame the Task Before the Agent Writes CodeBuildPython
44Build an Evidence-Backed Execution PlanBuildPython
45Delegate Agent Work with Isolation and Merge ContractsBuildPython
46Turn Every Agent Correction into a System ImprovementBuildPython
47Define the Outcome Before You Choose the OutputBuildPython
48Discover the Workflow People Actually PerformBuildPython
49Map Assumptions and Resolve the Riskiest One FirstBuildPython
50Choose the Smallest Slice That Can Change the DecisionBuildPython
51Write Specifications That Preserve JudgmentBuildPython
52Design Success Metrics Before the Result ExistsBuildPython
53Choose Prototype, Pilot, or Production DeliberatelyBuildPython
54Build a Feedback Ratchet with Ownership and RetirementBuildPython

Each Phase 14 workbench lesson (31-42) ships a mission.md briefing the agent before it opens the full lesson docs.

Lessons 31-46 form the Agent-Assisted Engineering path. Its manifest order combines the workbench foundation with task framing, planning, delegation, and durable feedback. Lessons 47-54 form the Product Judgment and Delivery path, from outcome framing through evidence, risk, scope, measurement, staged release, and feedback ownership.

#LessonTypeLang
01Managed LLM Platforms — Bedrock, Azure OpenAI, Vertex AILearnPython
02Inference Platform Economics — Fireworks, Together, Baseten, ModalLearnPython
03GPU Autoscaling on Kubernetes — Karpenter, KAI SchedulerLearnPython
04Serving Engine Internals — PagedAttention, Continuous Batching, Chunked PrefillLearnPython
05EAGLE-3 Speculative Decoding in ProductionLearnPython
06Prefix-Cache Serving — RadixAttention and KV ReuseLearnPython
07Hardware-Specialized Inference Compilation — FP8 and NVFP4 on BlackwellLearnPython
08Inference Metrics — TTFT, TPOT, ITL, Goodput, P99LearnPython
09Production Quantization — AWQ, GPTQ, GGUF, FP8, NVFP4LearnPython
10Cold Start Mitigation for Serverless LLMsLearnPython
11Multi-Region LLM Serving and KV Cache LocalityLearnPython
12Edge Inference — ANE, Hexagon, WebGPU, JetsonLearnPython
13LLM Observability Stack SelectionLearnPython
14Prompt Caching and Semantic Caching EconomicsLearnPython
15Batch APIs — the 50% Discount as Industry StandardLearnPython
16Model Routing as a Cost-Reduction PrimitiveLearnPython
17Disaggregated Prefill/Decode — NVIDIA Dynamo and llm-dLearnPython
18Production Serving Stack — KV Offloading and Cache-Aware RoutingLearnPython
19AI Gateways — LiteLLM, Portkey, Kong, BifrostLearnPython
20Shadow, Canary, and Progressive DeploymentLearnPython
21A/B Testing LLM Features — GrowthBook and StatsigLearnPython
22Load Testing LLM APIs — k6, LLMPerf, GenAI-PerfBuildPython
23SRE for AI — Multi-Agent Incident ResponseLearnPython
24Chaos Engineering for LLM ProductionLearnPython
25Security — Secrets, PII Scrubbing, Audit LogsLearnPython
26Compliance — SOC 2, HIPAA, GDPR, EU AI Act, ISO 42001LearnPython
27FinOps for LLMs — Unit Economics and Multi-Tenant AttributionLearnPython
28Self-Hosted Serving Selection — Matching Engine to Hardware and ScaleLearnPython
#ProjectCombinesLang
01Terminal-Native Coding AgentP0 P5 P7 P10 P11 P13 P14 P15 P17 P18Python
02RAG over Codebase (Cross-Repo Semantic Search)P5 P7 P11 P13 P17Python
03Real-Time Voice Assistant (ASR → LLM → TTS)P6 P7 P11 P13 P14 P17Python
04Multimodal Document QA (Vision-First)P4 P5 P7 P11 P12 P17Python
05Autonomous Research Agent (AI-Scientist Class)P0 P2 P3 P7 P10 P14 P15 P16 P18Python
06DevOps Troubleshooting Agent for KubernetesP11 P13 P14 P15 P17 P18Python
07End-to-End Fine-Tuning PipelineP2 P3 P7 P10 P11 P17 P18Python
08Production RAG Chatbot (Regulated Vertical)P5 P7 P11 P12 P17 P18Python
09Code Migration Agent (Repo-Level Upgrade)P5 P7 P11 P13 P14 P15 P17Python
10Multi-Agent Software Engineering TeamP11 P13 P14 P15 P16 P17Python
11LLM Observability & Eval DashboardP11 P13 P17 P18Python
12Video Understanding Pipeline (Scene → QA)P4 P6 P7 P11 P12 P17Python
13Stateless MCP Server with Registry and GovernanceP11 P13 P14 P17 P18Python
14Speculative-Decoding Inference ServerP3 P7 P10 P17Python
15Constitutional Safety Harness + Red-Team RangeP10 P11 P13 P14 P18Python
16GitHub Issue-to-PR Autonomous AgentP11 P13 P14 P15 P17Python
17Personal AI Tutor (Adaptive, Multimodal)P5 P6 P11 P12 P14 P17 P18Python

Deep-build tracks — multi-lesson series that build a complete subsystem from scratch.

#ProjectCombinesLang
20Agent Harness Loop ContractA. Agent harnessPython
21Tool Registry with Schema ValidationA. Agent harnessPython
22JSON-RPC 2.0 Over Newline-Delimited StdioA. Agent harnessPython
23Function Call DispatcherA. Agent harnessPython
24Plan-Execute Control FlowA. Agent harnessPython
25Verification Gates and Observation BudgetA. Agent harnessPython
26Sandbox Runner with Denylist and Path JailA. Agent harnessPython
27Eval Harness with Fixture TasksA. Agent harnessPython
28Observability with OTel GenAI Spans and Prometheus MetricsA. Agent harnessPython
29End-to-End Coding Agent on the HarnessA. Agent harnessPython
30BPE Tokenizer From ScratchB. NLP LLMPython
31Tokenized Dataset with Sliding WindowB. NLP LLMPython
32Token and Positional EmbeddingsB. NLP LLMPython
33Multi-Head Self-AttentionB. NLP LLMPython
34Transformer Block from ScratchB. NLP LLMPython
35GPT Model AssemblyB. NLP LLMPython
36Training Loop and EvaluationB. NLP LLMPython
37Loading Pretrained WeightsB. NLP LLMPython
38Classifier Fine-Tuning by Head SwapB. NLP LLMPython
39Instruction Tuning by Supervised Fine-TuningB. NLP LLMPython
40Direct Preference Optimization from ScratchB. NLP LLMPython
41Full Evaluation PipelineB. NLP LLMPython
42Large Corpus DownloaderC. Train end-to-endPython
43HDF5 Tokenized CorpusC. Train end-to-endPython
44Cosine LR with Linear WarmupC. Train end-to-endPython
45Gradient Clipping and Mixed PrecisionC. Train end-to-endPython
46Gradient AccumulationC. Train end-to-endPython
47Checkpoint Save and ResumeC. Train end-to-endPython
48Distributed Data Parallel and FSDP from ScratchC. Train end-to-endPython
49Language Model Evaluation HarnessC. Train end-to-endPython
50Hypothesis GeneratorD. Auto researchPython
51Literature RetrievalD. Auto researchPython
52Experiment RunnerD. Auto researchPython
53Result EvaluatorD. Auto researchPython
54Paper WriterD. Auto researchPython
55Critic LoopD. Auto researchPython
56Iteration SchedulerD. Auto researchPython
57End-to-End Research DemoD. Auto researchPython
58Vision Encoder PatchesE. Multimodal VLMPython
59Vision Transformer EncoderE. Multimodal VLMPython
60Projection Layer for Modality AlignmentE. Multimodal VLMPython
61Cross-Attention FusionE. Multimodal VLMPython
62Vision-Language PretrainingE. Multimodal VLMPython
63Multimodal EvaluationE. Multimodal VLMPython
64Chunking Strategies, ComparedF. Advanced RAGPython
65Hybrid Retrieval with BM25 and Dense EmbeddingsF. Advanced RAGPython
66Cross-Encoder RerankerF. Advanced RAGPython
67Query Rewriting: HyDE, Multi-Query, and DecompositionF. Advanced RAGPython
68RAG Evaluation: Precision, Recall, MRR, nDCG, Faithfulness, Answer RelevanceF. Advanced RAGPython
69End-to-End RAG SystemF. Advanced RAGPython
70Task Spec FormatG. Eval frameworkPython
71Classical MetricsG. Eval frameworkPython
72Code Exec MetricG. Eval frameworkPython
73Perplexity and CalibrationG. Eval frameworkPython
74Leaderboard AggregationG. Eval frameworkPython
75End-to-End Eval RunnerG. Eval frameworkPython
76Collective Ops From ScratchH. Distributed trainPython
77Data Parallel DDP From ScratchH. Distributed trainPython
78ZeRO Optimizer State ShardingH. Distributed trainPython
79Pipeline Parallel and Bubble AnalysisH. Distributed trainPython
80Sharded Checkpoint and Atomic ResumeH. Distributed trainPython
81End-to-End Distributed TrainingH. Distributed trainPython
82Jailbreak TaxonomyI. Safety harnessPython
83Prompt Injection DetectorI. Safety harnessPython
84Refusal EvaluationI. Safety harnessPython
85Content Classifier IntegrationI. Safety harnessPython
86Constitutional Rules EngineI. Safety harnessPython, YAML
87End-to-End Safety GateI. Safety harnessPython
text
░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒

The toolkit

Every lesson produces a reusable artifact. By the end you have:

text
outputs/
├── prompts/      prompt templates for every AI task
└── skills/       SKILL.md files for AI coding agents

Plug them into Claude, Cursor, Codex, OpenClaw, Hermes, or any agent that reads a SKILL.md / AGENTS.md directory. Real tools, not homework.

Install course skills into your agent

Two skill sets, two installers:

The learning skills (start-learning, learn, course-guide, learn-mcp, learn-agent-skills, claude-certification, find-your-level, and check-understanding) live under skills/ and install into a supported skill-capable host with one command. Installation needs Node.js and npx, but not a repository clone or Python:

bash
npx skills add rohitg00/ai-engineering-from-scratch

skills writes to the host and scope selected during installation, such as .claude/skills/, .cursor/skills/, .codex/skills/, or another supported skills folder. Verify that the selected host discovers that exact destination.

The lesson artifacts. The repo ships 396 skills and 99 prompts under phases/**/outputs/; install them via scripts/install_skills.py. Requires cloning the repo. Supports tag filters, dry-runs, and per-agent layouts:

bash
python3 scripts/install_skills.py <target>                                 # every skill, default --layout skills (nested)
python3 scripts/install_skills.py <target> --layout skills                 # same as above, explicit
python3 scripts/install_skills.py <target> --type all                      # skills + prompts + agents
python3 scripts/install_skills.py <target> --phase 14                      # one phase only
python3 scripts/install_skills.py <target> --tag rag                       # filter by tag
python3 scripts/install_skills.py <target> --layout flat                   # flat files
python3 scripts/install_skills.py <target> --dry-run                       # preview without writing
python3 scripts/install_skills.py <target> --force                         # overwrite existing files

<target> is the skills directory for your agent (examples: ~/.claude/skills/, ~/.cursor/skills/, ~/.config/openclaw/skills/, .skills/, or any path your agent reads).

By default the script refuses to overwrite an existing destination and exits with code 1 after listing every colliding path. Use --dry-run to preview collisions or --force to overwrite. Every non-dry-run run writes a manifest.json in the target with the full inventory grouped by type and phase. Pick the layout your agent reads:

--layoutPath written
skills<target>/<name>/SKILL.md (nested convention, supported by Claude / Cursor / Codex / OpenClaw / Hermes)
by-phase<target>/phase-NN/<name>.md
flat<target>/<name>.md

Drop the agent workbench into your own repo

The Phase 14 capstone ships a reusable Agent Workbench pack (AGENTS.md, schemas, init / verify / handoff scripts). Scaffold it into any repo with:

bash
python3 scripts/scaffold_workbench.py path/to/your-repo            # full pack + seeds
python3 scripts/scaffold_workbench.py path/to/your-repo --minimal  # skip docs/
python3 scripts/scaffold_workbench.py path/to/your-repo --dry-run  # preview only
python3 scripts/scaffold_workbench.py path/to/your-repo --force    # overwrite

You get the seven workbench surfaces wired up, a starter task_board.json, and a fresh agent_state.json at schema_version: 1. From there: edit the task, edit AGENTS.md, run scripts/init_agent.py, hand the contract to your agent. The pack source lives at phases/14-agent-engineering/42-agent-workbench-capstone/outputs/agent-workbench-pack/.

Browse the entire course as JSON

scripts/build_catalog.py walks every phase, every lesson, every artifact on disk and writes catalog.json at the repo root. One file, every course truth.

bash
python3 scripts/build_catalog.py               # writes <repo>/catalog.json
python3 scripts/build_catalog.py --stdout      # to stdout, do not touch repo
python3 scripts/build_catalog.py --out path/to/file.json

The catalog is filesystem-derived, not README-derived, so counts always match what is actually on disk. Use it for site builds, downstream tooling, or to verify the README counts have not drifted. Schema is documented at the top of the script.

A GitHub Action (.github/workflows/curriculum.yml) rebuilds catalog.json on every PR and fails the build if the committed file is stale. After editing any lesson, run python3 scripts/build_catalog.py and commit the result, or CI will reject the PR. The same workflow runs audit_lessons.py in warn-only mode (so existing drift does not block contributors).

Smoke-check every lesson's Python code

scripts/lesson_run.py byte-compiles every .py file under each lesson's code/ directory. Default mode is syntax-check only — no execution, no API keys, no heavy ML deps required. Catches the regressions contributors introduce most often (bad indentation, broken f-strings, stray edits).

bash
python3 scripts/lesson_run.py                  # syntax-check the whole curriculum
python3 scripts/lesson_run.py --phase 14       # one phase only
python3 scripts/lesson_run.py --json           # JSON report on stdout
python3 scripts/lesson_run.py --strict         # exit 1 if any lesson fails
python3 scripts/lesson_run.py --execute        # actually run, 10s timeout per lesson

--execute runs each lesson's code/main.py (or the first .py file) with a 10-second timeout. Lessons whose entry file starts with a # requires: pkg1, pkg2 comment listing non-stdlib deps are skipped with reason needs <deps>. The script is opt-in and not wired into CI.

Stdlib only, Python 3.10+. Set LINK_CHECK_SKIP=domain1,domain2 to override the default skip-list (twitter.com, x.com, linkedin.com, instagram.com, medium.com — domains that aggressively block automated HEAD/GET).

Where to start

BackgroundStart atEstimated time
New to programming and AIPhase 0 — Setup~306 hours
Know Python, new to MLPhase 1 — Math Foundations~270 hours
Know ML, new to deep learningPhase 3 — Deep Learning Core~200 hours
Know deep learning, want LLMs and agentsPhase 10 — LLMs from Scratch~100 hours
Senior engineer, only want agent engineeringPhase 14 — Agent Engineering~60 hours
Only want to build production MCP systemsModel Context Protocol (MCP) path~23 hours 15 min
Only want to build production Agent SkillsAgent Skills Engineering path~9.5 hours
text
░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒

Why this matters now

"The hottest new programming language is English."Andrej Karpathy (tweet)

"Software engineering is being remade in front of our eyes."Boris Cherny, creator of Claude Code

"Models will keep getting better. The skill that compounds is knowing what to build." — Industry consensus, 2026

  • Attention Is All You Need — Vaswani et al., 2017 → Phase 7
  • Language Models are Few-Shot Learners (GPT-3) → Phase 10
  • Denoising Diffusion Probabilistic ModelsPhase 8
  • InstructGPT / RLHFPhase 10
  • Direct Preference OptimizationPhase 10
  • Chain-of-Thought PromptingPhase 11
  • ReAct: Reasoning + Acting in LLMsPhase 14
  • Model Context Protocol — Anthropic → Phase 13
text
░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒

Contributing

GoalRead
Contribute a lesson or fixCONTRIBUTING.md
Fork for your team or schoolFORKING.md
Lesson templateLESSON_TEMPLATE.md
Track progressROADMAP.md
Glossaryglossary/terms.md
Code of conductCODE_OF_CONDUCT.md

Before submitting a lesson, run the invariant check:

bash
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.

text
░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒

Sponsor the work

Free, MIT-licensed, 523 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.

text
░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒

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.

#agents#ai#ai-agents#ai-engineering#computer-vision#course#deep-learning#from-scratch#generative-ai#llm#machine-learning#mcp