- Retrieval-Augmented Generation (RAG) là một kiến trúc học sâu được triển khai trong các mô hình ngôn ngữ lớn (LLMs) và mạng transformer, giúp truy xuất các tài liệu hoặc đoạn văn bản liên quan và thêm vào cửa sổ ngữ cảnh để cung cấp thông tin bổ sung, hỗ trợ LLMs tạo ra các phản hồi hữu ích.
- Hệ thống RAG điển hình có hai mô-đun chính: truy xuất và tạo sinh. Mô-đun truy xuất sử dụng các bộ mã hóa tài liệu dựa trên BERT để chuyển đổi các truy vấn và tài liệu thành định dạng vector. Các vector này sau đó được sử dụng để xác định top-k (thường là 5 hoặc 10) tài liệu thông qua tìm kiếm sản phẩm trong tối đa (MIPS).
- MIPS dựa trên sản phẩm trong của các biểu diễn vector được mã hóa của truy vấn và các vector trong cơ sở dữ liệu vector đã được tính trước cho các tài liệu được sử dụng làm bộ nhớ ngoài, không tham số.
- RAG được thiết kế để làm cho LLMs tốt hơn trong các nhiệm vụ đòi hỏi kiến thức chuyên sâu mà con người không thể thực hiện được nếu không có nguồn kiến thức bên ngoài.
- Lewis et al. đã mở mã nguồn các mô hình RAG của họ trên Hugging Face Hub, cho phép chúng ta thử nghiệm với các mô hình tương tự được sử dụng trong bài báo.
- Có hai phiên bản RAG: rag-sequence và rag-token. Rag-sequence sử dụng cùng một tài liệu truy xuất để bổ sung cho việc tạo ra toàn bộ chuỗi, trong khi rag-token có thể sử dụng các đoạn khác nhau cho mỗi token.
- Các mô hình RAG có thể được cài đặt và sử dụng với các thư viện transformers và datasets từ Hugging Face, thư viện FAISS từ Facebook cho tìm kiếm vector, và PyTorch làm backend.
- RAG giúp giảm thiểu xu hướng "ảo giác" của LLMs, cung cấp cơ sở dữ liệu cập nhật, chuyên môn hóa, và cho phép các mô hình nhỏ hơn có thể truy cập thông tin ngoài bộ nhớ tham số.
- Các ứng dụng rõ ràng nhất của RAG là các biến thể của tìm kiếm ngữ nghĩa hội thoại, nhưng cũng có thể bao gồm việc kết hợp các đầu vào đa phương thức hoặc tạo hình ảnh như một phần của đầu ra.
- RAG không giải quyết hoàn toàn các vấn đề phổ biến của LLMs như ảo giác và xu nịnh, nhưng nó giúp hướng dẫn LLMs đến các phản hồi cụ thể hơn.
📌 RAG là một công cụ mạnh mẽ giúp LLMs truy xuất và sử dụng thông tin từ các nguồn bên ngoài, cải thiện hiệu suất trong các nhiệm vụ đòi hỏi kiến thức chuyên sâu. Tuy nhiên, nó không hoàn toàn loại bỏ các vấn đề như ảo giác và xu nịnh của LLMs.
https://www.datasciencecentral.com/how-retrieval-augment-generation-rag-makes-llms-smarter-than-before/