Trang index tổng hợp toàn bộ các series trên blog — AI Engineer, Python, Đầu tư, Claude Code Practical Course. Dùng để tìm kiếm nhanh nội dung theo chủ đề.
Day 50 biến capstone từ 'project chạy được' thành 'portfolio artifact thuyết phục'. Reviewer không chỉ cần thấy chatbot trả lời, mà cần thấy bạn hiểu production RAG: ingestion, hybrid retrieval, reran...
Day 49 biến backend/API của Day 48 thành capstone có thể demo và review. UI không cần phức tạp, nhưng phải cho thấy answer có citation, source nào được dùng, request chậm ở đâu, tốn bao nhiêu token/co...
Day 48 là ngày chuyển các bài học rời rạc thành capstone có architecture rõ. Mục tiêu không phải thêm feature vô hạn, mà là đóng scope, làm backend/API có boundary tốt, có ingestion path, query path,...
LLM/RAG không thể release dựa trên cảm giác 'chat thử thấy ổn'. Golden set chính là regression test suite của hệ thống AI. Mỗi lần đổi prompt, chunking, embedding model, reranker, retrieval top-k, LLM...
Trong production, LLM output phải được xem như untrusted input. Prompt chỉ là một lớp mềm. Hệ thống cần enforce policy bằng code: validate request, filter permission trước retrieval, sanitize retrieve...
Day 43 tập trung vào deployment layer cho AI system. Sau Day 40-42, bạn đã có RAG/LLM service, streaming API và các lựa chọn serving như managed LLM, vLLM hoặc TGI. Bài này trả lời câu hỏi thực tế hơn...
Trong Day 36, pipeline Hybrid Search đã lấy candidate bằng BM25, dense retrieval và Reciprocal Rank Fusion. Bước đó tối ưu cho recall: cố gắng không bỏ sót chunk có khả năng liên quan. Nhưng top resul...
Production RAG không được chỉ làm `embed query -> vector search -> nhét top_k vào prompt`. Mỗi chunk phải có metadata đủ để filter, cite, audit, version và delete. Permission-aware RAG phải enforce AC...
Chunking là cách cắt tài liệu dài thành các record nhỏ hơn để đưa vào embedding, vector database, reranker và context của LLM. Trong RAG, chunk không chỉ là đoạn text. Chunk là đơn vị retrieval, citat...
Embedding biến text thành vector số để text gần nghĩa nằm gần nhau trong vector space. Trong RAG, embedding quyết định retriever có lấy đúng tài liệu trước khi LLM sinh câu trả lời hay không. Với tiến...
RAG = Retrieval + Generation. Thay vì nhồi toàn bộ knowledge vào prompt hoặc fine-tune model chỉ để nhớ facts, hệ thống sẽ retrieve các đoạn tài liệu liên quan từ source of truth, đưa chúng vào contex...
Quantization giảm memory footprint bằng cách lưu weights ở precision thấp hơn, ví dụ INT8 hoặc INT4 thay vì FP16/BF16. Nó giúp chạy model lớn hơn trên cùng phần cứng và có thể giảm cost, nhưng không t...
Local LLM không chỉ là 'tải model về máy'. Nó là một serving stack gồm model weights, tokenizer, runtime inference, quantization kernels, API server, scheduler, hardware, observability, security polic...
Fine-tune không có ý nghĩa nếu không chứng minh được chất lượng tăng trên dữ liệu chưa thấy. Train loss giảm không đồng nghĩa production quality tăng. Cách làm đúng là đóng băng một golden dataset, ch...
LoRA không train lại toàn bộ model. Nó freeze base model và chỉ train các low-rank adapter nhỏ gắn vào một số linear layer. QLoRA đi thêm một bước: base model được load ở 4-bit quantization để giảm VR...
Instruction tuning dataset là tập ví dụ mô tả behavior mà bạn muốn model học. Mỗi record nói với model: khi người dùng hỏi kiểu này, assistant nên trả lời theo format, tone, policy và mức độ chi tiết...
RAG đưa knowledge từ nguồn bên ngoài vào runtime context. Tool calling lấy realtime data hoặc thực hiện action qua API. Fine-tuning thay đổi behavior của model bằng training data. Prompt engineering l...
LLM app security không thể dựa vào câu 'hãy tuân thủ policy' trong system prompt. LLM đọc chung instruction, user input, retrieved documents, memory và tool results trong một ngữ cảnh ngôn ngữ; nó khô...
Agent production nên được thiết kế như một state machine có LLM ở một vài node, không phải một prompt dài rồi hy vọng model tự xử lý đúng. LangGraph giúp biểu diễn workflow bằng node, edge, state, con...
Không có framework nào là 'best' cho mọi LLM app. Best solution phụ thuộc vào shape của bài toán, SLA, độ phức tạp workflow, volume, yêu cầu audit, năng lực team và tốc độ thay đổi sản phẩm.
LLM app production là một distributed system có dependency chậm, đắt tiền, không deterministic và có rủi ro security riêng. Nếu mỗi feature team gọi provider SDK trực tiếp, hệ thống sẽ nhanh chóng mất...
Structured output biến LLM từ một text generator thành một component có contract gần giống API response. Function calling không có nghĩa model tự chạy function. Model chỉ đề xuất tool name và argument...
Prompt engineering production không phải là viết câu 'hay hơn'. Nó là thiết kế một contract giữa application và một runtime xác suất. Prompt tốt có nhiệm vụ rõ, input boundary rõ, context đủ, example...
LLM là một runtime xác suất: nó nhận context, biến text thành token, dự đoán token tiếp theo, rồi lặp lại cho đến khi dừng. Khả năng chat tốt đến từ `SFT` và `preference tuning`; kiến thức rộng đến từ...
Day 16 là mini-project tổng hợp Phase 2: Deep Learning, NLP và Transformer. Cách làm đúng không phải nhảy thẳng vào PhoBERT, mà là bắt đầu bằng baseline đơn giản, đo metric, hiểu lỗi, rồi mới fine-tun...
Hugging Face là ecosystem giúp bạn dùng model AI giống cách Senior Software Engineer dùng package registry, artifact registry và SDK. `transformers` cung cấp model/tokenizer API, `datasets` xử lý data...
Transformer là kiến trúc xử lý sequence bằng cách lặp nhiều Transformer block. Mỗi block thường có self-attention để trộn thông tin giữa các token, FFN để biến đổi representation của từng token, resid...
Tokenizer là contract giữa raw text và model weights. Cùng một câu nhưng dùng tokenizer khác sẽ ra token ids khác, nghĩa là model đang nhìn một input khác. Với LLM/RAG, token không chỉ là chi tiết kỹ...
Training loop là runtime engine của deep learning. Một batch đi qua model, model tạo prediction, loss đo sai số, autograd tính gradient, optimizer cập nhật weights. Scheduler điều chỉnh learning rate...
Customer churn prediction là bài toán binary classification: dự đoán xác suất một customer sẽ rời bỏ dịch vụ trong một horizon cụ thể, ví dụ 30 ngày hoặc cuối kỳ hợp đồng. Một pipeline tốt cần nhất qu...
Classification model không kết thúc ở `model.predict`. Trong production, model thường trả probability, còn quyết định cuối cùng phụ thuộc vào threshold, capacity, cost và policy. Error analysis là bướ...
Evaluation metric là test suite của ML system, nhưng khác unit test ở chỗ output thường là xác suất và quyết định phụ thuộc business context. Không có 'metric tốt nhất' cho mọi bài toán. Accuracy chỉ...
Feature engineering là lớp contract giữa data system và model. Với Senior SE, hãy nghĩ feature như API schema: tên cột, type, nullability, semantics và thời điểm dữ liệu đều phải rõ. Model tốt không c...
Python ML stack phổ biến gồm NumPy cho numerical compute, Pandas cho data wrangling, scikit-learn cho training pipeline, Matplotlib/Seaborn cho visualization và joblib cho artifact nhỏ-vừa. Với Senior...
Machine Learning là cách xây một function từ data thay vì viết toàn bộ rule bằng tay. Với Senior SE, hãy nhìn model như một dependency có contract xác suất: input giống nhau có thể ổn định, nhưng qual...
Math trong ML không cần bắt đầu bằng proof. Với AI Engineer thiên production, bạn cần hiểu vector là numeric representation, dot product/cosine là cách đo độ gần, matrix multiplication là cách scale t...