📎 RAG là gì?
Cho AI tra tài liệu trước khi trả lời.
1
Hiểu nó là gì
RAG ghép model với một kho tài liệu: khi có câu hỏi, hệ thống tìm đoạn liên quan rồi đưa kèm vào prompt để câu trả lời có căn cứ.
Nói theo đời thường:
Như thi được mở tài liệu: thay vì moi từ trí nhớ, thí sinh lật đúng trang rồi mới trả lời nên ít nói bừa.
Như thi được mở tài liệu: thay vì moi từ trí nhớ, thí sinh lật đúng trang rồi mới trả lời nên ít nói bừa.
⚠ Chỗ ẩn dụ này hỏng
“Thi mở tài liệu” — nhưng thí sinh chỉ được đọc đúng những trang mà hệ thống tìm ra hộ.
Nếu bước tìm kiếm lấy nhầm đoạn, model sẽ trả lời sai một cách rất tự tin, dựa trên tài liệu sai. Chất lượng RAG phụ thuộc vào chất lượng tìm kiếm nhiều hơn phụ thuộc vào model. Phần lớn dự án RAG thất bại ở khâu tìm kiếm, không phải ở khâu sinh câu trả lời.
2
Code trông thế nào
Câu hỏi: "Chính sách đổi trả bao nhiêu ngày?" 1. Chuyển câu hỏi thành vector 2. Tìm trong kho tài liệu → lấy 3 đoạn giống nhất ← khâu hay hỏng 3. Nhét 3 đoạn đó vào prompt kèm câu hỏi 4. Model trả lời dựa trên 3 đoạn đó
Bước 2 quyết định tất cả. Model giỏi tới đâu cũng không cứu được tài liệu lấy nhầm.
3
Khi nào bạn dùng nó
✓ Dùng khi
- Cần AI trả lời dựa trên tài liệu riêng của công ty
- Tài liệu cập nhật thường xuyên
- Cần trích dẫn nguồn cho câu trả lời
✗ Đừng dùng khi
- Tài liệu quá ít (nhét thẳng vào prompt là xong)
- Cần model đổi giọng điệu chứ không cần thêm kiến thức
Chưa cần biết: chia đoạn tài liệu, tìm kiếm lai, xếp hạng lại, đánh giá chất lượng truy xuất.
Để dành tới Mốc 3 — Tự ghép được: Bạn nối được AI vào tài liệu của mình và biết cách kiểm tra nó trả lời đúng hay đang bịa.
Dấu hiệu bạn đã cần học nó: Bạn đã ở mốc này. Bắt đầu bằng việc kiểm tra bước tìm kiếm có lấy đúng đoạn không, trước khi đổ lỗi cho model.
4
Đi đâu tiếp
- EmbeddingCơ chế đứng sau bước tìm kiếm.
- HallucinationVấn đề mà RAG sinh ra để giảm bớt.
- Context windowGiới hạn số đoạn tài liệu nhét vào được.
🧪 Thử 2 phút, không cần cài gì
Tải một file PDF lên một chatbot rồi hỏi về nội dung trong đó. Bạn vừa dùng RAG. Thử hỏi điều không có trong file để xem nó phản ứng thế nào.⚖ Hay bị nhầm với thuật ngữ khác
- RAG và Fine-tuning — chọn cái nào?Fine-tuning