-
Giới thiệu:
-
Thế hệ tăng cường truy xuất (RAG) là một kỹ thuật mạnh mẽ giúp tăng cường khả năng trả lời của Mô hình ngôn ngữ lớn (LLM) bằng cách tích hợp dữ liệu cụ thể do người dùng cung cấp với kiến thức hiện có của chúng để tạo ra các phản hồi không chỉ phù hợp với ngữ cảnh mà còn được điều chỉnh để giải quyết hiệu quả các nhu cầu và truy vấn cụ thể của người dùng.
2. Nhu cầu:
-
Tính liên quan được cải thiện: Các mô hình ngôn ngữ lớn (LLM) được đào tạo trên các tập dữ liệu chung có thể không phải lúc nào cũng cung cấp các phản hồi có liên quan theo ngữ cảnh. Thế hệ tăng cường truy xuất (RAG) tích hợp dữ liệu cụ thể của người dùng để đảm bảo các phản hồi chính xác và có thể áp dụng trực tiếp.
-
Ví dụ: Một chatbot trang web của công ty sử dụng RAG để tích hợp thông tin và bối cảnh của công ty. Khi khách truy cập hỏi về lịch sử hoặc sản phẩm của công ty, RAG sẽ lấy thông tin chi tiết chính xác trực tiếp từ cơ sở dữ liệu của công ty. Điều này cho phép chatbot đưa ra phản hồi được thiết kế riêng, chính xác và đáng tin cậy, nâng cao chất lượng tương tác của người dùng.
-
Ứng dụng vào nhiều lĩnh vực ,công việc khác nhau:
có thể tuỳ biến nhiều nhu cầu khác nhau .
3. RAG hoạt động như thế nào:
I)Giải thích từng bước
-
1) Kiến thức nguồn bên ngoài (Knowledge): Quá trình bắt đầu với nguồn kiến thức bên ngoài, có thể là bất kỳ dạng dữ liệu văn bản nào như tài liệu, bài viết hoặc sách.
-
2) Chia văn bản thành các khối (Chunks): Văn bản từ nguồn bên ngoài được chia thành các phần nhỏ hơn, dễ quản lý hoặc “khối”. Điều này giúp xử lý và tìm kiếm dữ liệu dễ dàng hơn.
-
3) Chuyển đổi thành nhúng (Embeddings): Mỗi khối được chuyển đổi thành một biểu diễn số được gọi là “nhúng”. Nhúng là biểu diễn vectơ của văn bản nắm bắt ý nghĩa ngữ nghĩa của nó.
-
4) Xây dựng chỉ mục ngữ nghĩa (Index): Các nhúng được sử dụng để xây dựng chỉ mục ngữ nghĩa. Chỉ mục này cho phép tìm kiếm hiệu quả thông tin có liên quan dựa trên nội dung ngữ nghĩa của văn bản.
-
5) Lưu trữ trong cơ sở dữ liệu datavector (qdrant): Chỉ mục ngữ nghĩa và nhúng được lưu trữ trong cơ sở dữ liệu vector như ChromaDB. Cơ sở dữ liệu này sắp xếp một lượng lớn dữ liệu văn bản để tạo điều kiện truy xuất nhanh thông tin có liên quan.
II) Quy trình hỏi đáp:
-
1) Truy vấn của người dùng: Người dùng đưa ra truy vấn, chẳng hạn như yêu cầu cung cấp thông tin để xác định gian lận.
-
2) Nhúng truy vấn: Truy vấn của người dùng cũng được chuyển đổi thành nhúng.
-
3) Tìm kiếm ngữ nghĩa: Nhúng truy vấn được so sánh với nhúng được lưu trữ trong cơ sở dữ liệu vector. Tìm kiếm ngữ nghĩa được thực hiện để tìm các thông tin có liên quan nhất đến truy vấn.
-
3) Kết quả được xếp hạng: Kết quả tìm kiếm ngữ nghĩa được xếp hạng dựa trên mức độ liên quan của chúng với truy vấn. Những kết quả được xếp hạng này là các nguồn dữ liệu được trích xuất có liên quan.
-
4) Sử dụng LLM (Mô hình ngôn ngữ lớn): Các nguồn dữ liệu có liên quan được lấy từ cơ sở dữ liệu vectơ được sử dụng bởi Mô hình ngôn ngữ lớn (LLM). LLM xử lý các nguồn này để tạo ra câu trả lời mạch lạc và phù hợp với ngữ cảnh cho truy vấn của người dùng.
-
5) Tạo câu trả lời cuối cùng: Câu trả lời cuối cùng được tạo ra và trình bày cho người dùng. Câu trả lời này được lấy từ các thông tin có liên quan nhất được trích xuất từ cơ sở dữ liệu vector và được xử lý bởi LLM.