Tech → AI
Kiến thức RAG cơ bản
Cập nhật 19/06/2026
(Việt Nguyễn AI)
1. Lý do cần RAG (Retrieval-Augmented Generation)
• Knowledge cutoff: Khắc phục việc LLM bị giới hạn thời gian cập nhật dữ liệu.
• Private Data: Giúp LLM tiếp cận dữ liệu nội bộ/riêng tư mà internet không có.
• Giảm Hallucination: Hạn chế tình trạng AI trả lời bừa, tạo ra "ảo giác".
• Tiện lợi: Thay thế việc đính kèm file thủ công vốn bị giới hạn số lượng.
2. Quy trình tiền xử lý dữ liệu (Pre-processing)
• Chunking (Chia nhỏ): Chặt tài liệu dài thành các đoạn nhỏ (chunks).
• Cơ bản: Chia theo số token (văn bản thường coi 1 token ~ 1 từ nhưng không hoàn toàn chính xác), chia theo câu/đoạn.
• Nâng cao: Semantic Chunking - Tách đoạn dựa theo sự thay đổi của ngữ nghĩa để giữ trọn vẹn ý.
• Embedding Model (Vector hóa): Chuyển các text chunks thành embedding vectors (dạng số). Có thể dùng dạng API (OpenAI, Google) hoặc Self-host (cần GPU mạnh để đảm bảo data privacy). Có mô hình Multi-modal xử lý được cả text, ảnh, audio.
• Vector Database: Nơi lưu trữ và quản lý các embedding vectors giúp truy xuất hiệu quả.
3. Quy trình vận hành (Retrieval & Generation)
-
Vector hóa Query: Câu hỏi của user đi qua đúng Embedding Model ban đầu để đưa về cùng một không gian số chiều.
-
Similarity Search: Tìm các vector tương đồng nhất trong Vector DB bằng phương pháp Cosine Similarity (đo góc giữa các vector, góc càng nhỏ càng tương đồng).
-
Context Injection: Trích xuất các chunks liên quan làm
context(ngữ cảnh). -
Generation: Gộp Câu hỏi + Context thành một prompt mới gửi cho LLM để suy luận, tổng hợp và trả ra kết quả chính xác.