Course · Interview foundations
LLMs for Data Engineers
Free LLM course for AI engineers: how large language models work, tokens, embeddings, attention, generation and prompting, explained simply with runnable code.
- Lessons
- 12
- Interview questions
- 0
- Projects & case studies
- 0
- Reading time
- ~1 h
Your progress
Saved in this browser onlyCourse structure
- 1 lessonStart hereThe complete overview of the course in one read.
- 4 lessonsBeginnerCore concepts you will use every day.
- 7 lessonsIntermediatePatterns used in production pipelines.
Practise
Lessons
Work through the lessons in order. Completed lessons show a tick; lessons you have opened are outlined.
Start here
The complete overview of the course in one read.
Beginner
Core concepts you will use every day.
- Tokens and Tokenization in LLMs, Explained SimplyWhat tokens are, how LLM tokenization works with byte-pair encoding, and why tokens decide context limits, cost and some odd model mistakes, with runnable code.
- What Are Embeddings? Vectors, Similarity and Semantic Search ExplainedWhat embeddings are in AI, how cosine similarity finds text with similar meaning, and how embeddings power semantic search and RAG, with runnable NumPy code.
- How LLMs Generate Text: Temperature, Top-k and Top-p ExplainedHow LLMs pick each next token: logits, softmax, temperature, greedy decoding, top-k and top-p sampling, and which settings to use, with runnable NumPy code.
- Prompt Engineering and Structured Output: Getting Reliable Answers from LLMsHow to write prompts that work and get reliable JSON from an LLM: clear instructions, examples, schemas, validation and retries, with a runnable Python example.
Intermediate
Patterns used in production pipelines.
- Attention and Transformers Explained SimplyHow the attention mechanism and the transformer architecture work, in plain words: queries, keys and values, causal masks and layers, with runnable NumPy code.
- Tool Calling (Function Calling) in LLMs, Explained with CodeHow LLM tool calling works: describing tools, the model asking for a call, your code running it safely, and the loop behind AI agents, with runnable Python.
- Context Windows and Hallucinations: Why LLMs Make Things UpWhat an LLM context window is, why models hallucinate, and practical ways to reduce wrong answers: grounding, budgets and checks, with runnable Python.
- Context Engineering: How to Give an LLM the Right InformationContext engineering explained simply: what goes into an LLM's context, how to choose, order and trim it, and how it differs from prompt engineering, with Python.
- How to Choose an LLM: Quality, Cost, Latency and PrivacyHow to choose an LLM for an application: test quality on your own data, estimate cost and latency, weigh privacy and hosting, and route between models.
- Fine-Tuning LLMs and LoRA Explained SimplyWhen to fine-tune an LLM, how supervised fine-tuning works, and how LoRA trains a tiny fraction of the weights, with a runnable NumPy example of the LoRA idea.
- LLM as a Judge: How to Evaluate LLM Outputs ReliablyLLM as a judge explained: score LLM answers with a rubric, parse verdicts safely, check agreement with people and catch position bias, with runnable Python.

