Skip to content
Conduit

mcp server

Learning-AI-ML

Beginner-to-advanced AI engineer course: 96 runnable Jupyter notebooks covering Python, ML, deep learning, LLMs & RAG, AI agents, MLOps and interview prep, with exercises, real-data projects and inter

MayankKumarPokhriyal/Learning-AI-MLcommunitylistedunreviewed

Set up

Runs on your computer. Pick your agent and operating system.

This project does not publish an install method we can turn into a config. Follow the README instead.

README

synced Oct 23, 2026

AI Full Stack Engineer Course

From print("hello") to shipping RAG apps, AI agents and production ML systems.

96 Jupyter notebooks that actually run. Each one has hands-on exercises with instant feedback, from-scratch builds, a real-data project and interview Q&A.

Notebook checks Notebooks Modules Python Level License PRs welcome LinkedIn

Start here · Quick start · Course map · Study plan · How to study · Branches · Troubleshooting


Contents


Why this course

  • Beginner-first. Module 00 starts with what a variable is. Every term is defined the first time it appears.
  • Everything runs for real. Every notebook is executed top to bottom with its outputs saved. There are no simulated results or invented metrics, and conclusions are computed from the data. The whole course is re-run with every exercise solution before release.
  • You write code, not just read it. Every notebook has ✍️ Your Turn exercises and a graded 🟢/🟡/🔴 practice set. Run a cell and you instantly see ✅ correct, ⏳ not attempted, or ❌ with a hint. Solutions stay hidden until you want them.
  • Built for interviews. Each notebook has a 🔧 Build It From Scratch section (softmax, k-NN, backprop, attention, gradient boosting and more, with only NumPy or PyTorch). It also has 10–15 real interview questions with 30-second answers, deeper follow-ups and common wrong answers, plus a quick quiz. Module 15 covers coding rounds, ML/LLM/agentic system design and behavioral rounds.
  • Current tools (2026). NumPy 2, pandas 3, scikit-learn 1.9, PyTorch 2.14, Transformers 5, LangChain/LangGraph, OpenAI Agents SDK, PydanticAI, MCP, A2A, MLflow 3, Airflow 3, Spark 4.
  • No API keys required. LLM notebooks run against a free local model (gpt-oss-20b via llama.cpp) through the OpenAI-compatible API. The same code works with Ollama, LM Studio, OpenAI or Anthropic by changing three environment variables.
  • Verified resources. Every video, paper and doc link is checked automatically, and its title matches its label.

Who it's for: beginners who want one ordered path into AI; students and software engineers moving into ML or AI engineering; and anyone preparing for ML engineer, AI/LLM engineer, AI agent engineer, MLOps or data science interviews.


Start here: pick your level

Every notebook labels its sections 🟢 beginner, 🟡 intermediate or 🔴 interview depth, so you can go as deep as you're ready for.

If you are…Start withThenFocus on
🟢 New to programming00 · Python BasicsFollow the study plan from week 1, in order. Skip (optional) notebooks.🟢 sections, ✍️ Your Turn exercises, the 📝 cheat sheet
🟡 Comfortable with Python, new to ML01 · NumPy → 03 · ML FundamentalsThe classical ML series (03), then deep learning (04) and GenAI (08)🔧 Build It From Scratch, 🏋️ practice sets, 🚀 mini projects
🔴 Working engineer moving into AI08 · LLM APIs & PromptingAgentic AI (16), production (09–10), multimodal (17), capstones 03–05🔴 exercises, measured comparisons, 🎤 debugging and design questions
🎯 Interviewing soon15 · Interview PrepML coding drills, DSA patterns, ML/LLM/agentic system design, behavioralTimed drills, flashcards, every 🎤 Interview Q&A

Want a specific role? See the goal-based tracks.


Quick start

For experienced users on macOS (Apple Silicon) or Linux. Full, step-by-step instructions for every OS are in Getting started.

git clone https://github.com/MayankKumarPokhriyal/Learning-AI-ML.git
cd Learning-AI-ML
git switch learning                      # do your work here; main stays clean
uv venv --python 3.12 && source .venv/bin/activate
uv pip install -r requirements.txt
python tools/check_setup.py              # verify everything
tools/start_notebook.sh                  # opens classic Jupyter Notebook

How every notebook works

Every notebook follows the same rhythm (full spec: docs/NOTEBOOK_TEMPLATE.md):

SectionWhat you do
🤔 What Is It? · 🎯 Why It MattersPlain-English intuition, and where it shows up in jobs and interviews
✅ By the End You Can · 📋 Contents · ⚙️ SetupLearning goals, then one setup cell (with the first-run cost: downloads, model calls, time)
1…N Concept sectionsIntuition → runnable code → ✍️ Your Turn → 💡 Interview angle
🔧 Build It From ScratchImplement the core idea yourself and check it against the library
⚠️ Common PitfallsRunnable ❌ wrong / ✅ right pairs
🏋️ Practice Exercises🟢 ×3 · 🟡 ×2 · 🔴 ×1 interview-style, with instant feedback
🚀 Mini ProjectA real dataset, end to end, plus 🗣️ how to talk about it in an interview
🎤 Interview Q&A · 🧪 Quick QuizAnswer out loud first, then reveal
📚 Resources · 📝 Cheat Sheet · ➡️ What's NextVerified docs, videos and papers; a one-table summary; the next notebook

The roadmap

flowchart TD
    P1[Phase 1 · Foundations<br/>Python, internals, packaging]
    P2[Phase 2 · Data & Math<br/>NumPy, Pandas, SQL, math, statistics, visualization]
    P3[Phase 3 · Classical ML<br/>one algorithm at a time: supervised, unsupervised, practical ML]
    P4[Phase 4 · Deep Learning<br/>neural nets & transformers from scratch, PyTorch]
    P5[Phase 5 · Specializations<br/>NLP, computer vision, reinforcement learning]
    P6[Phase 6 · Generative AI<br/>LLM APIs, RAG, agents & MCP, evaluation, fine-tuning]
    P7[Phase 7 · Production<br/>MLOps, serving, Docker & CI, big data, AutoML]
    P8[Phase 8 · Agentic AI & Multimodal<br/>agent architectures, memory, multi-agent & A2A, evaluation, security, diffusion, VLMs, voice]
    P9[Phase 9 · Capstones & Interview Prep]
    P1 --> P2 --> P3 --> P4 --> P5 --> P6 --> P7 --> P8 --> P9

Notebooks marked (optional) are useful but rarely needed for interviews, so skim or skip them if time is short.


Course at a glance

Phase 1 — Foundations · 00_Foundations/

#NotebookYou will learn
01Python BasicsTypes, containers and their costs, functions, mutability, errors, files
02Python BuiltinsGenerators, closures, decorators, context managers, collections, itertools
03OOP in PythonClasses, MRO, dunder methods, dataclasses, a scikit-learn-style API from scratch
04Virtual Env & Packagingvenv, uv, lock files, pyproject.toml, building and testing a package
05Python Internals & ConcurrencyReferences, GC, the GIL, threads vs processes vs asyncio

Phase 2 — Data & Math · 01_Core_Scientific_Computing/ · 02_Data_Visualization/

#NotebookYou will learn
01NumPyVectorization, broadcasting, views vs copies, linear regression from scratch
02Pandaspandas 3 idioms, groupby/window functions, joins, reshaping, leakage-safe cleaning
03SQL with DuckDBJoins, CTEs, window functions, classic SQL interview problems
04Math for MLVectors, matrices, SVD/PCA, gradients, chain rule, entropy
05Statistics & ProbabilityCLT, confidence intervals, hypothesis tests, power, A/B testing
01Matplotlib & SeabornThe plots every ML engineer makes, EDA that tells the truth
02Plotly (optional)Interactive charts and ML dashboards

Phase 3 — Classical Machine Learning · 03_Classical_Machine_Learning/

An algorithm-by-algorithm series, like a dedicated playlist, with one algorithm per notebook. Each one has an 🃏 Algorithm Card (objective, key hyperparameters, scaling needs, complexity, strengths and weaknesses, when to use it, best libraries). Each also covers the math at interview depth, experiments that break its assumptions, validation curves, and a fair head-to-head against neighbouring algorithms. You implement the algorithm in NumPy and check it against scikit-learn.

The big picture

#NotebookYou will learn
01ML Fundamentals From ScratchSupervised vs unsupervised, losses, L1/L2, bias–variance, CV, metrics, calibration, in NumPy
02Scikit-LearnPipelines, CV strategies, tuning, imbalance, thresholds, persistence

Supervised learning

#NotebookYou will learn
03Linear RegressionOLS, gradient descent, Ridge/Lasso/ElasticNet, assumptions and diagnostics, statsmodels inference
04Logistic RegressionLog-loss, odds ratios, regularization, multiclass, thresholds and calibration
05K-Nearest NeighborsDistance metrics, choosing k, scaling, KD/ball trees, the curse of dimensionality
06Naive BayesBayes' rule, Gaussian/Multinomial/Bernoulli NB, smoothing, text classification
07Support Vector MachinesMargins, hinge loss, the kernel trick, C and gamma, SVR
08Decision TreesGini vs entropy, CART splits, pruning, feature importance pitfalls
09Random Forest & BaggingBootstrap, variance reduction, OOB error, Extra Trees, permutation importance
10Gradient BoostingXGBoost, LightGBM, CatBoost, and boosting math from scratch
11Ensembles: Voting, Stacking & AdaBoostHard/soft voting, leakage-free stacking, AdaBoost's exponential loss

Unsupervised learning

#NotebookYou will learn
12Clustering: K-Means & HierarchicalLloyd's algorithm, k-means++, choosing k, linkages and dendrograms, cluster profiling
13Clustering: DBSCAN & Gaussian MixturesDensity clustering, HDBSCAN, EM, BIC/AIC, soft assignments
14Dimensionality Reduction: PCA, t-SNE, UMAPPCA via SVD, explained variance, t-SNE and UMAP for visualization, when not to trust them
15Anomaly DetectionIsolation Forest, LOF, One-Class SVM, PyOD, evaluating with few labels

Practical ML

#NotebookYou will learn
16Feature Engineering & SelectionEncoding, transforms, interactions, filter/wrapper/embedded selection without leakage
17Imbalanced Data & Model EvaluationResampling and SMOTE done right, class weights, PR curves, cost-based thresholds
18Model Interpretability: SHAP & LIMEShapley values, SHAP and LIME, partial dependence, explaining models honestly
19Recommender SystemsCollaborative filtering, matrix factorization, implicit feedback, ranking metrics
20Time-Series ForecastingDecomposition, ETS/ARIMA with statsmodels, lag features with boosting, backtesting

Phase 4 — Deep Learning · 04_Deep_Learning/

#NotebookYou will learn
01Neural Networks From ScratchBackprop by hand, a tiny autograd engine, optimizers, dropout
02PyTorchTensors, autograd, training loops done right, CNNs, mixed precision
03Transformers From ScratchBPE, attention, RoPE, a mini-GPT, KV cache
04Keras 3 Overview (optional)Multi-backend Keras, callbacks, custom layers

Phase 5 — Specializations

NLP · 05_NLP/

#NotebookYou will learn
01Classical NLPTokenization, spaCy, TF-IDF baselines, word2vec
02Embeddings & Semantic SearchBi- vs cross-encoders, FAISS, hybrid search, reranking, retrieval metrics
03Hugging Face TransformersTokenizers, fine-tuning with Trainer, NER, LoRA intro

Computer Vision · 06_Computer_Vision/

#NotebookYou will learn
01OpenCVFiltering, edges, contours, feature matching, homography
02CNNs & Transfer LearningConvolution math, ResNets, fine-tuning, Grad-CAM
03YOLO Object DetectionIoU, NMS, mAP from scratch; training and tracking with YOLO

Reinforcement Learning · 07_Reinforcement_Learning/

#NotebookYou will learn
01Gymnasium & Q-LearningMDPs, Bellman equations, value iteration, Q-learning vs SARSA
02Deep RL with Stable-Baselines3DQN, REINFORCE from scratch, PPO, and how RLHF works

Phase 6 — Generative AI & LLMs · 08_Generative_AI_LLM/

#NotebookYou will learn
01LLM APIs & PromptingChat APIs, structured output, tool calling, streaming, cost & latency
02RAG From ScratchChunking, hybrid retrieval, reranking, grounded answers with citations
03LangChain & LangGraphLCEL, stateful graphs, checkpoints, human-in-the-loop
04LlamaIndexIndexes, retrievers, query engines, workflows
05Agents, Tool Calling & MCPAgent loops, tool errors, MCP servers and clients, prompt-injection defenses
06LLM EvaluationGolden sets, retrieval metrics, LLM-as-judge, regression testing
07Fine-Tuning with LoRA & DPOSFT, LoRA/QLoRA, preference tuning, before/after evaluation
08LLM Inference & ServingKV-cache math, batching, quantization, vLLM and llama.cpp
09Distributed Training Overview (optional)Data/tensor/pipeline parallelism, ZeRO, FSDP memory math

Phase 7 — Production

MLOps · 09_MLOps/

#NotebookYou will learn
01MLflowTracking, registry aliases, serving, tracing
02Weights & Biases (optional)Experiment dashboards, artifacts, sweeps
03DVCData versioning, reproducible pipelines, experiments
04AirflowAirflow 3 TaskFlow DAGs, scheduling, testing, a retraining DAG
05Model Monitoring & DriftDrift statistics, monitoring without labels, retraining triggers
06Kubeflow Pipelines (optional)KFP v2 components, artifacts, control flow, local and Docker runs

Model Serving · 10_Model_Serving/

#NotebookYou will learn
01FastAPIModel APIs, validation, async vs sync, testing (with a Flask comparison)
02Docker & CI/CDDockerfiles for ML, GitHub Actions, load testing
03BentoMLServices, adaptive batching, packaging
04Ray Serve (optional)Deployments, composition, autoscaling

Data Processing · 11_Data_Processing/

#NotebookYou will learn
01PolarsExpressions, lazy queries, pushdown, fair benchmarks
02PySparkSpark 4, joins and shuffles, AQE, skew, MLlib
03Dask (optional)Partitions, task graphs, distributed scheduler

AutoML & Experimentation · 12_AutoML_Experimentation/

#NotebookYou will learn
01OptunaTPE, pruning, multi-objective tuning, tuning without leakage
02Ray TuneDistributed tuning, ASHA, population-based training
03AutoGluon (optional)Strong tabular baselines in minutes

Phase 8 — Agentic AI & Multimodal · 16_Agentic_AI/ · 17_Multimodal_and_Generative_Models/

Agentic AI: how to design, build, evaluate, secure and ship AI agents. Every pattern, framework and defense is measured on real tasks against a local LLM. (The study plan puts this module right after Model Serving.)

#NotebookYou will learn
01Agent Architectures & Workflow PatternsChaining, routing, parallelization, orchestrator–workers, evaluator–optimizer; ReAct vs plan-and-execute vs ReWOO vs Reflexion; loop control
02Context Engineering & Agent MemoryContext budgets, compaction, tool-output handling, prompt caching, working/episodic/semantic memory, LangGraph stores
03Code Agents, Browser Agents & Computer UseTool design for agents, code-as-action, sandboxing, Playwright web agents, coding-agent loops
04Multi-Agent Systems & A2ASupervisor, handoffs, debate, blackboard; why multi-agent systems fail; the A2A protocol vs MCP
05Agent Frameworks ComparedOne agent built in the raw SDK, OpenAI Agents SDK, PydanticAI, smolagents and LangGraph, measured; CrewAI, AutoGen and ADK explained
06Agent Evaluation & BenchmarksOutcome vs trajectory metrics, pass^k, simulated users, trajectory judges, CI gates, SWE-bench/τ-bench/GAIA
07Agent Security & GuardrailsPrompt injection, the lethal trifecta, least privilege, human-in-the-loop, dual-LLM/CaMeL, NeMo Guardrails, red teaming
08Production AgentsTracing, SLOs, retries and idempotency, durable execution, streaming job APIs, cost control, safe rollouts

Multimodal & Generative Models

#NotebookYou will learn
01Generative Models: VAEs, GANs & DiffusionAutoencoders to VAEs, GANs, a diffusion model from scratch, latent diffusion and guidance
02Vision-Language Models & Multimodal RAGCLIP/SigLIP, small VLMs, document understanding, multimodal retrieval
03Speech AI & Voice AgentsWhisper speech recognition, text-to-speech, latency budgets and turn-taking for voice agents

Phase 9 — Capstones, Templates & Interview Prep

Capstone projects · 13_Capstone_Projects/. Each one is a notebook walkthrough plus a real project folder with code, tests, a Dockerfile and a CI workflow you can put on your résumé.

#ProjectProject folder
01End-to-End ML Projectchurn_service/
02End-to-End DL Projectimage_classifier/
03LLM RAG Assistantrag_assistant/
04AI Agentai_agent/
05Multi-Agent System: AI Data Analyst Teamdata_analyst_agents/

Templates · 14_Templates/, fill-in starters for your own projects: ML · DL · LLM

Interview Prep · 15_Interview_Prep/

#NotebookRound it prepares you for
01ML Coding Drills"Implement X in NumPy/PyTorch" coding rounds
02ML Theory & Statistics QuestionsConceptual ML/stats screens
03ML System DesignRecommenders, fraud, search ranking design rounds
04LLM System DesignRAG, agents, evaluation, cost/latency design rounds
05Behavioral & Project Storytelling"Walk me through your project" and behavioral rounds
06DSA Coding Patterns — Part 1LeetCode-style rounds: arrays & hashing, two pointers, sliding window, stacks, binary search
07DSA Coding Patterns — Part 2Linked lists, trees, graphs, heaps, dynamic programming, backtracking
08Agentic AI System Design"Design an agent that…" rounds: architecture, tools and permissions, memory, evaluation, security, cost

Study plans

Full course, week by week

docs/STUDY_PLAN.md has a checkbox for every notebook in order. It also explains how to study a single notebook and sets out a weekly rhythm with review days and mock interviews. Budget roughly 6–8 hours per notebook.

PaceDuration
Full-time (~6 h/day)about 21 weeks
Part-time (2–3 h/day)about 12 months
Weeks (full-time)Focus
1–3Python, NumPy, Pandas, SQL, math, statistics, visualization (00–02)
3–7Classical ML algorithm series (03), with DSA practice starting in week 3
7–9Deep learning, NLP, computer vision, RL (04–07)
9–11Generative AI & LLMs (08)
11–13MLOps and model serving (09–10)
13–15Agentic AI (16), then multimodal and generative models (17)
16Data processing and AutoML (11–12)
17–19Capstones and your own portfolio project (13–14)
20–21Interview prep (15) and mock interviews

Goal-based tracks

  • ML Engineer: 00 → 01 → 02/01 → 03 → 04/01–02 → 09/01, 03, 05 → 10/01–02 → 12/01 → Capstone 01 → 15/01–03
  • LLM / GenAI Engineer: 00 → 01/01–02, 04 → 03/01 → 04/01–03 → 05/02–03 → 08 (all) → 10/01–02 → 16/01–02, 06–07 → 17/02 → Capstones 03–05 → 15/01, 04–05, 08
  • AI Agent Engineer: 00 → 01/01–02 → 03/01, 04 → 04/01–03 → 05/02 → 08/01–03, 05–06 → 10/01–02 → 16 (all) → 17/03 → Capstones 04–05 → 15/04, 06–08
  • MLOps Engineer: 00 → 01/02–03 → 03/02 → 09 (all) → 10 (all) → 11/01–02 → 12/01 → Capstone 01 → 15/03
  • Computer Vision Engineer: 00 → 01/01, 04 → 02/01 → 04/01–02 → 06 (all) → 09/01 → 10/01–02 → Capstone 02
  • Data Scientist: 00/01–02 → 01 (all) → 02/01 → 03 (all) → 12/01 → Capstone 01 → 15/01–03, 06
  • Interview sprint (4 weeks, if you already know the basics): every 🔧 Build It From Scratch section in modules 01–04 and 08 → all Interview Q&A sections (as flashcards) → module 15

Flashcards for spaced repetition

python tools/export_flashcards.py            # → flashcards/ai_course_interview_flashcards.csv
python tools/export_flashcards.py --include-quiz

This exports every 🎤 interview question in the course (1,600+ cards), with its answer, as a CSV that Anki can import directly. Cards are tagged by module and notebook, so you can review only what you've finished.


Getting started (full setup)

Setup takes about 15–30 minutes, most of it downloading packages. You need no API keys and no GPU.

What you need

Operating systemmacOS 14 (Sonoma) or newer on Apple Silicon, Linux (x86-64 or ARM64), or Windows 10/11 (x86-64). Intel Macs are not supported, because current PyTorch, Ray and FAISS publish no Intel-Mac packages; use a Linux machine or a cloud VM instead.
Memory16 GB RAM recommended; 8 GB works for most notebooks if you run one at a time. The optional 20B local LLM for modules 08 and 16 needs about 16 GB by itself (smaller models work too; see the local LLM step).
DiskAbout 12 GB: 4 GB for the main environment, plus 8 GB of datasets and models downloaded as you progress. Doing everything takes about 30 GB, including the optional environments (3.5 GB) and the local LLM (12 GB).
SoftwareGit and uv. uv installs Python 3.12 for you.

Install uv if you don't have it:

# macOS / Linux
curl -LsSf https://astral.sh/uv/install.sh | sh
# Windows (PowerShell)
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

1. Fork (or clone) and switch to the learning branch

Click Fork at the top of this page so you can push your own progress, then:

git clone https://github.com/<your-username>/Learning-AI-ML.git
cd Learning-AI-ML
git switch learning        # your workspace; main stays as the clean course

Just want to read? git clone https://github.com/MayankKumarPokhriyal/Learning-AI-ML.git works too. See Branches for how the two branches work.

2. Create the main environment

uv venv --python 3.12
source .venv/bin/activate          # Windows: .venv\Scripts\activate
uv pip install -r requirements.txt
  • Linux without an NVIDIA GPU: add --torch-backend=cpu to the install command. It downloads the CPU build of PyTorch instead of several GB of CUDA libraries.
  • No uv? Run python3.12 -m venv .venv, activate it, then pip install -r requirements.txt.

This one environment runs every notebook except the five listed in step 4.

3. Check your setup

python tools/check_setup.py

The check:

  • confirms Python 3.12 and every pinned package;
  • test-imports the libraries that need native code (PyTorch, XGBoost, LightGBM, FAISS, spaCy, OpenCV, the agent frameworks);
  • checks that Jupyter will use this environment;
  • reports which optional pieces (Java, Docker, Playwright's browser, FFmpeg, a local LLM, the extra environments) you still need, and for which notebooks.

Fix anything marked ❌ before you start. Anything marked ⏭️ can wait until you reach the notebook that needs it.

4. Optional: separate environments for five notebooks

These notebooks need library versions that conflict with the main environment, so each gets its own small environment. Create one only when you reach that notebook:

NotebookEnvironment
08_Generative_AI_LLM/04_LlamaIndexllamaindex
09_MLOps/04_Airflowairflow (on Windows, use WSL2: Airflow doesn't run natively on Windows)
09_MLOps/05_Model_Monitoring_and_Driftmonitoring
09_MLOps/06_Kubeflow_Pipelineskfp
12_AutoML_Experimentation/03_AutoGluonautogluon
# replace airflow with the environment you need
uv venv .venvs/airflow --python 3.12
uv pip install --python .venvs/airflow -r requirements-airflow.txt

Keep the .venvs/<name> folder names. On macOS and Linux, the launcher in step 7 finds them and adds a kernel for each one. On Windows, register the kernel yourself:

.venvs\airflow\Scripts\python -m ipykernel install --user --name ai-course-airflow --display-name "AI course: airflow env"

5. Optional: system tools for a few notebooks

Needed formacOSUbuntu / DebianWindows
XGBoost / LightGBMbrew install libomppreinstalledpreinstalled
PySpark (11_Data_Processing/02_PySpark)brew install openjdk@17sudo apt install openjdk-17-jdkTemurin JDK 17, then set JAVA_HOME
Docker notebook, capstone containers, Kubeflow's Docker runnerDocker DesktopDocker EngineDocker Desktop
Local LLM (modules 08 and 16, capstones 03–05, speech notebook)brew install llama.cppllama.cpp releasesllama.cpp releases
Browser agents (16_Agentic_AI/03)python -m playwright install chromiumpython -m playwright install --with-deps chromiumpython -m playwright install chromium
Audio decoding for the speech notebook (17_Multimodal_and_Generative_Models/03, via torchcodec)brew install ffmpegsudo apt install ffmpega shared FFmpeg build from ffmpeg.org on your PATH

6. Optional: local LLM for modules 08 and 16

The LLM notebooks call an OpenAI-compatible API. The free default is gpt-oss-20b served by llama.cpp. The first start downloads about 12 GB:

llama-server -hf ggml-org/gpt-oss-20b-GGUF --port 8080 --jinja -c 32768 -np 2

--jinja enables tool calling, and -c 32768 -np 2 gives two parallel requests with 16k tokens of context each, which is what the agent notebooks expect. Leave it running in its own terminal. Stop it (Ctrl+C) while you work through the deep learning and multimodal notebooks, to free memory.

To use a different server or a smaller model, set these variables in the terminal you start Jupyter from:

VariableDefaultExamples
LLM_BASE_URLhttp://127.0.0.1:8080/v1Ollama http://localhost:11434/v1 · LM Studio http://localhost:1234/v1 · OpenAI https://api.openai.com/v1
LLM_MODELgpt-oss-20bany model your server provides
LLM_API_KEYlocalyour provider's key (never commit it)
export LLM_BASE_URL=http://localhost:11434/v1 LLM_MODEL=<model-name>    # macOS / Linux
$env:LLM_BASE_URL="http://localhost:11434/v1"; $env:LLM_MODEL="<model-name>"   # Windows PowerShell

Smaller models work, but tool calling and structured output are less reliable than with the default.

7. Launch Jupyter

macOS / Linux:

tools/start_notebook.sh      # classic Jupyter Notebook, with the course kernels registered

The launcher makes the default Python 3 kernel use .venv, even if you already have another Python kernel installed. It also adds a kernel for each environment in .venvs/ and prints which notebooks need which kernel. Your global Jupyter settings are not changed.

Windows (or if you prefer JupyterLab): with .venv activated, run jupyter notebook or jupyter lab. If check_setup.py warned that the python3 kernel points at a different Python, run this once: python -m ipykernel install --user --name python3 --display-name "Python 3 (AI course)".

Open 00_Foundations/01_Python_Basics.ipynb (or your starting point) and follow docs/STUDY_PLAN.md.


How to study day to day

Recommended setup: classic Jupyter Notebook on your own machine

ToolUse it forWhy
Jupyter Notebook, locally (recommended)Learning: every notebook, cell by cellThe course is built and verified this way. Everything works locally: the local LLM, Docker, Playwright and the separate environments.
VS CodeThe capstone project folders (13_Capstone_Projects/*/): code, tests, Dockerfiles, gitA real editor, debugger and terminal for project code. Notebooks also open fine here: pick .venv as the kernel.
Google ColabOptional: only the few cells that need an NVIDIA GPU (QLoRA, vLLM)Colab has no local LLM server, no Docker, no separate environments, and sessions reset, so most notebooks won't run as designed there.

A daily routine

  1. Start Jupyter. cd Learning-AI-ML && source .venv/bin/activate && tools/start_notebook.sh
  2. Start extras only when a notebook needs them.
    • Local LLM: modules 08 and 16, capstones 03–05 and the speech notebook (step 6). Stop it during deep learning and multimodal notebooks.
    • Docker Desktop: the Docker notebook and capstone containers.
  3. Open today's notebook from the study plan and choose Kernel → Restart & Clear Output.
  4. Run one cell at a time with Shift + Enter. Before each run, predict the output; after it, change one thing and re-run.
  5. Solve every ✍️ Your Turn cell until the checker shows ✅. Open a solution only after a real attempt.
  6. Say each 💡 Interview angle and 🎤 Q&A answer out loud before revealing the answer. Keep a mistakes log.
  7. Keep one notebook open at a time and shut finished ones down from the Running tab. Memory matters for the LLM and deep learning notebooks.
  8. Commit your progress on the learning branch (see below) and review 20 flashcards.

Each notebook's ⚙️ Setup section tells you its first-run cost: downloads, LLM calls and time. Agent notebooks replay model replies from a cache in _outputs/ on later runs, so re-runs are much faster.


Branches: main and learning

BranchWhat it isWho changes it
mainThe complete, verified course: every notebook with real saved outputs, the tools and the docs.Only course updates (pull requests). Never do exercises here.
learningYour workspace: the same course, where you run notebooks, type answers and keep notes.You. Mistakes here never touch main.
git switch learning                                   # work here
git add -A && git commit -m "Week 4: logistic regression exercises"
git push                                              # back up your progress (to your fork)

git switch main && git pull                           # get course updates…
git switch learning && git merge main                 # …and bring them into your workspace

git restore --source main -- AI_Full_Stack_Engineer_Course/<module>/<notebook>.ipynb   # reset one notebook to the course version

If a merge from main conflicts in a notebook you've been editing, keep your version, or take the course version with the git restore command above. Using a fork? Add the original course as upstream once (git remote add upstream https://github.com/MayankKumarPokhriyal/Learning-AI-ML.git). Then refresh your main with git switch main && git pull upstream main && git push origin main and merge it into learning as above.


Troubleshooting

SymptomFix
ModuleNotFoundError for a package that is installedThe notebook is running on a different Python. Run python tools/check_setup.py, start Jupyter with tools/start_notebook.sh, or choose the .venv kernel (Kernel → Change kernel).
libomp.dylib / XGBoostError / LightGBM fails to load (macOS)brew install libomp, then restart the kernel.
PySpark: "Java not found" or "needs Java 17"Install Java 17 or 21 (step 5), set JAVA_HOME, restart the kernel.
Docker Desktop is open but docker info returns an error (for example 500 Internal Server Error)The engine is stuck. Run docker desktop restart (or quit and reopen Docker Desktop), wait until docker info works, then re-run the cell.
An LLM cell hangs or says the server is unreachableCheck curl http://127.0.0.1:8080/health returns {"status":"ok"}. Start the server (step 6), and remember the first run of an agent notebook makes real model calls, so it is slow.
The kernel dies or the machine slows to a crawlOut of memory. Shut down other notebooks (Running tab → Shutdown), stop llama-server if the notebook doesn't need it, and re-run.
A cell prints ⏭️ Skipped …That cell needs something optional: an NVIDIA GPU, a paid API key, Docker, or Kubernetes. The message says exactly what to set up; the rest of the notebook still works.
A dataset download failsRe-run the cell (public servers hiccup). Downloads are cached in each module's _outputs/ folder; delete that folder to force a fresh download.
You broke a notebook and want the original backgit restore --source main -- AI_Full_Stack_Engineer_Course/<module>/<notebook>.ipynb
Timed DSA checks don't stop a slow solution (Windows)Expected: the timeout uses a Unix signal, so on Windows the time is only reported after the call finishes.

Contributing

Found a bug, a dead link, an outdated API, or have an idea for a notebook? Contributions are welcome.

Notebooks are checked with tools/nb.py (structure, execution, exercise solutions, links), and a GitHub Actions workflow runs the structure check on every pull request. The authoring spec is docs/NOTEBOOK_TEMPLATE.md, and docs/COURSE_MAP.md lists every notebook with its kind and environment.

If a notebook helped you learn something or land a job, a star on the repo means a lot.


Repository structure

Learning-AI-ML/
├── README.md
├── CONTRIBUTING.md · CODE_OF_CONDUCT.md · SECURITY.md · LICENSE
├── requirements.txt                       main environment (pinned)
├── requirements-<env>.txt                 five small extra environments
├── .github/                               CI workflow, issue forms, PR template
├── docs/                                  study plan, course map, notebook template spec
├── tools/
│   ├── check_setup.py                     verify your installation
│   ├── start_notebook.sh                  launch Jupyter Notebook with the course kernels
│   ├── export_flashcards.py               interview Q&A → Anki CSV
│   └── nb.py                              build / run / check / link-check notebooks
└── AI_Full_Stack_Engineer_Course/
    ├── 00_Foundations/                    Python, internals, packaging
    ├── 01_Core_Scientific_Computing/      NumPy, Pandas, SQL, math, statistics
    ├── 02_Data_Visualization/             Matplotlib & Seaborn, Plotly
    ├── 03_Classical_Machine_Learning/     20 notebooks: supervised, unsupervised, practical ML
    ├── 04_Deep_Learning/                  NNs & transformers from scratch, PyTorch, Keras
    ├── 05_NLP/                            classical NLP, embeddings, Hugging Face
    ├── 06_Computer_Vision/                OpenCV, CNNs, YOLO
    ├── 07_Reinforcement_Learning/         tabular RL, deep RL
    ├── 08_Generative_AI_LLM/              APIs, RAG, LangGraph, agents & MCP, evaluation, fine-tuning, serving
    ├── 09_MLOps/                          MLflow, W&B, DVC, Airflow, monitoring, Kubeflow
    ├── 10_Model_Serving/                  FastAPI, Docker & CI/CD, BentoML, Ray Serve
    ├── 11_Data_Processing/                Polars, PySpark, Dask
    ├── 12_AutoML_Experimentation/         Optuna, Ray Tune, AutoGluon
    ├── 13_Capstone_Projects/              5 end-to-end projects with real code
    ├── 14_Templates/                      starter notebooks
    ├── 15_Interview_Prep/                 ML coding drills, DSA patterns, theory, ML/LLM/agentic system design, storytelling
    ├── 16_Agentic_AI/                     agent architectures, memory, code & browser agents, multi-agent & A2A, evaluation, security, production
    └── 17_Multimodal_and_Generative_Models/  diffusion, vision-language models, speech and voice agents

Companion resources


About the author

Hi, I'm Mayank Kumar Pokhriyal, an AI/ML engineer with several years of industry experience building and shipping machine learning systems. I created this course because, when I was learning, I had to stitch together dozens of disconnected tutorials, courses and docs to figure out what actually mattered in the real world. This is the single, opinionated roadmap I wish I'd had when I started: beginner-friendly at the entry, production-grade at the exit.

If this course helps you, I'd love to hear about it. Connect with me, ask questions, or share what you built:

LinkedIn — linkedin.com/in/mayank-kumar-pokhriyal


License

Released under the MIT License. Datasets and pretrained models used by the notebooks keep their own licences, which each notebook states where it downloads them.

↑↓ navigate openesc close