Series này là lộ trình học LLM cho senior dev muốn hiểu bên dưới — không phải để dùng API nhanh hơn, mà để biết tại sao hệ thống lại hoạt động theo cách đó. Từ linear algebra cho đến distributed training, từ BPE tokenizer cho đến fine-tune Llama trên GPU thuê $20, mỗi bài xây lên một lớp hiểu biết mới trên nền của bài trước.
Đây là hybrid learning path: 70% code thực hành, 30% bài viết giải thích. Blog là output layer — nơi distill lại những gì đã làm được. Nếu bạn chỉ đọc mà không chạy code, bạn sẽ hiểu một nửa. Nếu bạn chỉ chạy code mà không đọc, bạn sẽ hiểu nửa còn lại. Kết hợp mới có bức tranh đầy đủ.
Mỗi bài đứng độc lập nhưng đọc tuần tự sẽ tích lũy đúng thứ tự cần thiết — không nhảy cóc lên bài fine-tuning nếu chưa hiểu attention, vì lúc đó LoRA sẽ chỉ là một cái tên.
Đối tượng
- Senior dev 5+ năm, đã dùng ChatGPT / Claude hàng ngày nhưng muốn hiểu thật sự cơ chế bên dưới
- Backend hoặc fullstack dev muốn pivot sang ML engineering / AI infra
- Dev đã đọc qua một vài tutorial LLM nhưng vẫn thấy mờ vì thiếu nền toán và thiếu code thực
- Không cần background ML trước — cần biết Python và linear algebra cơ bản ở mức “biết matrix là gì”
Approach
Blog này không phải course. Không có video, không có quiz, không có certificate. Đây là working notes của một dev đang học — viết lại những gì đã hiểu, kèm code chạy được, kèm pitfalls đã va vào.
Mỗi bài sẽ có:
- Mental model giải thích khái niệm không dùng jargon thừa
- Code Python / NumPy / PyTorch có thể chạy ngay trên Colab hoặc local
- So sánh với thứ quen thuộc — nếu bạn đã biết database, distributed systems, compiler thì LLM sẽ bắt đầu có analog
- Không skip phần toán quan trọng — giải thích đủ để code không trở thành magic copy-paste
Cấu trúc series
Part 1: Foundation & Mental Model
Mục tiêu: xây nền toán và trực giác trước khi đụng vào code transformer.
| # | Title | Status |
|---|---|---|
| 1 | LLM hoạt động thế nào: mental model cho dev | Đã xuất bản |
| 2 | Linear algebra cho LLM: vector, matrix, dot product | Dự kiến |
| 3 | Calculus cho LLM: gradient, chain rule, backprop intuition | Dự kiến |
| 4 | Probability cho LLM: softmax, cross-entropy, perplexity | Dự kiến |
| 5 | Neural network tối giản: perceptron, MLP từ zero | Dự kiến |
Part 2: Tokenization & Embeddings
Mục tiêu: hiểu text biến thành số như thế nào, và tại sao cách biến đó lại quan trọng.
| # | Title | Status |
|---|---|---|
| 6 | Tokenization: BPE, WordPiece, SentencePiece | Dự kiến |
| 7 | Build BPE tokenizer từ đầu (Karpathy minbpe) | Dự kiến |
| 8 | Embeddings: word2vec đến contextual đến positional encoding (RoPE) | Dự kiến |
Part 3: Attention & Transformer
Mục tiêu: code được attention từ đầu, hiểu tại sao kiến trúc này thắng.
| # | Title | Status |
|---|---|---|
| 9 | Attention mechanism: Query / Key / Value intuition | Dự kiến |
| 10 | Self-attention code từ đầu bằng NumPy | Dự kiến |
| 11 | Multi-head attention: tại sao chia nhiều head | Dự kiến |
| 12 | Transformer block: attention + MLP + layer norm + residual | Dự kiến |
| 13 | nanoGPT: 300 dòng PyTorch tái tạo GPT từ đầu | Dự kiến |
Part 4: Training
Mục tiêu: biết model được tạo ra như thế nào — từ forward pass đến distributed training.
| # | Title | Status |
|---|---|---|
| 14 | Training loop: forward, backward, optimizer, gradient descent | Dự kiến |
| 15 | Scaling laws: Chinchilla, params x data x compute | Dự kiến |
| 16 | Mixed precision, gradient accumulation, checkpointing | Dự kiến |
| 17 | Distributed training basics: DP, TP, PP, FSDP | Dự kiến |
Part 5: Fine-tuning & Post-training
Mục tiêu: adapt model có sẵn cho task cụ thể, hiểu alignment pipeline.
| # | Title | Status |
|---|---|---|
| 18 | Fine-tune fundamentals: full vs PEFT | Dự kiến |
| 19 | LoRA & QLoRA: cách hoạt động, khi nào dùng | Dự kiến |
| 20 | SFT, DPO, RLHF: alignment pipeline | Dự kiến |
| 21 | Hands-on: fine-tune Llama-3-8B với dataset tiếng Việt, ~$20 GPU | Dự kiến |
Part 6: Inference & Production
Mục tiêu: deploy model chạy được, hiểu trade-off tốc độ / chất lượng / chi phí.
| # | Title | Status |
|---|---|---|
| 22 | Quantization: INT8, INT4, GPTQ, AWQ, NF4, BitNet 1.58-bit | Dự kiến |
| 23 | vLLM, llama.cpp, Ollama, bitnet.cpp: so sánh và use case | Dự kiến |
| 24 | KV cache, PagedAttention, speculative decoding | Dự kiến |
| 25 | RAG: embedding model, vector DB, retrieval pipeline | Dự kiến |
| 26 | LLM Agents: tool use, function calling, ReAct pattern | Dự kiến |
Part 7: Advanced & Specialized
Mục tiêu: đọc được paper mới, hiểu các hướng đang được nghiên cứu tích cực nhất.
| # | Title | Status |
|---|---|---|
| 27 | MoE (Mixture of Experts): Mixtral, DeepSeek V3 | Dự kiến |
| 28 | Long context: RoPE scaling, YaRN, sliding window attention | Dự kiến |
| 29 | Reasoning models: o1, R1, chain-of-thought, test-time compute | Dự kiến |
| 30 | Eval: MMLU, GSM8K, HumanEval — đánh giá LLM đúng cách | Dự kiến |
Timeline gợi ý
Series này không có deadline. Nhưng nếu muốn có khung tham chiếu:
Tháng 1-2 — Foundation (Parts 1-2) Toán cơ bản, tokenization, embeddings. Không cần GPU. Chạy được trên laptop.
Tháng 3-4 — Transformer (Part 3) Milestone đầu tiên quan trọng: hoàn thành bài 13 (nanoGPT). Nếu code được GPT từ 300 dòng PyTorch, bạn đã qua ngưỡng “hiểu LLM là gì”.
Tháng 4-5 — Training (Part 4) Hiểu training loop, scaling laws, mixed precision. Bắt đầu cần GPU — Colab free tier đủ dùng cho phần này.
Tháng 5-6 — Fine-tuning (Part 5) Milestone thứ hai: bài 21 — fine-tune Llama-3-8B với dataset tiếng Việt trên GPU thuê ~$20. Lúc này bạn có model riêng chạy được.
Tháng 6-7 — Inference & Production (Part 6) Milestone thứ ba: bài 26 — RAG pipeline chạy end-to-end. Đây là điểm bạn có thể xây được application thực tế.
Tháng 7-9 — Advanced (Part 7) Đọc paper được, hiểu MoE và reasoning model. Tùy chọn — phần này dành cho ai muốn đi sâu hơn.
Tổng: 6-9 tháng nếu dành 5-10 tiếng mỗi tuần. Nhanh hơn nếu bạn đã có nền toán tốt. Chậm hơn nếu cần ôn lại calculus và linear algebra từ đầu — không sao, bài 2-4 có để đó.
Cách đọc series
Mỗi bài được viết để đứng được một mình — bạn có thể link thẳng cho đồng nghiệp mà không cần họ đọc từ đầu. Nhưng đọc tuần tự sẽ tốt hơn vì mỗi bài assume bạn đã có intuition từ bài trước.
Nếu đã có nền ML: nhảy thẳng vào Part 3. Nếu muốn ôn toán: bắt đầu từ Part 1. Nếu chỉ quan tâm production: Part 6 có thể đọc độc lập, nhưng Part 3 sẽ giúp bạn debug tốt hơn nhiều khi có vấn đề.
Không có thứ tự sai. Chỉ có thứ tự hiệu quả hơn.
Bài 1 — LLM hoạt động thế nào: mental model cho dev — đã lên sóng. Bắt đầu từ đó.
Cập nhật lần cuối: 2026-04-22 Trạng thái series: 1/30 đã xuất bản