Цей README перекладено українською. Англійський README залишається канонічним джерелом.
Реалізуйте внутрішні механізми моделей, пошукові конвеєри та середовища виконання агентів. Тестуйте їх, досліджуйте збої та зберігайте код і результати оцінювання.
Почати навчання · Виберіть шлях · Спробуйте лабораторну роботу · Створіть проєкт · Переглянути програму
Безкоштовно, з відкритим кодом, за ліцензією MIT. Навчайтеся на вебсайті, з агентом програмування або запускаючи код локально.
542 уроків. 20 етапів. Python, TypeScript, Rust, Julia.
Читати своєю мовою
🇬🇧 English · 🇨🇳 简体中文 · 🇹🇼 繁體中文(台灣) · 🇯🇵 日本語 · 🇰🇷 한국어 · 🇵🇹 Português · 🇧🇷 Português (Brasil) · 🇪🇸 Español · 🇩🇪 Deutsch · 🇫🇷 Français · 🇮🇹 Italiano · 🇳🇱 Nederlands · 🇵🇱 Polski · 🇨🇿 Čeština · 🇷🇴 Română · 🇭🇺 Magyar · 🇬🇷 Ελληνικά · 🇸🇪 Svenska · 🇩🇰 Dansk · 🇳🇴 Norsk · 🇫🇮 Suomi · 🇷🇺 Русский · 🇺🇦 Українська · 🇹🇷 Türkçe · 🇮🇱 עברית · 🇸🇦 العربية · 🇮🇷 فارسی · 🇮🇳 हिन्दी · 🇧🇩 বাংলা · 🇵🇰 اردو · 🇹🇭 ไทย · 🇻🇳 Tiếng Việt · 🇮🇩 Bahasa Indonesia · 🇵🇭 Tagalog
Ваша підтримка зберігає кожен урок безкоштовним і з відкритим кодом. Переглянути всіх, хто підтримує проєкт · Стати спонсором
| Маршрут | Перший урок |
|---|---|
| Основи моделей | Налаштування та інструменти |
| Системи на основі LLM | Інженерія промптів |
| Агенти та постачання систем | Цикл агента |
Порівняти кар’єрні шляхи · Попередні знання та час навчання
Двадцять початкових точок рухаються за методом градієнтного спуску на квадратичній функції втрат. Графік показує їхні положення та середні втрати після кожного оновлення.
Змініть швидкість навчання в уроці · Порівняйте в коді градієнтний спуск, метод імпульсу та Adam
Три проєкти з поетапними заготовками, еталонними реалізаціями та локальними засобами оцінювання. Виконуйте команди з кореня репозиторію після налаштування. Заготовки не проходять перевірок, доки ви не реалізуєте етапи.
01 · Лабораторія оцінювання пошуку · Python · Метрики ранжування та перевірки регресій
Кандидат покращує середнє NDCG, але для одного запиту найрелевантніші джерела опускаються в ранжуванні. Створіть порівняння для кожного запиту, яке повідомляє про регресію та може зупинити перевірку перед випуском.
Використовуйте Python 3.10+. Повторіть RAG і оцінювання моделей. Реалізуйте перевірку ранжування, precision і recall, метрики з урахуванням позиції, а потім порівняння систем.
python3 scripts/project_test.py retrieval-evaluation-lab \
--init learning-artifacts/retrieval-evaluation-lab
python3 scripts/project_test.py retrieval-evaluation-lab \
--stage 1 --path learning-artifacts/retrieval-evaluation-lab --strict
python3 scripts/project_test.py retrieval-evaluation-lab \
--all --path learning-artifacts/retrieval-evaluation-lab --strictЗбережіть: відтворюване порівняння зі змінами для кожного запиту й оцінками релевантності, використаними для підрахунку. Метрики описують ці оцінки; вони не встановлюють правильність відповідей.
Розпочати проєкт · Переглянути еталонний розв’язок · Запустити на власних вхідних даних
02 · Налагоджувач трасувань агентів · TypeScript · Розбір трасувань і вимірювання часу
Надане трасування й далі триває 100 мс, але загальне використання токенів зростає на 200, і один span починає завершуватися помилкою. Відокремте роботу дочірніх span, що перекриваються, від часу виконання батьківського span і створіть звіт, який показує зміну.
Використовуйте Node.js 22.18+ і Python 3 для перевіряльника. Реалізуйте розбір JSONL, перевірку батьківських зв’язків, арифметику інтервалів, а потім часову шкалу для аналізу.
python3 scripts/project_test.py agent-trace-debugger \
--init learning-artifacts/agent-trace-debugger
python3 scripts/project_test.py agent-trace-debugger \
--stage 1 --path learning-artifacts/agent-trace-debugger --strict
python3 scripts/project_test.py agent-trace-debugger \
--all --path learning-artifacts/agent-trace-debugger --strictЗбережіть: вхідне трасування, часову шкалу HTML і звіт про регресію в JSON. Зберігайте власні кількості токенів кожного span без дочірніх span, щоб не рахувати використання батьків і нащадків двічі.
Розпочати проєкт · Переглянути еталонний розв’язок · Дослідити час виконання інтерактивно
03 · Міжмережевий екран викликів інструментів · Rust · Перевірки ролей і підтвердження схвалення
Операція запису змінюється після перевірки або схвалення використовується повторно. Перевірте оболонку виклику, роль викликувача та шлях, а потім використайте схвалення, пов’язане з точним запитом і вмістом.
Використовуйте Rust і Python 3.10+. Повторіть проєктування схем інструментів і межі безпеки. Застосунок-викликувач надає ідентифікаційні дані; модель пропонує операцію.
python3 scripts/project_test.py tool-call-firewall \
--init learning-artifacts/tool-call-firewall
python3 scripts/project_test.py tool-call-firewall \
--stage 1 --path learning-artifacts/tool-call-firewall --strict
python3 scripts/project_test.py tool-call-firewall \
--all --path learning-artifacts/tool-call-firewall --strictЗбережіть: запис аудиту із запитаною операцією та рішенням політики. Схвалення одноразові в межах одного виклику; проєкт не надає постійної авторизації або пісочниці операційної системи.
Розпочати проєкт · Переглянути еталонний розв’язок · Дослідити межі схвалення
Переглянути всі проєкти · Посібник із кар’єрної практики
Відкрийте готовий урок на aiengineeringfromscratch.com або розгорніть етап у змісті. Налаштування й клонування не потрібні.
Якщо Node.js, npx і агент для програмування з підтримкою навичок уже встановлені, агент може стати вашим викладачем. Для встановлення або читання матеріалів не потрібно клонувати репозиторій. Виконувані лабораторні роботи спеціалізованих маршрутів потребують python3. Для лабораторних робіт Agent Skills також потрібні вибраний хост і доступний для запису каталог навичок користувача або проєкту.
npx skills add rohitg00/ai-engineering-from-scratchОберіть хост і область, коли запитає інсталятор. Використовуйте start-learning у Codex, /start-learning у Claude Code або попросіть хост використати навичку за назвою.
Налаштування наставника та команди середовища
Спочатку перевірте локальні вимоги:
node --version
npx --version
python3 --versionskills записує файли для хоста й області, вибраних під час встановлення, наприклад у .claude/skills/, .cursor/skills/, .codex/skills/ або інший підтримуваний каталог навичок. Перевірте, що вибраний хост знаходить саме цей каталог.
Синтаксис виклику визначає хост, а не переносний формат SKILL.md:
| Застосунок-хост | Почати курс | Почати Model Context Protocol (MCP) | Почати Agent Skills | Пройти тест етапу |
|---|---|---|---|---|
| Codex | start-learning, або виберіть її з /skills |
learn-mcp, або виберіть її з /skills |
learn-agent-skills, або виберіть її з /skills |
check-understanding 13, або виберіть її з /skills |
| Claude Code | /start-learning |
/learn-mcp |
/learn-agent-skills |
/check-understanding 13 |
| Інші сумісні хости | Use 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. |
Вступний тест із десяти запитань визначає початковий етап за вашими знаннями та зберігає особистий навчальний план у LEARNING.md. Далі навичка learn викладає один урок за сеанс: поняття, математика, код і тест. Вона завантажує уроки безпосередньо з цього репозиторію, а course-guide знаходить саме той урок, що допоможе подолати труднощі. У Codex викликайте learn і course-guide; у Claude Code використовуйте /learn і /course-guide; в інших сумісних хостах попросіть застосувати навичку за назвою.
Потрібен лише Model Context Protocol (MCP)? Використайте виклик MCP для свого хоста. Він створює MCP-LEARNING.md і веде єдиним маршрутом із 17 уроків: запити без стану, транспорт, двобічна робота, безпека, надійність, керування реєстром і докази відповідності протоколу. Точний порядок і контрольні точки наведено в маніфесті Model Context Protocol (MCP).
Потрібні лише Agent Skills? Використайте відповідний виклик для свого хоста. Він створює AGENT-SKILLS-LEARNING.md і веде послідовним маршрутом із п'яти уроків: контракт, виявлення, виклик, межі пісочниці, а потім оцінювання перед випуском і переносність між реальними хостами. Почніть у вебверсії з маршруту Agent Skills.
Інсталятор перелічує хости, які може налаштувати, і запитує місце встановлення. Якщо у вас ще немає Node.js, npx, python3, підтримуваного хоста або доступного для запису каталогу, скористайтеся сайтом чи самостійно прочитайте docs/en.md. Так ви вивчите поняття, але докази виявлення, виклику, запуску скриптів і видалення на реальному хості залишаться неперевіреними, доки не стане доступною попередня перевірка. Читайте уроки на aiengineeringfromscratch.com.
| Навичка | Що вона робить |
|---|---|
start-learning |
Одноразовий вступ: мета навчання, вступний тест і особистий план, збережений у LEARNING.md. |
learn |
Цикл викладача: пригадування для розігріву, інтерактивне вивчення наступного уроку, потім його тест; зберігає прогрес і чергу повторення. |
course-guide |
Тематичний навігатор. «Де вивчити увагу?» або «мої втрати дорівнюють NaN» → потрібні уроки з посиланнями. |
learn-mcp |
Спеціалізований викладач Model Context Protocol (MCP). Створює MCP-LEARNING.md, дотримується маніфесту з 17 уроків і записує докази обміну повідомленнями, безпеки, надійності й відповідності. |
learn-agent-skills |
Спеціалізований викладач Agent Skills. Створює AGENT-SKILLS-LEARNING.md, викладає уроки 22, 24, 25, 26 і 27 та записує докази роботи на реальному хості. |
learn-reverse-engineering |
Спеціалізований викладач зворотної розробки. Створює REVERSE-ENGINEERING-LEARNING.md, викладає уроки з 32 по 45 етапу 13 на програмах, які ви створюєте самі, та записує докази лабораторних робіт. |
claude-certification |
Викладач для сертифікації. Вибирає CCAO-F, CCDV-F, CCAR-F або CCAR-P, викладає уроки, запускає лабораторні роботи, перевіряє результати, проводить діагностичні й пробні іспити та зберігає прогрес. |
mcpa-certification |
Викладач MCPA. Дотримується маршруту mcpa-f із 34 уроків за протоколом 2026-07-28, викладає уроки, запускає лабораторні роботи й перевірку повідомлень, проводить діагностичний тест і три пробні іспити та зберігає прогрес. |
find-your-level |
Вступний тест із десяти запитань. Зіставляє знання з початковим етапом і створює особистий маршрут з оцінками тривалості. |
check-understanding <phase> |
Тест із восьми запитань для кожного етапу, відгуки й конкретні уроки для повторення. Скористайтеся формою для Codex, Claude Code або природною мовою з таблиці викликів вище. |
git clone https://github.com/rohitg00/ai-engineering-from-scratch.git
cd ai-engineering-from-scratch
python3 phases/00-setup-and-tooling/01-dev-environment/code/verify.py --route beginner
python3 phases/01-math-foundations/01-linear-algebra-intuition/code/vectors.pyПопередня перевірка відокремлює вимоги, потрібні зараз, від інструментів, які знадобляться пізніше. Для кожної невиконаної обов’язкової вимоги наведено виявлену причину та команду для виправлення. Команда vectors.py запускає урок без зовнішніх залежностей і наприкінці показує, що множення матриці на вектор є операцією всередині шару нейронної мережі. Збережіть цей вивід термінала як перший доказ.
Працюйте з кожним уроком однаково
- Прочитайте
docs/en.mdі поясніть головну ідею своїми словами. - Наберіть і створіть важливі частини коду, а не сприймайте блок коду як прикрасу.
- Запустіть команду уроку з кореня репозиторію, каталогу з
README.mdіphases/. - Збережіть докази: команду, робочий каталог, код завершення, змістовний вивід і результат, який ви змінили або створили.
- Продовжуйте лише тоді, коли зможете пояснити вивід і зробити невелику зміну без здогадок.
Шляхи в командах на сторінках уроків задано відносно кореня репозиторію, якщо урок прямо не вимагає змінити каталог. Якщо урок пропонує кілька мов програмування, запустіть реалізацію мовою, яку вивчаєте.
Вам не потрібно переглядати всі 542 уроки перед початком. Виберіть одну мету. Кожне посилання відкриває ту саму навчальну програму на GitHub або на сайті, а обидві версії використовують той самий код уроків.
| Ваша мета | Навчайтеся на GitHub | Навчайтеся на сайті |
|---|---|---|
| Я новачок і хочу отримати ґрунтовну базу | Етап 0: Налаштування та інструменти | Середовище розробки |
| Я знаю Python і хочу опанувати основи математики та машинного навчання | Етап 1: Математичні основи | Інтуїтивне розуміння лінійної алгебри |
| Я хочу створювати LLM-застосунки для промислової експлуатації | Етап 11: Інженерія LLM | Інженерія промптів |
| Я хочу створювати агентів | Етап 14: Інженерія агентів | Цикл роботи агента |
| Я хочу використовувати агентів програмування в реальних репозиторіях | Навчальний шлях інженерії за допомогою агентів | Інженерія за допомогою агентів |
| Я хочу визначити, що варто створювати, до початку реалізації | Навчальний шлях продуктових рішень і постачання | Продуктові рішення та постачання |
Не знаєте, з чого почати? Скористайтеся тьютором для визначення рівня start-learning або посібником із попередніх знань на сайті.
Порівняйте чотири основні напрями та шість кар’єрних маршрутів у навчальних шляхах інженерії ШІ.
Спеціалізовані маршрути MCP, Agent Skills і зворотної розробки
| Ваша мета | Навчайтеся на GitHub | Навчайтеся на сайті |
|---|---|---|
| Я хочу розробляти з Model Context Protocol (MCP) | Маршрут Model Context Protocol (MCP) | Навчальний шлях Model Context Protocol (MCP) |
| Я хочу писати й публікувати Agent Skills | Спеціалізований маршрут Agent Skills | Навчальний шлях Agent Skills |
| Я хочу читати скомпільовані програми | Маршрут зворотної розробки | Навчальний шлях зворотної розробки |
Попередні знання та час навчання
- Ви вмієте писати код будь-якою мовою; Python стане в пригоді.
- Ви хочете зрозуміти, як AI насправді працює, а не лише викликати API.
| Підготовка | Почати з | Орієнтовний час |
|---|---|---|
| Новачок у програмуванні й AI | Етап 0: Налаштування | ~306 годин |
| Знаєте Python, але не ML | Етап 1: Математичні основи | ~270 годин |
| Знаєте ML, але не глибоке навчання | Етап 3: Ядро глибокого навчання | ~200 годин |
| Знаєте глибоке навчання й хочете LLM та агентів | Етап 10: Великі мовні моделі з нуля | ~100 годин |
| Досвідчений інженер, потрібна лише інженерія агентів | Етап 14: Інженерія агентів | ~60 годин |
| Потрібні лише промислові MCP-системи | Маршрут Model Context Protocol (MCP) | ~23 години 15 хв |
| Потрібні лише промислові Agent Skills | Маршрут інженерії Agent Skills | ~9.5 години |
| Потрібна лише зворотна розробка | Маршрут зворотної розробки | ~32.5 години |
Двадцять етапів спираються один на одного. Математика є фундаментом, агенти й промислова експлуатація є верхніми рівнями. Переходьте далі, якщо вже знаєте основи, але не пропускайте їх, а потім не дивуйтеся збоям нагорі.
%%{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: Основи машинного навчання"]
P2 --> P3["Етап 3: Ядро глибокого навчання"]
P3 --> P4["Етап 4: Комп'ютерний зір"]
P3 --> P5["Етап 5: NLP від основ до поглиблених тем"]
P3 --> P6["Етап 6: Мовлення й аудіо"]
P3 --> P9["Етап 9: Навчання з підкріпленням"]
P5 --> P7["Етап 7: Поглиблене вивчення Transformers"]
P7 --> P8["Етап 8: Генеративний AI"]
P7 --> P10["Етап 10: Великі мовні моделі з нуля"]
P10 --> P11["Етап 11: Інженерія LLM"]
P10 --> P12["Етап 12: Мультимодальний AI"]
P11 --> P13["Етап 13: Інструменти й протоколи"]
P13 --> P14["Етап 14: Інженерія агентів"]
P14 --> P15["Етап 15: Автономні системи"]
P15 --> P16["Етап 16: Багатоагентні системи й рої"]
P14 --> P17["Етап 17: Інфраструктура й експлуатація"]
P15 --> P18["Етап 18: Етика, безпека й узгодження"]
P16 --> P19["Етап 19: Підсумкові проєкти"]
P17 --> P19
P18 --> P19
Двадцять етапів. Натисніть на етап, щоб розгорнути список уроків.
Підготуйте середовище до всього, що буде далі.
| # | Урок | Тип | Мова |
|---|---|---|---|
| 01 | Середовище розробки | Створіть | Python |
| 02 | Git і співпраця | Вивчіть | — |
| 03 | Налаштування GPU та хмара | Створіть | Python |
| 04 | API й ключі | Створіть | Python |
| 05 | Блокноти Jupyter | Створіть | Python |
| 06 | Середовища Python | Створіть | Shell |
| 07 | Docker для AI | Створіть | Docker |
| 08 | Налаштування редактора | Створіть | — |
| 09 | Керування даними | Створіть | Python |
| 10 | Термінал і командна оболонка | Вивчіть | — |
| 11 | Linux для AI | Вивчіть | — |
| 12 | Налагодження та профілювання | Створіть | Python |
| 13 | Python для інженерії ШІ | Створіть | Python |
Етап 1: Математичні основи 22 уроки Інтуїція за кожним AI-алгоритмом через код.
Етап 2: Основи машинного навчання 21 урок Класичне ML досі є основою більшості промислових AI-систем.
Етап 3: Ядро глибокого навчання 13 уроків Нейронні мережі з основних принципів. Без фреймворків, доки не створите власний.
| # | Урок | Тип | Мова |
|---|---|---|---|
| 01 | Перцептрон: із чого все почалося | Створіть | Python |
| 02 | Багатошарові мережі та прямий прохід | Створіть | Python |
| 03 | Зворотне поширення з нуля | Створіть | Python |
| 04 | Функції активації: ReLU, Sigmoid, GELU і причини вибору | Створіть | Python |
| 05 | Функції втрат: MSE, перехресна ентропія та контрастивні втрати | Створіть | Python |
| 06 | Оптимізатори: SGD, Momentum, Adam, AdamW | Створіть | Python |
| 07 | Регуляризація: Dropout, Weight Decay, BatchNorm | Створіть | Python |
| 08 | Ініціалізація ваг і стабільність навчання | Створіть | Python |
| 09 | Розклади швидкості навчання та розігрів | Створіть | Python |
| 10 | Створіть власний мініфреймворк | Створіть | Python |
| 11 | Вступ до PyTorch | Створіть | Python |
| 12 | Вступ до JAX | Створіть | Python |
| 13 | Налагодження нейронних мереж | Створіть | Python |
Етап 4: Комп'ютерний зір 28 уроків Від пікселів до розуміння: зображення, відео, 3D, VLM і моделі світу.
Етап 5: NLP від основ до поглиблених тем 29 уроків Мова є інтерфейсом до інтелекту.
Етап 6: Мовлення й аудіо 17 уроків Чути, розуміти, говорити.
| # | Урок | Тип | Мова |
|---|---|---|---|
| 01 | Основи аудіо: хвильові форми, дискретизація та FFT | Вивчіть | Python |
| 02 | Спектрограми, мел-шкала й аудіоознаки | Створіть | Python |
| 03 | Класифікація аудіо | Створіть | Python |
| 04 | Розпізнавання мовлення (ASR) | Створіть | Python |
| 05 | Whisper: архітектура й донавчання | Створіть | Python |
| 06 | Розпізнавання та перевірка мовця | Створіть | Python |
| 07 | Перетворення тексту на мовлення (TTS) | Створіть | Python |
| 08 | Клонування та перетворення голосу | Створіть | Python |
| 09 | Генерація музики | Створіть | Python |
| 10 | Аудіомовні моделі | Створіть | Python |
| 11 | Обробка аудіо в реальному часі | Створіть | Python |
| 12 | Створіть конвеєр голосового помічника | Створіть | Python |
| 13 | Нейронні аудіокодеки: EnCodec, SNAC, Mimi, DAC | Вивчіть | Python |
| 14 | Виявлення голосової активності й чергування реплік | Створіть | Python |
| 15 | Потокове перетворення мовлення: Moshi, Hibiki | Вивчіть | Python |
| 16 | Захист від підробки голосу й водяні знаки в аудіо | Створіть | Python |
| 17 | Оцінювання аудіо: WER, MOS, MMAU й таблиці лідерів | Вивчіть | Python |
Етап 7: Поглиблене вивчення Transformers 16 уроків Архітектура, що змінила все.
| # | Урок | Тип | Мова |
|---|---|---|---|
| 01 | Чому Transformers: проблеми RNN | Вивчіть | Python |
| 02 | Самоувага з нуля | Створіть | Python |
| 03 | Багатоголова увага | Створіть | Python |
| 04 | Позиційне кодування: синусоїдальне, RoPE, ALiBi | Створіть | Python |
| 05 | Повний Transformer: кодувальник і декодувальник | Створіть | Python |
| 06 | BERT: моделювання мови з маскуванням | Створіть | Python |
| 07 | GPT: причинне моделювання мови | Створіть | Python |
| 08 | T5, BART: моделі кодувальника-декодувальника | Вивчіть | Python |
| 09 | Vision Transformers (ViT) для комп'ютерного зору | Створіть | Python |
| 10 | Аудіотрансформери: архітектура Whisper | Вивчіть | Python |
| 11 | Суміш експертів (MoE) | Створіть | Python |
| 12 | KV-кеш, Flash Attention та оптимізація інференсу | Створіть | Python |
| 13 | Закони масштабування | Вивчіть | Python |
| 14 | Створіть Transformer з нуля | Створіть | Python |
| 15 | Різновиди уваги: ковзне вікно, розріджена й диференціальна | Створіть | Python |
| 16 | Спекулятивне декодування: чернетка, перевірка, повторення | Створіть | Python |
Етап 8: Генеративний AI 15 уроків Створюйте зображення, відео, аудіо, 3D та багато іншого.
| # | Урок | Тип | Мова |
|---|---|---|---|
| 01 | Генеративні моделі: класифікація та історія | Вивчіть | Python |
| 02 | Автокодувальники й VAE | Створіть | Python |
| 03 | GAN: генератор проти дискримінатора | Створіть | Python |
| 04 | Умовні GAN і Pix2Pix | Створіть | Python |
| 05 | Модель StyleGAN | Створіть | Python |
| 06 | Дифузійні моделі: DDPM з нуля | Створіть | Python |
| 07 | Латентна дифузія та Stable Diffusion | Створіть | Python |
| 08 | ControlNet, LoRA й кондиціонування | Створіть | Python |
| 09 | Домальовування, розширення та редагування зображень | Створіть | Python |
| 10 | Генерація відео | Створіть | Python |
| 11 | Генерація аудіо | Створіть | Python |
| 12 | Генерація тривимірних об'єктів | Створіть | Python |
| 13 | Зіставлення потоків і випрямлені потоки | Створіть | Python |
| 14 | Оцінювання: FID і показник CLIP | Створіть | Python |
| 19 | Візуальне авторегресійне моделювання (VAR): передбачення наступного масштабу | Створіть | Python |
Етап 9: Навчання з підкріпленням 12 уроків Основа RLHF та AI, що грає в ігри.
| # | Урок | Тип | Мова |
|---|---|---|---|
| 01 | MDP, стани, дії та винагороди | Вивчіть | Python |
| 02 | Динамічне програмування | Створіть | Python |
| 03 | Методи Монте-Карло | Створіть | Python |
| 04 | Q-навчання та SARSA | Створіть | Python |
| 05 | Глибокі Q-мережі (DQN) | Створіть | Python |
| 06 | Градієнти політики: REINFORCE | Створіть | Python |
| 07 | Actor-Critic: A2C, A3C | Створіть | Python |
| 08 | Алгоритм PPO | Створіть | Python |
| 09 | Моделювання винагороди та RLHF | Створіть | Python |
| 10 | Багатоагентне навчання з підкріпленням | Створіть | Python |
| 11 | Перенесення із симуляції в реальність | Створіть | Python |
| 12 | Навчання з підкріпленням для ігор | Створіть | Python |
Етап 10: Великі мовні моделі з нуля 24 уроки Створюйте, навчайте й розумійте великі мовні моделі.
Етап 11: Інженерія LLM 17 уроків Залучайте LLM до роботи в промислових системах.
| # | Урок | Тип | Мова |
|---|---|---|---|
| 01 | Інженерія промптів: техніки й шаблони | Створіть | Python |
| 02 | Few-Shot, CoT і дерево думок | Створіть | Python |
| 03 | Структуровані результати | Створіть | Python |
| 04 | Ембединги й векторні подання | Створіть | Python |
| 05 | Інженерія контексту | Створіть | Python |
| 06 | RAG: генерація з доповненням через пошук | Створіть | Python |
| 07 | Поглиблений RAG: поділ на фрагменти й переранжування | Створіть | Python |
| 08 | Донавчання з LoRA та QLoRA | Створіть | Python |
| 09 | Виклик функцій і використання інструментів | Створіть | Python |
| 10 | Оцінювання й тестування | Створіть | Python |
| 11 | Кешування, обмеження частоти та вартість | Створіть | Python |
| 12 | Захисні обмеження й безпека | Створіть | Python |
| 13 | Побудова промислового LLM-застосунку | Створіть | Python |
| 14 | Model Context Protocol (MCP) | Створіть | Python |
| 15 | Кешування промптів і контексту | Створіть | Python |
| 16 | Автомати станів агентів: графи, вузли й контрольні точки | Створіть | Python |
| 17 | Компроміси агентних фреймворків | Вивчіть | Python |
Етап 12: Мультимодальний AI 25 уроків Бачити, чути, читати й міркувати між модальностями: від фрагментів ViT до агентів, що працюють із комп'ютером.
Етап 13: Інструменти й протоколи 45 уроків Інтерфейси між AI та реальним світом.
Уроки 06-18 і 28-31 утворюють спеціалізований маршрут Model Context Protocol (MCP). Порядок у маніфесті: 06, 07, 08, 09, 10, 11, 12, 13, 14, 15, 16, 18, 17, 28, 29, 30, 31. Почніть його відповідним для хоста викликом learn-mcp, наведеним вище. Урок 23 є єдиним необов'язковим підсумковим проєктом і також потребує уроків 19 та 20.
Уроки 22 і 24-27 утворюють спеціалізований навчальний маршрут Agent Skills: від контракту пакета до перевірок випуску на реальному хості. Почніть відповідним для хоста викликом learn-agent-skills, наведеним вище; не переходьте за числовим посиланням «далі» з 22 до 23.
Етап 14: Інженерія агентів 54 уроки Створюйте агентів із базових принципів, надійно використовуйте агентів програмування й визначайте роботу до реалізації.
Кожен урок робочого середовища на етапі 14 (31-42) містить mission.md, що інструктує агента до відкриття повної документації уроку.
Уроки 31-46 утворюють маршрут інженерії за допомогою агентів. Порядок у маніфесті поєднує основу робочого середовища з формулюванням завдань, плануванням, делегуванням і сталим зворотним зв'язком. Уроки 47-54 утворюють маршрут продуктового мислення й постачання: від визначення результатів до доказів, ризиків, обсягу, вимірювання, поетапного випуску й відповідальності за зворотний зв'язок.
Етап 15: Автономні системи 22 уроки Агенти тривалої роботи, самовдосконалення й стек безпеки 2026 року.
Етап 16: Багатоагентні системи й рої 25 уроків Координація, емерджентність і колективний інтелект.
Етап 17: Інфраструктура й експлуатація 29 уроків Виводьте AI в реальний світ.
Етап 18: Етика, безпека й узгодження 30 уроків Створюйте AI, що допомагає людству. Це обов'язково.
Етап 19: Підсумкові проєкти 85 уроків 17 наскрізних продуктів + 9 поглиблених практичних маршрутів. 20-40 годин на проєкт; 4-12 уроків на маршрут.
Поглиблені практичні маршрути: серії уроків, у яких ви створюєте повну підсистему з нуля.
| # | Проєкт | Поєднує | Мова |
|---|---|---|---|
| 20 | Контракт циклу агентної оболонки | A. Агентна оболонка | Python |
| 21 | Реєстр інструментів із перевіркою схеми | A. Агентна оболонка | Python |
| 22 | JSON-RPC 2.0 через stdio з розділенням новими рядками | A. Агентна оболонка | Python |
| 23 | Диспетчер викликів функцій | A. Агентна оболонка | Python |
| 24 | Потік керування плануванням і виконанням | A. Агентна оболонка | Python |
| 25 | Контрольні перевірки й бюджет спостережень | A. Агентна оболонка | Python |
| 26 | Пісочниця зі списком заборон і обмеженням шляхів | A. Агентна оболонка | Python |
| 27 | Оболонка оцінювання з фіксованими тестовими завданнями | A. Агентна оболонка | Python |
| 28 | Спостережуваність через спани OTel GenAI та метрики Prometheus | A. Агентна оболонка | Python |
| 29 | Наскрізний агент програмування на оболонці виконання | A. Агентна оболонка | Python |
| 30 | BPE-токенізатор із нуля | B. NLP LLM | Python |
| 31 | Токенізований набір даних із ковзним вікном | B. NLP LLM | Python |
| 32 | Векторні подання токенів і позицій | B. NLP LLM | Python |
| 33 | Багатоголова самоувага | B. NLP LLM | Python |
| 34 | Блок Transformer з нуля | B. NLP LLM | Python |
| 35 | Складання моделі GPT | B. NLP LLM | Python |
| 36 | Цикл навчання й оцінювання | B. NLP LLM | Python |
| 37 | Завантаження попередньо навчених ваг | B. NLP LLM | Python |
| 38 | Донавчання класифікатора заміною голови | B. NLP LLM | Python |
| 39 | Навчання за інструкціями через донавчання з учителем | B. NLP LLM | Python |
| 40 | Пряма оптимізація вподобань із нуля | B. NLP LLM | Python |
| 41 | Повний конвеєр оцінювання | B. NLP LLM | Python |
| 42 | Завантажувач великого корпусу | C. Наскрізне навчання | Python |
| 43 | Токенізований корпус HDF5 | C. Наскрізне навчання | Python |
| 44 | Косинусна швидкість навчання з лінійним розігрівом | C. Наскрізне навчання | Python |
| 45 | Обрізання градієнтів і змішана точність | C. Наскрізне навчання | Python |
| 46 | Накопичення градієнтів | C. Наскрізне навчання | Python |
| 47 | Збереження контрольної точки й відновлення | C. Наскрізне навчання | Python |
| 48 | Розподілений паралелізм даних і FSDP з нуля | C. Наскрізне навчання | Python |
| 49 | Оболонка оцінювання мовної моделі | C. Наскрізне навчання | Python |
| 50 | Генератор гіпотез | D. Автоматизоване дослідження | Python |
| 51 | Пошук наукової літератури | D. Автоматизоване дослідження | Python |
| 52 | Виконавець експериментів | D. Автоматизоване дослідження | Python |
| 53 | Оцінювач результатів | D. Автоматизоване дослідження | Python |
| 54 | Автор наукової статті | D. Автоматизоване дослідження | Python |
| 55 | Цикл критики | D. Автоматизоване дослідження | Python |
| 56 | Планувальник ітерацій | D. Автоматизоване дослідження | Python |
| 57 | Наскрізна демонстрація дослідження | D. Автоматизоване дослідження | Python |
| 58 | Фрагменти візуального кодувальника | E. Мультимодальна візуально-мовна модель | Python |
| 59 | Кодувальник Vision Transformer | E. Мультимодальна візуально-мовна модель | Python |
| 60 | Проєкційний шар для узгодження модальностей | E. Мультимодальна візуально-мовна модель | Python |
| 61 | Злиття через перехресну увагу | E. Мультимодальна візуально-мовна модель | Python |
| 62 | Попереднє навчання зору й мови | E. Мультимодальна візуально-мовна модель | Python |
| 63 | Мультимодальне оцінювання | E. Мультимодальна візуально-мовна модель | Python |
| 64 | Порівняння стратегій поділу на фрагменти | F. Поглиблений RAG | Python |
| 65 | Гібридний пошук із BM25 і щільними векторними поданнями | F. Поглиблений RAG | Python |
| 66 | Переранжування перехресним кодувальником | F. Поглиблений RAG | Python |
| 67 | Переписування запитів: HyDE, Multi-Query та декомпозиція | F. Поглиблений RAG | Python |
| 68 | Оцінювання RAG: точність, повнота, MRR, nDCG, достовірність і релевантність відповіді | F. Поглиблений RAG | Python |
| 69 | Наскрізна RAG-система | F. Поглиблений RAG | Python |
| 70 | Формат специфікації завдань | G. Фреймворк оцінювання | Python |
| 71 | Класичні метрики | G. Фреймворк оцінювання | Python |
| 72 | Метрика виконання коду | G. Фреймворк оцінювання | Python |
| 73 | Перплексія та калібрування | G. Фреймворк оцінювання | Python |
| 74 | Агрегування таблиць лідерів | G. Фреймворк оцінювання | Python |
| 75 | Наскрізний виконавець оцінювання | G. Фреймворк оцінювання | Python |
| 76 | Колективні операції з нуля | H. Розподілене навчання | Python |
| 77 | Паралелізм даних DDP з нуля | H. Розподілене навчання | Python |
| 78 | Розподіл стану оптимізатора ZeRO | H. Розподілене навчання | Python |
| 79 | Конвеєрний паралелізм і аналіз простоїв | H. Розподілене навчання | Python |
| 80 | Розподілена контрольна точка й атомарне відновлення | H. Розподілене навчання | Python |
| 81 | Наскрізне розподілене навчання | H. Розподілене навчання | Python |
| 82 | Класифікація способів обходу захисту | I. Оболонка безпеки | Python |
| 83 | Детектор ін'єкцій промптів | I. Оболонка безпеки | Python |
| 84 | Оцінювання відмов | I. Оболонка безпеки | Python |
| 85 | Інтеграція класифікатора вмісту | I. Оболонка безпеки | Python |
| 86 | Рушій конституційних правил | I. Оболонка безпеки | Python, YAML |
| 87 | Наскрізна перевірка безпеки | I. Оболонка безпеки | Python |
Читайте основний курс як книжку
Основний курс із 20 етапів у phases/ збирається в книжкову серію із шести томів. CI створює EPUB і PDF з тих самих джерел уроків і додає їх до кожного випуску GitHub. Посилання нижче завжди ведуть до найновішого випуску. Номери томів визначають місце в серії, а не версію: кожна копія має дату видання, а старі видання залишаються доступними у відповідних випусках.
Сертифікаційні програми навмисно не включено до книжок. Стан їхніх AI-викладачів, виконувані лабораторні роботи, інтерактивні ілюстрації, діагностичні тести й тренувальні іспити з обмеженням часу залишаються доступними в GitHub і на сайті.
| Том | Назва | Етапи | Завантажити |
|---|---|---|---|
| 1 | Основи · Математика, інструменти й класичне машинне навчання | 00-02 | EPUB · PDF |
| 2 | Глибоке навчання · Мережі, зір і мовлення | 03, 04, 06 | EPUB · PDF |
| 3 | Мова · Основи NLP і Transformer | 05, 07 | EPUB · PDF |
| 4 | Великі мовні моделі · Генерація, підкріплення, попереднє навчання й інженерія | 08-11 | EPUB · PDF |
| 5 | Агенти · Мультимодальність, протоколи, автономність і рої | 12-16 | EPUB · PDF |
| 6 | Експлуатація · Інфраструктура, безпека й підсумкові проєкти | 17-19 | EPUB · PDF |
Книжка є знімком стану, а цей репозиторій є живим виданням. Кожен розділ завершується посиланнями на анімовані ілюстрації, тест і виконуваний код уроку. Зберіть локально командою python3 scripts/build_book.py (потрібен pandoc). Подробиці процесу є в book/README.md.
Готуйтеся до сертифікацій Claude
Академія сертифікації Claude є безкоштовною програмою підготовки з відкритим кодом для всіх чотирьох офіційних напрямів: Associate Foundations, Developer Foundations, Architect Foundations і Architect Professional. Кожен маршрут поєднує уроки за планом іспиту, виконувані лабораторні роботи, діагностичний тест, підсумковий проєкт і повний оригінальний тренувальний іспит.
Використовуйте посібник із початку роботи в GitHub за допомогою AI з Claude Code, Codex, ChatGPT, Cursor або іншим агентом. Запустіть claude-certification у Codex, /claude-certification у Claude Code або попросіть інший хост застосувати claude-certification. Навичка вибирає напрям, створює постійний маршрут у CLAUDE-CERTIFICATION.md, навчає крок за кроком, запускає справжні лабораторні роботи й надає відгук за результатами роботи. Той самий курс доступний на сайті сертифікацій.
Академія є незалежним навчальним матеріалом на основі публічних цілей іспитів. Вона не пов'язана з Anthropic, не відтворює справжніх екзаменаційних запитань і не гарантує успішного складання.
Готуйтеся до сертифікації MCP Associate (MCPA)
Навчальна програма сертифікації MCPA є безкоштовною програмою з відкритим кодом для підготовки до іспиту Model Context Protocol Associate від Agentic AI Foundation, який пропонує Linux Foundation Training. Її 34 уроки викладають протокол без стану від 2026-07-28 у п'яти екзаменаційних розділах: _meta для кожного запиту й server/discover замість старого рукостискання, багатораундові запити, підписки, кешування, розширення Tasks і MCP Apps, авторизація OAuth, а також рівні реєстру й SDK. Кожен урок містить виконувану лабораторну роботу лише зі стандартною бібліотекою; її протокол виконання перевіряється на відповідність актуальному формату повідомлень. Додатково маршрут містить діагностичний тест, підсумковий проєкт і три повні оригінальні тренувальні іспити, у яких розподіл запитань відповідає опублікованим вагам тем.
Використовуйте посібник із початку роботи в GitHub за допомогою AI з Claude Code, Codex, ChatGPT, Cursor або іншим агентом. Запустіть mcpa-certification у Codex, /mcpa-certification у Claude Code або попросіть інший хост застосувати mcpa-certification. Навичка створює постійний маршрут у MCPA-CERTIFICATION.md, навчає крок за кроком, запускає справжні лабораторні роботи й надає відгук за результатами роботи. Той самий курс є на сторінці маршруту MCPA.
Це незалежний навчальний матеріал на основі публічних цілей іспиту. Він не пов'язаний з Agentic AI Foundation або Linux Foundation, не відтворює справжніх екзаменаційних запитань і не гарантує успішного складання.
Кожен урок створює результат для повторного використання. Встановіть його у свого агента або використовуйте наведені нижче скрипти з кореня репозиторію.
Структура уроків і результати для повторного використання
Кожен урок міститься в окремому каталозі з однаковою структурою для всього курсу:
phases/<NN>-<phase-name>/<NN>-<lesson-name>/
├── code/ виконувані реалізації (Python, TypeScript, Rust, Julia)
├── docs/
│ └── en.md текст уроку
└── outputs/ промпти, навички, агенти або MCP-сервери, створені в уроці
Кожен урок має шість частин. Основою є поділ Створіть / Використайте: спочатку ви реалізуєте алгоритм із нуля, а потім запускаєте те саме через промислову бібліотеку. Ви розумієте роботу фреймворку, бо власноруч написали його меншу версію.
%%{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>промпт · навичка · агент · MCP</sub>"]
Інші курси завершуються словами «Вітаємо, ви вивчили X». Тут кожен урок завершується інструментом для повторного використання, який можна встановити або вставити у щоденний робочий процес.
Встановити результати уроків
Результати уроків. Репозиторій містить 414 навичок і 100 промптів у phases/**/outputs/. Установлюйте їх через scripts/install_skills.py. Потрібно клонувати репозиторій. Підтримуються фільтри за тегами, попередній перегляд без запису та структури каталогів для різних агентів:
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> є каталогом навичок вашого агента: наприклад, ~/.claude/skills/, ~/.cursor/skills/, ~/.config/openclaw/skills/, .skills/ або будь-який шлях, який читає агент.
За замовчуванням скрипт відмовляється перезаписувати наявне призначення й завершується з кодом 1 після переліку всіх конфліктних шляхів. Використовуйте --dry-run для перегляду конфліктів або --force для перезапису. Кожен запуск із фактичним записом створює в цільовому каталозі manifest.json з повним переліком, згрупованим за типом і етапом. Виберіть структуру, яку читає ваш агент:
--layout |
Створюваний шлях |
|---|---|
skills |
<target>/<name>/SKILL.md (вкладена структура, яку підтримують Claude / Cursor / Codex / OpenClaw / Hermes) |
by-phase |
<target>/phase-NN/<name>.md |
flat |
<target>/<name>.md |
Додайте робоче середовище агента у власний репозиторій
Підсумковий проєкт етапу 14 містить пакет Agent Workbench для повторного використання: AGENTS.md, схеми та скрипти ініціалізації, перевірки й передавання роботи. Створіть каркас у будь-якому репозиторії командою:
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Ви отримаєте сім під'єднаних інтерфейсів робочого середовища, початковий task_board.json і новий agent_state.json зі значенням schema_version: 1. Далі відредагуйте завдання й AGENTS.md, запустіть scripts/init_agent.py та передайте контракт агенту. Джерело пакета міститься в phases/14-agent-engineering/42-agent-workbench-capstone/outputs/agent-workbench-pack/.
Переглядайте весь курс у JSON
scripts/build_catalog.py обходить усі етапи, уроки й результати на диску та записує catalog.json у корені репозиторію. Один файл описує весь вміст курсу.
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Каталог будується з файлової системи, а не з README, тому кількості завжди відповідають реальному вмісту диска. Використовуйте його для збирання сайту, інших інструментів або перевірки чисел у README. Схему задокументовано на початку скрипту.
Робочий процес програми створює catalog.json як тимчасовий артефакт, який Git ігнорує. Не додавайте його до коміту. Той самий процес запускає audit_lessons.py як обов’язкову блокувальну перевірку.
Швидко перевіряйте Python-код усіх уроків
scripts/lesson_run.py компілює в байткод кожен файл .py у каталогах code/ усіх уроків. Типовий режим перевіряє лише синтаксис: без виконання, API-ключів і важких ML-залежностей. Він виявляє поширені помилки у внесках: неправильні відступи, зламані f-рядки та ненавмисні зміни.
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 запускає code/main.py кожного уроку або перший файл .py з обмеженням у 10 секунд. Уроки, у чиєму вхідному файлі коментар # requires: pkg1, pkg2 перелічує залежності поза стандартною бібліотекою, пропускаються з причиною needs <deps>. Виконання потрібно вмикати явно; до CI його не під'єднано.
Лише стандартна бібліотека, Python 3.10+. Установіть LINK_CHECK_SKIP=domain1,domain2, щоб замінити типовий список пропуску: twitter.com, x.com, linkedin.com, instagram.com, medium.com, які часто блокують автоматизовані запити HEAD/GET.
Основоположні статті та протоколи
- Attention Is All You Need — Vaswani et al., 2017 → Етап 7
- Language Models are Few-Shot Learners (GPT-3) → Етап 10
- Denoising Diffusion Probabilistic Models → Етап 8
- InstructGPT / RLHF → Етап 10
- Direct Preference Optimization → Етап 10
- Chain-of-Thought Prompting → Етап 11
- ReAct: Reasoning + Acting in LLMs → Етап 14
- Model Context Protocol — Anthropic → Етап 13
| Мета | Прочитайте |
|---|---|
| Додати урок або виправлення | CONTRIBUTING.md |
| Створити форк для команди чи школи | FORKING.md |
| Шаблон уроку | LESSON_TEMPLATE.md |
| Відстежити прогрес | ROADMAP.md |
| Словник термінів | glossary/terms.md |
| Кодекс поведінки | CODE_OF_CONDUCT.md |
Перш ніж надсилати урок, запустіть перевірку інваріантів:
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Код завершення відмінний від нуля, якщо порушено будь-яке правило. Правила (L001–L010) перевіряють структуру каталогів, наявність docs/en.md і H1, непорожній code/, схему quiz.json (відхиляються застарілі ключі q/choices/answer, які спричинили проблему #102), а також відносні посилання в документації уроків.
114,584 читачів · 181,995 переглядів сторінок за останні 30 днів · станом на 2026-08-29
Безкоштовно, за ліцензією MIT, 542 уроків. Дякуємо спонсорам і доброчинцям, завдяки яким ця робота можлива. Переглянути всіх спонсорів і доброчинців.
Хочете підтримати роботу? Перегляньте варіанти спонсорства, зокрема спонсорство обладнання, або станьте спонсором на GitHub.
Якщо цей посібник допоміг, поставте зірку репозиторію. Це допомагає проєкту розвиватися.
MIT. Використовуйте як завгодно: робіть форки, викладайте, продавайте або публікуйте. Зазначення авторства вітається, але не є обов’язковим.
Підтримують Rohit Ghumare і спільнота.
@ghumare64 · aiengineeringfromscratch.com · Повідомити / запропонувати