Từ điển
RAG là gì?
RAG (Retrieval-Augmented Generation) là cách tìm đoạn tài liệu liên quan trước, đưa vào ngữ cảnh rồi để mô hình trả lời. Giảm ảo giác, dễ cập nhật.
RAG (Retrieval-Augmented Generation) là cách kết hợp tìm kiếm với sinh văn bản. Hệ thống tìm các đoạn tài liệu liên quan, đưa chúng vào ngữ cảnh, rồi để mô hình trả lời dựa trên các đoạn đó.
RAG hoạt động thế nào?
- Tài liệu được chia thành đoạn nhỏ và chuyển thành vector.
- Câu hỏi cũng được chuyển thành vector.
- Hệ thống tìm các đoạn gần nhất về ngữ nghĩa.
- Các đoạn này được ghép vào prompt.
- Mô hình trả lời và có thể trích nguồn.
Vì sao dùng RAG?
- Kiến thức có thể cập nhật mà không huấn luyện lại mô hình.
- Câu trả lời bám vào tài liệu nội bộ.
- Có thể chỉ ra nguồn để người dùng kiểm tra.
- Giảm chi phí so với đưa toàn bộ tài liệu vào prompt.
Giới hạn
RAG không đảm bảo đúng. Nếu bước tìm kiếm lấy sai đoạn, câu trả lời vẫn sai. Tài liệu mâu thuẫn hoặc quá cũ cũng tạo ra kết quả kém.
Vì vậy RAG cần được đánh giá ở cả hai khâu: tìm đúng đoạn và trả lời đúng ý.
Chi phí thật của một lần hỏi có RAG
RAG không miễn phí. Nó đổi một khoản chi phí lấy một khoản khác: thay vì gửi cả tài liệu, bạn gửi bốn đến sáu đoạn liên quan, tức khoảng 4.000 đến 6.000 token thêm cho mỗi câu hỏi.
Với Gemini 3 Flash, một lượt có RAG tốn khoảng 6,1đ thay vì 3,7đ. Với GPT 6.1 SOL, khoảng 22,8đ thay vì 13,2đ, tức thêm 73%. Con số tuyệt đối nhỏ, nhưng nó nhân với số câu hỏi, và đó là lý do số đoạn lấy ra là tham số cần chỉnh: lấy mười đoạn thay vì bốn làm chi phí tăng gấp đôi mà chất lượng thường không tăng tương ứng.
Ba khoản chi phí khác thường bị bỏ khỏi dự toán:
- Tạo vector cho toàn bộ kho tài liệu, và tạo lại khi đổi model embedding.
- Lưu vector và chỉ mục, tăng theo số đoạn.
- Xử lý câu hỏi bị trả lời sai vì lấy nhầm đoạn, tức một lượt gọi nữa.
Chi phí thứ ba là chi phí lớn nhất và khó thấy nhất. Một hệ RAG lấy nhầm đoạn ở 20% số câu hỏi làm chi phí thực tăng 20%, và làm người dùng mất niềm tin nhanh hơn mọi thứ khác.
Khi nào không cần RAG
Nếu tài liệu của bạn vừa một lần gọi, dán trực tiếp thường rẻ và chính xác hơn. Một tài liệu 100 trang khoảng 120.000 token; đọc trọn bằng Gemini 3 Flash tốn khoảng 72đ. Dựng một hệ RAG cho một tài liệu như vậy là làm nhiều việc hơn cần thiết.
RAG đáng làm khi kho tài liệu lớn hơn cửa sổ ngữ cảnh, khi tài liệu thay đổi liên tục, hoặc khi bạn cần chỉ ra nguồn cho từng câu trả lời. Ba điều kiện đó cũng là ba lý do người ta chọn RAG thay vì nhét tất cả vào prompt.
Với tài liệu dài nhưng cố định, cách giữa hai đầu là đọc một lần rồi giữ trong cùng hội thoại để phần đã đọc được tính giá cache, thay vì dựng cả một pipeline tìm kiếm. Cách tính ở prompt caching giảm chi phí và ví dụ đầy đủ ở đọc hợp đồng 300 trang tốn bao nhiêu token.
Chi phí của từng model trong danh mục ở bảng quy đổi token. Các khái niệm liên quan: embedding, chunking, reranking và cơ sở dữ liệu vector.
Câu hỏi thường gặp
RAG là viết tắt của gì?
Retrieval-Augmented Generation, nghĩa là sinh văn bản có tìm kiếm hỗ trợ. Hệ thống tìm các đoạn tài liệu liên quan trước, đưa chúng vào ngữ cảnh, rồi để mô hình trả lời dựa trên các đoạn đó thay vì dựa trên ký ức huấn luyện.
RAG có loại bỏ được ảo giác không?
Giảm chứ không loại bỏ. Nếu bước tìm kiếm lấy sai đoạn, hoặc tài liệu nội bộ mâu thuẫn, mô hình vẫn trả lời sai nhưng lần này sai có nguồn. Vì vậy RAG cần được đánh giá ở cả hai khâu: tìm đúng đoạn và trả lời đúng ý.
Một lần hỏi có RAG tốn thêm bao nhiêu tiền?
Khoảng 4.000 đến 6.000 token ngữ cảnh thêm cho mỗi câu hỏi, tuỳ số đoạn lấy ra. Với Gemini 3 Flash, một lượt có RAG tốn khoảng 6,1đ thay vì 3,7đ. Với GPT 6.1 SOL, khoảng 22,8đ thay vì 13,2đ, tức thêm 73%.