Ai-engineer

  • Published on
    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...
  • Published on
    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...
  • Published on
    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,...
  • Published on
    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...
  • Published on

    Day 46: Guardrails

    18 min read
    0
    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...
  • Published on
    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...
  • Published on
    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...
  • Published on
    Trong RAG, retriever quyết định LLM nhìn thấy tài liệu nào. Nếu retriever bỏ sót tài liệu đúng, prompt tốt đến đâu cũng khó cứu được câu trả lời.
  • Published on
    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...
  • Published on
    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...
  • Published on
    Trong RAG, câu hỏi của user được biến thành embedding, sau đó hệ thống tìm các đoạn tài liệu có ý nghĩa gần nhất:
  • Published on
    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...
  • Published on
    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...
  • Published on
    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...
  • Published on
    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...
  • Published on
    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...
  • Published on
    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...
  • Published on
    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...
  • Published on
    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...
  • Published on
    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ô...
  • Published on
    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...
  • Published on
    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.
  • Published on
    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...
  • Published on
    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...
  • Published on
    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...
  • Published on
    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ừ...
  • Published on
    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...
  • Published on
    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...
  • Published on
    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...
  • Published on
    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ỹ...
  • Published on
    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...
  • Published on
    Neural network là một hàm có nhiều layer. Mỗi layer nhận input dạng ma trận, nhân với weight, cộng bias, rồi đi qua activation:
  • Published on
    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...
  • Published on
    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ướ...
  • Published on
    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ỉ...
  • Published on
    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...
  • Published on
    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...
  • Published on
    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...
  • Published on
    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...
  • Published on
    Series ghi lại quá trình học khóa AI Engineer từ Senior SE sang GenAI/RAG/LLM Production Engineer trong 50 ngày