← Về danh sách
AI & Dữ liệu
#RAG#LLM#검색증강생성#벡터DB#임베딩#환각#134회
Cập nhật lần cuối · 2026-07-05

RAG (Retrieval Augmented Generation, sinh văn bản tăng cường truy xuất)

1. Tổng quan

A. Định nghĩa

Kỹ thuật trong đó, trước khi LLM sinh câu trả lời, hệ thống truy xuất (Retrieval) các tài liệu liên quan đến truy vấn từ cơ sở tri thức bên ngoài, kết hợp (Augmentation) nội dung đó vào prompt, rồi sinh câu trả lời (Generation) dựa trên căn cứ đã truy xuất.

Nói cách khác, RAG là cấu trúc kết hợp "bộ nhớ phi tham số (tài liệu bên ngoài)" với "bộ nhớ tham số (tham số bên trong LLM)". LLM nén và ghi nhớ tri thức vào tham số tại thời điểm huấn luyện, nhưng chỉ với cách này thì không thể biết thông tin mới sau thời điểm huấn luyện hay tài liệu nội bộ không có trong dữ liệu huấn luyện. RAG lấp khoảng trống này bằng cách tra cứu từ bên ngoài tại thời điểm suy luận tri thức cần cho câu trả lời và đưa vào prompt.

B. Bối cảnh ra đời và sự cần thiết

LLM có những giới hạn căn bản: ảo giác (Hallucination) – sinh ra câu trả lời nghe hợp lý nhưng sai sự thật, thiếu tính cập nhật – không biết thông tin sau mốc cắt dữ liệu huấn luyện, và thiếu tri thức nội bộ doanh nghiệp hay lĩnh vực chuyên môn. Nếu giải quyết bằng fine-tuning (huấn luyện lại) thì chi phí xây dựng dữ liệu và GPU lớn, và mỗi khi tri thức thay đổi lại phải huấn luyện lại. RAG có thể phản ánh tri thức mới nhất và chuyên dụng chỉ bằng cách cập nhật cơ sở tri thức mà không cần huấn luyện lại mô hình, đồng thời có thể trình bày kèm nguồn (căn cứ), nâng cao độ tin cậy và khả năng kiểm chứng. Vì vậy nó đã trở thành kiến trúc tiêu chuẩn trên thực tế cho việc áp dụng LLM trong doanh nghiệp.

2. Luồng xử lý (kiến trúc)

flowchart LR
  subgraph Prep[Lập chỉ mục trước · Indexing]
    D[(Kho tài liệu)] --> CH[Chunking] --> EM[Embedding] --> V[(Vector DB)]
  end
  Q[Truy vấn người dùng] --> QE[Embedding truy vấn]
  QE --> S[Tìm kiếm tương đồng vector]
  V --> S
  S --> RR[Truy xuất Top-k·xếp hạng lại]
  RR --> P[Kết hợp prompt<br/>truy vấn + căn cứ]
  P --> L[LLM sinh văn bản]
  L --> A[Câu trả lời dựa trên căn cứ + nguồn]

RAG được chia thành hai giai đoạn. Ở giai đoạn ① lập chỉ mục trước (offline), tài liệu được chia chunk, embedding rồi lập chỉ mục trong vector DB. Ở giai đoạn ② xử lý truy vấn (online), truy vấn của người dùng được chuyển sang cùng không gian embedding để truy xuất các chunk tương tự, rồi kết hợp vào prompt để LLM sinh câu trả lời. Chất lượng truy xuất quyết định chất lượng câu trả lời cuối cùng, nên trọng tâm cải thiện hiệu năng RAG phần lớn nằm ở "truy xuất" hơn là "sinh".

3. Các thành phần

Mỗi thành phần hoạt động như sau, và chỉ cần một thành phần yếu kém là chất lượng câu trả lời tổng thể sẽ giảm.

  • Xử lý tài liệu·chia chunk (Chunking): Chia văn bản gốc thành các chunk – đơn vị truy xuất và đưa vào prompt. Nếu quá lớn, nội dung không cần thiết lẫn vào thành nhiễu; nếu quá nhỏ, ngữ cảnh bị đứt đoạn. Vì vậy người ta chia theo ranh giới đoạn văn·ngữ nghĩa và đặt phần chồng lấn (overlap) giữa các chunk.
  • Mô hình embedding (Embedding): Chuyển văn bản thành vector nhiều chiều sao cho nghĩa càng gần thì vector càng gần. Dùng embedding chuyên biệt theo lĩnh vực sẽ tăng độ chính xác truy xuất.
  • Vector DB: Lưu trữ lượng lớn embedding và nhanh chóng tìm các chunk tương tự bằng tìm kiếm láng giềng gần nhất xấp xỉ (ANN, ví dụ: HNSW·IVF) (FAISS·Pinecone·pgvector, v.v.).
  • Bộ truy xuất (Retriever): Trả về Top-k chunk tương tự với truy vấn. Phổ biến là tìm kiếm lai (hybrid search) kết hợp tìm kiếm vector (ngữ nghĩa) và tìm kiếm từ khóa (BM25).
  • Bộ sinh (LLM): Nhận căn cứ đã truy xuất làm ngữ cảnh prompt, sinh câu trả lời trong phạm vi đó và trích dẫn nguồn.
Thành phần Vai trò Yếu tố ảnh hưởng chất lượng
Chunking Chia đơn vị truy xuất Kích thước chunk·overlap·ranh giới
Embedding Vector hóa ngữ nghĩa Hiệu năng mô hình·mức phù hợp lĩnh vực
Vector DB Lập chỉ mục·tìm kiếm tương đồng Thuật toán ANN·chỉ mục
Bộ truy xuất Chọn lọc căn cứ Top-k Hybrid·xếp hạng lại
Bộ sinh (LLM) Sinh văn bản dựa trên căn cứ Prompt·độ dài ngữ cảnh

4. Các dạng nâng cao (Advanced RAG)

RAG cơ bản (Naive) có luồng "truy xuất→đưa vào→sinh" đơn giản nên dễ bị ảnh hưởng bởi truy xuất thất bại hoặc lẫn tài liệu không liên quan. Các kỹ thuật tiêu biểu để bổ khuyết như sau.

  • Tìm kiếm lai + xếp hạng lại: Gộp kết quả tìm kiếm vector và từ khóa, rồi sắp xếp lại chính xác bằng bộ xếp hạng lại Cross-Encoder để nâng độ chính xác của các căn cứ hàng đầu.
  • Biến đổi truy vấn (Query Rewriting/HyDE): Mở rộng, viết lại truy vấn mơ hồ hoặc sinh câu trả lời giả định để cải thiện tỷ lệ truy xuất trúng.
  • GraphRAG: Cấu trúc hóa thực thể và quan hệ bằng đồ thị tri thức để đáp ứng các câu hỏi cần suy luận xuyên nhiều tài liệu.
  • Self/Corrective RAG: Tự đánh giá mức độ liên quan của kết quả truy xuất, nếu không phù hợp thì truy xuất lại hoặc bổ sung bằng tìm kiếm web.

5. RAG vs fine-tuning

Hai kỹ thuật không phải là sản phẩm thay thế mà có vai trò khác nhau. Fine-tuning nội tại hóa tri thức vào trọng số nên mạnh trong việc dạy định dạng·giọng điệu·năng lực cụ thể của câu trả lời, nhưng khi tri thức thay đổi thì cần huấn luyện lại. Ngược lại, RAG tiêm sự kiện·thông tin mới nhất từ bên ngoài nên cập nhật nhanh và có thể trình bày nguồn. Vì vậy trong thực tế, người ta thường kết hợp theo nguyên tắc "năng lực bằng fine-tuning, tri thức bằng RAG".

Phân loại RAG Fine-tuning
Tiêm tri thức Kết hợp vào prompt bằng truy xuất bên ngoài khi suy luận Nội tại hóa vào trọng số qua huấn luyện
Tính cập nhật/làm mới Chỉ cập nhật cơ sở tri thức (nhanh) Cần huấn luyện lại (chậm·tốn chi phí)
Trình bày nguồn Có thể (trích dẫn căn cứ) Khó
Điểm mạnh Trả lời sự kiện mới nhất·dựa trên căn cứ Định dạng·giọng điệu·năng lực chuyên môn
Chi phí Hạ tầng truy xuất Chi phí huấn luyện·dữ liệu

6. Giới hạn và đánh giá

Điểm yếu của RAG phần lớn đến từ giai đoạn truy xuất. Nếu không tìm được tài liệu liên quan (Recall giảm), câu trả lời trở nên sơ sài; nếu lẫn tài liệu không liên quan (Precision giảm), trái lại còn gây ra ảo giác. Ngoài ra, độ trễ (latency) do truy xuất và xếp hạng lại, giới hạn độ dài ngữ cảnh, và cách xử lý khi các căn cứ mâu thuẫn nhau cũng là những thách thức. Vì vậy cần đo lường và cải thiện liên tục bằng hệ thống đánh giá như RAGAS, định lượng độ chính xác truy xuất, độ trung thành với căn cứ (Faithfulness), mức độ liên quan của câu trả lời, v.v.

7. Những điểm cần cân nhắc và hàm ý

  • Chất lượng truy xuất chính là chất lượng câu trả lời: Đặt ưu tiên đầu tư vào pipeline truy xuất như chunking, embedding, xếp hạng lại hơn là phần sinh.
  • Quản trị·bảo mật: Vì dựa trên tài liệu nội bộ, việc quản lý quyền truy cập, thông tin cá nhân (lọc thông tin nhạy cảm) và nguồn là bắt buộc.
  • Đánh giá·vận hành: Định lượng chất lượng bằng RAGAS và A/B test, tự động hóa pipeline cập nhật tài liệu và lập chỉ mục lại.
  • Ứng dụng: Là kiến trúc cốt lõi của tìm kiếm tri thức nội bộ, chatbot tư vấn khách hàng, tự động hóa nghiệp vụ, và đang mở rộng sang agent (sử dụng Tool) và GraphRAG.

Tóm tắt một câu: RAG là kỹ thuật kết hợp kết quả truy xuất tri thức bên ngoài vào prompt của LLM để giảm ảo giác và sinh câu trả lời mới nhất, dựa trên căn cứ mà không cần huấn luyện lại; hiệu năng do pipeline truy xuất (chunking·embedding·hybrid·xếp hạng lại) quyết định và bổ trợ lẫn nhau với fine-tuning.