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)

  1. 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.

  2. 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).

  3. Context Injection: Trích xuất các chunks liên quan làm context (ngữ cảnh).

  4. 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.