กลับไปหน้า Tools

GetNotes Tools

rohitg00/ai-engineering-from-scratch

Tool นี้คืออะไร

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

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

ดาว

44.9K

Forks

7.6K

License

MIT

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

26 ก.ค. 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 License503 lessons20 phasesGitHub starsWebsite

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

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

84% of students already use AI tools. Only 18% feel prepared to use them professionally. 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.

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

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

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
code
░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒

The shape of a lesson

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

code
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 — read. Open any completed lesson on aiengineeringfromscratch.com or expand a phase under Contents. No setup, no cloning.

Option B — clone and run.

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

*Option C — find your level (recommended).* Skip ahead intelligently. Inside Claude, Cursor, Codex, OpenClaw, Hermes, or any agent with the curriculum skills installed:

bash
/find-your-level

Ten questions. Maps your knowledge to a starting phase, builds a personalized path with hour estimates. After each phase:

bash
/check-understanding 3        # quiz yourself on phase 3
ls phases/03-deep-learning-core/05-loss-functions/outputs/
# ├── prompt-loss-function-selector.md
# └── prompt-loss-debugger.md

Prerequisites

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

Built-in agent skills (Claude, Cursor, Codex, OpenClaw, Hermes)

SkillWhat it does
/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.
code
░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒

Read it as a book

The whole course compiles into a six-volume book series. EPUB and PDF are built by CI from the same 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.

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. Real tools, not homework. By the end of the curriculum, you have a portfolio of 503 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...
code
░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒

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

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

#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
13MCP 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
code
░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒

The toolkit

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

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

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

Install every course skill into your agent

The repo ships 388 skills and 99 prompts under phases/**/outputs/.

Recommended: install via skills.sh. No clone, no Python, detects your agent's skills directory automatically:

bash
npx skills add rohitg00/ai-engineering-from-scratch                       # every skill
npx skills add rohitg00/ai-engineering-from-scratch --skill agent-loop    # one skill
npx skills add rohitg00/ai-engineering-from-scratch --phase 14            # one phase

skills writes to whichever directory your agent picks up: .claude/skills/, .cursor/skills/, .codex/skills/, OpenClaw's skills folder, Hermes's bundle path, or any SKILL.md-aware tool. One command, every agent.

Advanced: offline / custom layout via scripts/install_skills.py. Requires cloning the repo. Useful when you need tag filters, dry-runs, or a non-default layout:

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
code
░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒

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
code
░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒░░░▒▒▒

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.

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

Sponsor the work

Free, MIT-licensed, 503 lessons. The curriculum is maintained on sponsorship alone. Cash only.

Reach (verified 2026-05-14): 55,593 monthly visitors · 90,709 page views · 7.5K stars · Twitter/X is the #1 acquisition channel.

Vercel OSS Program

Current sponsors: CodeRabbit · iii

Tier$/moWhat you get
Backer$25Name in BACKERS.md
Bronze$250Text-only row in README sponsor block + launch-day tweet
Silver$750Small logo in README + listed as one supported provider in API lessons
Gold$2,000Medium logo in README + sponsor page + quarterly X / LinkedIn co-feature
Platinum$5,000Hero logo above the fold + one dedicated integration lesson, max 1 partner

Full rate card, hard rules, pricing anchors, and reach data: SPONSORS.md. Sign up via GitHub Sponsors.

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

Star history

Star history

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