RAG so với LLM: Phân tích kỹ thuật (Định nghĩa, Khác biệt, Trường hợp sử dụng)
RAG và LLM không phải là những lựa chọn cạnh tranh: phần phân tích này giải thích cách mỗi bên hoạt động, chúng khác nhau như thế nào, và khi nào một mình LLM là đủ so với khi nào cần truy xuất.

LLM tạo phản hồi bằng cách sử dụng các tham số học được từ các mẫu trong dữ liệu huấn luyện. Vì các tham số đó có thể không phản ánh thông tin mới nhất hoặc đầy đủ nhất, RAG, viết tắt của retrieval-augmented generation, bổ sung vào quá trình này bằng cách thêm dữ liệu từ các nguồn bên ngoài vào ngữ cảnh đầu vào của LLM. Một công cụ AI truy xuất thông tin bên ngoài để bổ sung cho quá trình tạo sinh của LLM.
Trên thực tế, lựa chọn của bạn không phải là giữa RAG hoặc LLM. Mà là giữa một cách tiếp cận kết hợp và một cách chỉ dùng LLM.
RAG là cần thiết khi một LLM cần quyền truy cập vào tài liệu công ty, cơ sở dữ liệu hoặc thông tin thay đổi nhanh. Cách tiếp cận chỉ với LLM phù hợp cho một số tác vụ hành chính, xử lý dữ liệu và tạo nội dung, trong đó mọi đầu vào đều có thể do người dùng cung cấp.
RAG so với LLM: Những khác biệt chính là gì?
- RAG và LLM là những hệ thống bổ trợ cho nhau. Bạn có thể dùng một mô hình AI mà không có RAG (khi đó nó chỉ dựa vào các tham số sẵn có của mình), nhưng bạn không thể dùng hệ thống RAG mà không có mô hình.
- RAG được giới thiệu để khắc phục ba vấn đề chính của LLM: thông tin lỗi thời, phản hồi ảo giác và thiếu xác minh đối với các nguồn bên thứ ba.
- RAG làm cho AI hiệu quả hơn nhiều trong các tình huống kinh doanh thực tế vì nó kết nối LLM với tài liệu nội bộ đã được xác minh, cơ sở dữ liệu và các điểm cuối API.
- Các trường hợp sử dụng RAG hàng đầu bao gồm chatbot hỗ trợ khách hàng, các truy vấn dựa trên dữ liệu thay đổi nhanh (như tin tức ngành), và các lĩnh vực chuyên biệt như y học và luật, nơi độ chính xác và việc kiểm chứng nguồn là quan trọng.
- Có ba loại RAG chính: RAG ngây thơ, RAG mô-đun và RAG nâng cao. RAG ngây thơ dễ hiểu nhất như truy xuất thông tin trực tiếp, trong khi RAG mô-đun và RAG nâng cao bổ sung thêm các chức năng như viết lại truy vấn và tối ưu hóa đoạn nội dung.
Mô hình ngôn ngữ lớn (LLM) là gì?
LLM, hay mô hình ngôn ngữ lớn, là một hệ thống tạo nội dung bằng các tham số được tinh chỉnh. Các tham số này xác định xác suất được gán cho tất cả các token trong vốn từ vựng của LLM, cho biết token nào có khả năng xuất hiện tiếp theo cao nhất trong một chuỗi nhất định.
Để hiểu rõ hơn cách RAG hoạt động (và khác với) LLM như thế nào, sẽ hữu ích khi xem xét cách AI tạo sinh hoạt động ở mức cơ bản:
- Token hóa: Prompt của người dùng được tách thành các token, có thể là từ, phần của từ hoặc ký tự đơn lẻ.
- Nhúng: Các token được chuyển thành embedding, tức các biểu diễn số (chuỗi số) gọi là vector, mà mạng nơ-ron, bao gồm một bộ giải mã, có thể xử lý.
- Giải mã: Các lớp của bộ giải mã (chiếm một phần lớn trong mạng nơ-ron của LLM) thao tác các vector này, sử dụng một quá trình gọi là attention để nắm bắt ý nghĩa. Quá trình này xác định mức độ mỗi token nên liên hệ với các token khác trong chuỗi.
- Chấm điểm: Mô hình gán một xác suất tương thích cho mọi token trong vốn từ vựng sẵn có của nó và chọn một token tiếp theo có khả năng cao cho chuỗi.
Điểm quan trọng là một LLM chỉ có thể tạo đầu ra dựa trên các tham số hiện có và các token trong cửa sổ ngữ cảnh của nó. Trong quá trình huấn luyện, LLM được yêu cầu hoàn thành các phần của văn bản chưa hoàn chỉnh hàng tỷ lần, và các tham số của nó được điều chỉnh cho đến khi nó gán xác suất cho các token (và do đó hoàn thành văn bản) một cách đáng tin cậy.
Hãy tưởng tượng, chẳng hạn, bạn hỏi một mô hình AI câu hỏi: “Chính sách hoàn tiền năm 2026 của công ty chúng ta nói gì?” LLM chỉ có thể dự đoán các token tiếp theo dựa trên các tham số hiện có, vốn chưa được tinh chỉnh bằng tài liệu hỗ trợ của bạn. Nếu bạn hỏi nó câu này mà không có thêm ngữ cảnh, nó đơn giản sẽ không thể trả lời một cách có ý nghĩa hoặc sẽ ảo giác ra một câu trả lời sai.
Tạo sinh tăng cường truy xuất (RAG) là gì?
RAG (tạo sinh tăng cường truy xuất) là quá trình trong đó thông tin từ các hệ thống bên ngoài được đưa vào prompt của LLM.
Quy trình LLM nền tảng, liên quan đến nhúng và so khớp token theo xác suất, vẫn giữ nguyên. RAG giới thiệu một bước sơ bộ, trong đó prompt của người dùng được mở rộng bằng dữ liệu bổ sung.
Sau đây là tổng quan về cách RAG hoạt động:
- Chuẩn bị tri thức: Một nguồn tri thức được chuẩn bị. Đó có thể là một bộ tài liệu, một cơ sở dữ liệu vector, một đồ thị tri thức hoặc một chỉ mục trực tiếp (chẳng hạn cho tìm kiếm AI).
- Đặt prompt: Người dùng nhập một prompt, chẳng hạn như: “Tôi có nên đi dạo ở London hôm nay không?”
- Truy xuất: Nguồn thông tin bên ngoài được bộ truy xuất của công cụ AI truy vấn. Nó có thể nhúng prompt, biến nó thành một vector, rồi truy vấn cơ sở dữ liệu vector. Hoặc nó có thể dùng một phương pháp khác, chẳng hạn như lệnh gọi API, so khớp từ khóa hoặc duyệt đồ thị tri thức.
- Chèn thêm: Thông tin này được thêm vào prompt gốc của người dùng. Trong ví dụ về câu hỏi đi dạo ở London, điều này có thể bao gồm thông tin thời tiết ở London và tình trạng hiện tại của các tuyến đi bộ phổ biến.
- Tạo câu trả lời: LLM tạo phản hồi theo cách thông thường bằng cách sử dụng prompt đã được mở rộng.
Ở phía sau, văn bản được truy xuất sẽ được thêm vào ngữ cảnh đầu vào, được token hóa và được nhúng. Sau đó, mô hình xử lý ngữ cảnh bổ sung đó thông qua bộ giải mã, điều này làm thay đổi xác suất token đầu ra.
Nói chung, RAG có thể được chia thành ba loại con. RAG ngây thơ tuân theo quy trình RAG cơ bản, truy xuất thông tin và đưa nó vào prompt. RAG nâng cao bổ sung thêm các chức năng như viết lại truy vấn và nhiều lượt truy vấn. RAG mô-đun chỉ một kiểu kiến trúc trong đó các chức năng nâng cao khác nhau có thể được xem như các thành phần và kết hợp khi cần.
RAG so với LLM: Tổng quan về các trường hợp sử dụng
RAG cung cấp cho người dùng quyền truy cập vào dữ liệu cập nhật. Điều này giúp đầu ra của LLM ít có khả năng bị ảo giác và thiếu thông tin hơn. Nếu bạn cần xem các nguồn của thông tin được sử dụng trong đầu ra, RAG cũng là điều thiết yếu, vì các câu trả lời không được bám nguồn từ LLM sẽ không đi kèm trích dẫn.
Các trường hợp sử dụng RAG
- Các yêu cầu về thông tin nhạy thời gian: Bất kỳ truy vấn nào về thông tin nhanh chóng lỗi thời, dù đơn giản như dự báo thời tiết hay phức tạp như phân tích chi tiết về một tin tức mới nổi, đều cần dựa trên các nguồn bên thứ ba đã được xác thực.
- Tài liệu công ty: Các chatbot AI nội bộ hoặc hướng tới khách hàng, trong đó người dùng đặt câu hỏi liên quan đến tài liệu công ty hoặc tài liệu sản phẩm, nên được bật RAG, đặc biệt nếu tài liệu thường xuyên được cập nhật.
- Hỗ trợ khách hàng: Các chatbot dành cho khách hàng cần quyền truy cập vào tài liệu hỗ trợ hiện tại, chi tiết để cung cấp câu trả lời chính xác.
- Các lĩnh vực chuyên biệt (y học, luật, tài chính, v.v.): Các LLM chưa được huấn luyện trên các kho ngữ liệu đặc thù theo miền (đặc biệt là các mô hình phổ biến) thường gặp khó khăn với sắc thái của các prompt chuyên biệt.
Các trường hợp sử dụng LLM
- Tác vụ hành chính: LLM có thể hoàn thành các tác vụ cơ bản với độ trễ tối thiểu. RAG là không cần thiết cho các tác vụ viết và hành chính cơ bản, như kiểm tra chính tả hoặc tóm tắt, nơi không cần thông tin bên ngoài.
- Tác vụ sáng tạo: Một số tác vụ sáng tạo, như tạo một truyện ngắn hoặc một hình ảnh, chỉ cần thông tin được cung cấp trong prompt gốc.
- Suy luận và các tác vụ dựa trên dữ liệu: Nếu bạn đang làm việc với một tập dữ liệu lớn, một LLM không cần quyền truy cập vào thông tin bên ngoài để áp dụng các chức năng suy luận và phân tích.
- Lập trình thông thường: Mặc dù một quy trình làm việc lập trình có thể cần quyền truy cập vào một codebase riêng tư hoặc tài liệu, LLM vẫn rất có khả năng thực thi các tác vụ lập trình chung, như sửa lỗi và tạo hàm, mà không cần đến các nguồn bên ngoài.
RAG so với LLM ngữ cảnh dài, AI tác nhân và bám nguồn
Có ba khái niệm liên quan có ý nghĩa đối với sự phân biệt giữa RAG và LLM. Đó là LLM ngữ cảnh dài, AI tác nhân và bám nguồn.
LLM ngữ cảnh dài đôi khi có thể được dùng thay cho các hệ thống được bật RAG, trong khi AI tác nhân và bám nguồn là đồng nghĩa với hoặc hoạt động cùng với chúng.
LLM ngữ cảnh dài
Đây là các mô hình có cửa sổ ngữ cảnh lớn, với một số mô hình thương mại phổ biến có thể xử lý tới một triệu token.
Nếu tài liệu liên quan có thể vừa trong cửa sổ ngữ cảnh của mô hình và có sẵn ở định dạng văn bản, thì có một số lợi ích khi dùng cách tiếp cận chỉ với LLM. Cách này có thể giảm khả năng xảy ra lỗi truy xuất, cung cấp ngữ cảnh toàn diện hơn và loại bỏ nhu cầu thiết lập kiến trúc RAG quy mô lớn.
AI tác nhân
Tác nhân là một hệ thống dựa trên nhiều công cụ, bao gồm cả khả năng RAG để thực hiện các tác vụ phức tạp. RAG là một thành phần của AI tác nhân, và một tác nhân thường sẽ sử dụng các loại phương thức truy xuất khác nhau (ví dụ: tìm kiếm web so với tìm kiếm vector) tùy theo nội dung của prompt.
Bám nguồn
Bám nguồn là quá trình rộng hơn của việc sử dụng bằng chứng hoặc dữ liệu để cải thiện độ chính xác của phản hồi LLM, hoặc để “bám” phản hồi đó. RAG là một dạng bám nguồn, nhưng việc thêm một tài liệu kỹ thuật vào cửa sổ ngữ cảnh cũng được tính là bám nguồn.
RAG so với LLM: Các ví dụ thực tế
Để hiểu rõ hơn cách RAG hoạt động so với việc dùng LLM không có RAG, chúng ta có thể xem một ví dụ thực tế đơn giản sử dụng Perplexity và một trường hợp doanh nghiệp giả định, trong đó một cơ sở dữ liệu vector được truy vấn.
RAG so với LLM với một prompt đơn giản
Sau đây là đầu ra (giới hạn ở hai câu) khi hỏi Perplexity, "Should I go for a walk in London today?” với tính năng tìm kiếm web bằng AI (một dạng RAG) bị tắt:
Có — nếu thời tiết tương đối khô ráo và bạn có thời gian, một chuyến đi bộ ở London hôm nay có thể là sự thay đổi không khí đầy sảng khoái. Hãy chọn một lộ trình dọc South Bank, Regent’s Canal, hoặc đi qua Hyde Park, và mang theo một chiếc áo chống nước mỏng phòng khi cần.
Hãy so sánh điều này với prompt khi LLM có thể kiểm tra các nguồn bên ngoài:
Có, hôm nay là một ngày đẹp để đi dạo ở London: dự báo cho thấy nhiệt độ ôn hòa khoảng 19–21°C, có những khoảng nắng xen kẽ và khả năng mưa rất thấp. Với bầu trời nhiều mây xen kẽ và gió nhẹ, điều kiện rất dễ chịu để khám phá các công viên hoặc những tuyến đi bộ ven sông như South Bank.
Có những điểm tương đồng giữa hai ví dụ, vì LLM sử dụng cùng quy trình chấm điểm token nền tảng. Tuy nhiên, ví dụ thứ hai bao gồm thông tin thời tiết chi tiết, khiến nó hữu ích hơn nhiều.
RAG so với LLM với cơ sở dữ liệu vector doanh nghiệp
Hãy tưởng tượng một người dùng hỏi chatbot trong ứng dụng của một ứng dụng ngân hàng câu hỏi sau: “Tôi có thể tải xuống sao kê gần đây nhất của mình ở đâu?”
Ngân hàng quản lý ứng dụng đã tạo một cơ sở dữ liệu chứa các embedding của tài liệu sản phẩm cập nhật của mình và kết nối nó với quy trình RAG của chatbot. Bộ tài liệu bao gồm khoảng 1.000 tài liệu nguồn, được chia thành các đoạn nhỏ hơn và đã được chuyển thành vector để truy xuất.
Truy vấn của người dùng được gửi đến một mô hình nhúng, và ứng dụng gửi vector đó đến cơ sở dữ liệu, nơi trả về các đoạn liên quan.
Mô hình nhúng sẽ nhận một yêu cầu như sau:
{
"input": "Where can I download my most recent statement?"
}Mô hình nhúng trả về vector nhúng sau đây:
{
"embedding": [0.12, -0.44, 0.87, 0.31]
}Cơ sở dữ liệu vector sau đó sẽ nhận một yêu cầu như sau:
{
"vector": [0.12, -0.44, 0.87, 0.31],
"top_k": 5
}Trong ví dụ (đã được đơn giản hóa nhiều) này, cơ sở dữ liệu trả về năm đoạn liên quan nhất đến truy vấn của người dùng, và các đoạn đó được gửi tới ứng dụng rồi đưa vào prompt của LLM.
Khi nào nên chọn RAG so với LLM, và khi nào nên kết hợp
LLM và RAG là các hệ thống bổ trợ cho nhau. Vì vậy, câu hỏi “Khi nào tôi nên chọn LLM và khi nào nên chọn RAG?” là không đúng trọng tâm. Thay vào đó, bạn nên hỏi: “Khi nào LLM là đủ và khi nào RAG là tối ưu?”
Khi nào nên dùng LLM mà không bật RAG
- Mô hình AI bạn chọn có cửa sổ ngữ cảnh lớn: Nếu việc đưa toàn bộ thông tin hoặc dữ liệu cần thiết cho một câu trả lời chính xác vào prompt của bạn là dễ hơn, chẳng hạn bằng cách tải lên một tài liệu, thì làm vậy có thể giảm độ trễ và ngăn các vấn đề liên quan đến truy xuất.
- Các quy trình làm việc về suy luận và phân tích dữ liệu: Các quy trình làm việc về phân tích và suy luận chỉ tham chiếu dữ liệu được cung cấp trong prompt thì không cần khả năng RAG.
- Tạo mã: RAG thường không cần thiết cho công việc lập trình chung, mặc dù nó thường được dùng cho các tác vụ đặc thù theo dự án, chẳng hạn như truy xuất các bản sửa lỗi trước đó hoặc API và tài liệu của nhà cung cấp.
Khi nào nên dùng LLM khi đã bật RAG
- Bạn cần quyền truy cập vào thông tin cập nhật: Nếu một ứng dụng AI cần truy cập các nguồn bên ngoài chứa thông tin cập nhật để tạo ra câu trả lời chính xác, hãy luôn đảm bảo rằng các khả năng RAG được bật.
- Bạn đang làm việc trong một lĩnh vực chuyên biệt: Đối với các miền như y học, luật, giáo dục, v.v., nơi độ chính xác, mức độ chi tiết và việc kiểm tra nguồn là quan trọng, việc chỉ dùng LLM thường sẽ không đủ.
- Đầu ra nên tham chiếu đến các tệp nội bộ của công ty: Nếu bạn đang dùng AI, dù nội bộ hay trong một ứng dụng hướng tới khách hàng, để tạo nội dung dựa trên tài liệu nội bộ của công ty, bất kể là dữ liệu, bộ nhận diện thương hiệu, tài liệu hay tệp, RAG sẽ cung cấp quyền truy cập vào thông tin đó.
RAG và LLM là các công nghệ bổ trợ và đang phát triển
RAG đánh dấu một bước tiến đổi mới lớn trong quá trình phát triển của AI. Nó giải quyết ba vấn đề lớn: thông tin lỗi thời, bộ nhớ mô hình hạn chế và khoảng trống thông tin do thiếu dữ liệu huấn luyện liên quan, vốn thường dẫn đến ảo giác. Dĩ nhiên, LLM chưa khắc phục hoàn toàn những điều này, nhưng tần suất xảy ra đã giảm đáng kể với sự xuất hiện của RAG.
RAG không phải là một công nghệ tĩnh. Nó được kỳ vọng sẽ cải thiện trên nhiều khía cạnh, bao gồm xếp hạng lại, độ trễ trong truy xuất và mức sử dụng token, các biện pháp bảo mật chống lại nguồn dữ liệu nguy hiểm, tích hợp dữ liệu được truy xuất từ nhiều nguồn, và nhiều hơn nữa. Khi LLM và AI tác nhân tiếp tục phát triển, các hệ thống RAG hỗ trợ chúng cũng vậy.