Các mô hình ngôn ngữ lớn (LLM) rất phổ biến trong thế giới phần mềm ngày nay. họ giới thiệu các bài viết mới, bài đăng blog, khóa học và mô hình từ các công ty hàng đầu trong ngành của chúng tôi, chẳng hạn như Meta, Huggingface, Microsoft, v.v., đòi hỏi chúng ta phải theo dõi chặt chẽ các công nghệ mới. Chúng tôi đã quyết định viết một số bài viết ngắn, thông tin để giới thiệu các chủ đề này và cập nhật về công nghệ mới nhất. chủ đề đầu tiên chúng tôi sẽ đề cập sẽ là RAG (Retrieval-Augmented Generation). Chúng tôi sẽ tạo ra một loạt các bài viết về chủ đề chúng tôi đã xác định, với ba bài viết khác nhau hữu ích và bổ sung cho nhau. trong bài viết này, chúng tôi bắt đầu loạt bài của chúng tôi với định nghĩa và thông tin cơ bản về các mô hình RAG. Các mô hình ngôn ngữ lớn đã đi vào mọi khía cạnh của cuộc sống của chúng ta. Chúng ta có thể nói rằng họ đã cách mạng hóa lĩnh vực này. Tuy nhiên, họ không phải là một công cụ liền mạch như chúng ta muốn gọi chúng. Nó cũng có một nhược điểm lớn: Nó trung thành với đào tạo của nó. Nó vẫn trung thành với dữ liệu mà nó đã được đào tạo. Họ không thể lệch khỏi điều này. Một mô hình đã hoàn thành đào tạo vào tháng 11 năm 2022 sẽ không thể làm chủ tin tức, luật pháp, phát triển công nghệ, v.v., xuất hiện vào tháng 1 năm 2023. Ví dụ, một mô hình LLM đã hoàn thành đào tạo và đi vào dịch vụ vào năm 2021 không thể trả lời một câu hỏi về cuộc chiến Nga-Ukraine bắt đầu vào ngày 24 tháng 2 năm 2022. Điều này là bởi vì sự phát triển của nó đã được hoàn thành trước ngày đó. Tất nhiên, vấn đề này không còn chưa được giải quyết, và một sản phẩm mới, một hệ thống mới, đã được giới thiệu. Hệ thống RAG (Retrieval-Augmented Generation) xuất hiện để cung cấp cho bạn thông tin cập nhật bất cứ khi nào bạn cần nó. Trong phần còn lại của bài viết của chúng tôi, chúng ta hãy xem xét kỹ hơn cả hệ thống được tạo ra với mô hình LLM và hệ thống RAG, từng người một, để tìm hiểu chúng. Truy cập thông tin trong các mô hình LLM Nguyên tắc làm việc của mô hình ngôn ngữ lớn dựa trên dữ liệu được dạy trong quá trình đào tạo, nói cách khác, kiến thức tĩnh. Họ không có khả năng trích xuất dữ liệu bên ngoài thông qua bất kỳ phương tiện nào. Để đưa ra một ví dụ, hãy xem xét một đứa trẻ.Nếu chúng ta cắt đứt giao tiếp bên ngoài của đứa trẻ này và chỉ dạy cho chúng tiếng Anh, chúng ta sẽ không thể nghe được một từ Trung Quốc nào từ chúng. Điều này là do chúng tôi đã nuôi dạy một đứa trẻ thông thạo tiếng Anh, không phải tiếng Trung Quốc.Bằng cách cắt đứt kết nối của họ với thế giới bên ngoài, chúng tôi cũng đã hạn chế khả năng học hỏi từ các nguồn bên ngoài.Cũng giống như đứa trẻ này, các mô hình LLM cũng được truyền kiến thức cơ bản nhưng đóng cửa với dữ liệu bên ngoài. Một đặc điểm khác của các mô hình LLM là chúng là hộp đen. Những mô hình này không hoàn toàn nhận thức được lý do tại sao họ thực hiện các hoạt động mà họ thực hiện. Họ dựa vào tính toán của họ chỉ dựa trên các hoạt động toán học. Hỏi bất kỳ mô hình LLM nào, "Tại sao bạn đưa ra câu trả lời đó?" Bạn có thể đang đẩy anh ta quá khó khăn. Họ không trả lời câu hỏi thông qua lý luận hoặc nghiên cứu. Từ khóa ở đây là "tại sao?" Chúng ta cũng có thể coi đó là một lỗi trong các mô hình LLM. Để hiểu rõ hơn cấu trúc này, chúng ta hãy xem xét một ví dụ từ lĩnh vực chăm sóc sức khỏe. Khi một người dùng hỏi, "Tôi có đau ở mặt và mắt, và ngâm sau mũi liên tục. Tôi nên làm gì?", Mô hình LLM có thể trả lời, "Đau ở mặt và mắt của tôi, và ngâm sau mũi có thể là dấu hiệu của viêm mũi. Vui lòng tham khảo ý kiến bác sĩ. viêm mũi cấp tính được điều trị bằng kháng sinh. Ngoài thuốc, bạn có thể sử dụng thuốc xịt mũi như nước biển hoặc muối để làm dịu mũi." Mọi thứ dường như bình thường cho đến thời điểm này. Nhưng nếu chúng ta hỏi mô hình, "Tại sao bạn đưa ra câu trả lời đó?" sau câu trả lời này, mọi thứ trở nên phức tạp. Lý do mà mô hình cung cấp câu trả lời này là bởi vì các từ "cơn đau mặt" và "giọt mũi" thường xuất hiện cùng với từ "táo bón" trong dữ liệu đào tạo. Những mô hình này thích lưu trữ thông tin trong bộ nhớ của họ như là một mô hình thống kê. biểu thức toán học là quan trọng đối với các mô hình LLM. Bởi vì nó không thích lưu trữ thông tin trong bộ nhớ của nó dựa trên các nguồn, nó trả lời câu hỏi và thỏa mãn hầu hết mọi người ngay lập tức, nhưng khi những người có bản chất điều tra hơn hỏi mô hình, "Tại sao bạn đưa ra câu trả lời này?", mô hình không tạo ra bất kỳ câu trả lời giải thích nào. RAG: Kết hợp LLM với hệ thống thu hồi Các hệ thống RAG cung cấp đổi mới so với các hệ thống được xây dựng trên các mô hình LLM thuần túy. Một trong số đó là chúng làm việc với thông tin động, không phải thông tin tĩnh như các mô hình LLM. Nói cách khác, chúng cũng quét các nguồn bên ngoài mà không bị giới hạn trong dữ liệu mà chúng được đào tạo. "r" đầu tiên trong RAG có nghĩa là thu thập. vai trò của thành phần thu thập là thực hiện các hoạt động tìm kiếm. Các máy phát điện là thành phần chính thứ hai, và vai trò của nó là để tạo ra câu trả lời chính xác dựa trên dữ liệu thu hồi trả về. trong bài viết này, chúng tôi sẽ ngắn gọn chạm vào nguyên tắc hoạt động của RAG: thu thập quét thông tin từ các nguồn bên ngoài và thu thập tài liệu có liên quan đến câu hỏi của người dùng bằng cách phá vỡ chúng thành các mảnh nhỏ được gọi là "chunks." Nó vectorize những mảnh này và câu hỏi của người dùng, và sau đó tạo ra câu trả lời hiệu quả nhất bằng cách kiểm tra sự phù hợp giữa chúng. Nhiệm vụ tạo ra câu trả lời này được thực hiện bởi "Thế hệ." Chúng tôi sẽ thảo luận chi tiết trong bài viết tiếp theo trong loạt bài này. Những thành phần cơ bản tạo thành hệ thống RAG làm cho nó trở thành một cấu trúc mạnh mẽ hơn. Chúng ngăn chặn chúng bị mắc kẹt trong thông tin tĩnh như các mô hình LLM thuần túy. Hệ thống RAG cung cấp lợi thế đáng kể, đặc biệt là trong nhiều lĩnh vực đòi hỏi thông tin cập nhật. Ví dụ, bạn có thể muốn tạo ra một mô hình của bác sĩ trong lĩnh vực y tế. Bởi vì mô hình của bạn sẽ phục vụ một khu vực quan trọng, nó sẽ không có thông tin lỗi thời hoặc không đầy đủ. Thế giới y tế, giống như lĩnh vực CNTT, đang phát triển mỗi ngày, và các nghiên cứu mới đang được đưa ra. Do đó, mô hình của bạn dự kiến sẽ làm chủ ngay cả các nghiên cứu mới nhất. Nếu không, bạn có nguy cơ gây nguy hiểm cho cuộc sống con người với một mô hình gây hiểu lầm. Trong những trường hợp như vậy, các hệ thống được hỗ trợ bởi RAG loại bỏ vấn đề thông tin lỗi thời bằng cách kết nối với các cơ sở dữ liệu bên ngoài. Sự khác biệt cơ bản giữa các hệ thống RAG và các mô hình LLM là triết lý cốt lõi của RAG: "Không lưu trữ thông tin, truy cập vào nó khi bạn cần nó!" Trong khi các mô hình ngôn ngữ lớn thuần túy lưu trữ thông tin trong bộ nhớ của họ và tạo ra câu trả lời sau khi được đào tạo, các hệ thống RAG truy cập thông tin bằng cách tìm kiếm và quét bên ngoài bất cứ khi nào họ cần nó, phù hợp với triết lý của họ. Giống như một người tìm kiếm trên internet, điều này vượt qua một trong những nhược điểm đáng kể nhất của các mô hình LLM thuần túy: sự phụ thuộc vào bộ nhớ của họ. Kịch bản : Người dùng: "Tỷ lệ lạm phát của Hoa Kỳ tháng 12 năm 2024 là gì?" LLM: "Theo dữ liệu tháng 12 năm 2022, nó là 6.5%." (Không có câu trả lời cập nhật) RAG : Retrieves December 2024 data from a reliable source or database (World Bank, Trading Economics, etc.). LLM sử dụng dữ liệu này và trả lời, "Theo Kinh tế Thương mại, lạm phát ở Hoa Kỳ cho tháng 12 năm 2024 được công bố là 2,9%". Scenario: User: "What is the United States' December 2024 inflation rate?" LLM: "According to December 2022 data, it was 6.5%." (Not an up-to-date answer) RAG: Lấy dữ liệu tháng 12 năm 2024 từ một nguồn hoặc cơ sở dữ liệu đáng tin cậy (Trung Quốc, Kinh tế Thương mại, v.v.). LLM sử dụng dữ liệu này và trả lời, "Theo Kinh tế Thương mại, lạm phát ở Hoa Kỳ cho tháng 12 năm 2024 được công bố là 2,9%". Chúng ta hãy so sánh ngắn gọn những gì chúng ta đã thảo luận cho đến nay và trình bày nó trong bảng dưới đây. Features LLM (static model) RAG (retrieval-augmented generation) Information Limited to training data Can pull real-time information from external sources Current Level Low High Transparency The source of the decision cannot be disclosed (black box) The source can be cited Thông tin Giới hạn dữ liệu đào tạo Có thể thu thập thông tin thời gian thực từ các nguồn bên ngoài Mức độ hiện tại thấp cao minh bạch Nguồn gốc quyết định không thể được tiết lộ (hộp đen) Nguồn có thể được trích dẫn Tóm lại, để tóm tắt ngắn gọn, trong khi các mô hình LLM được giới hạn trong dữ liệu mà họ được đào tạo, các hệ thống RAG không chỉ được xây dựng trên một mô hình LLM cụ thể và có kiến thức cơ bản, mà còn có khả năng rút ra thông tin thời gian thực từ các nguồn bên ngoài. Lợi thế này đảm bảo rằng nó luôn cập nhật. Điều này kết thúc bài viết đầu tiên trong loạt bài của chúng tôi. Trong bài viết tiếp theo, chúng tôi sẽ đi sâu vào các khía cạnh kỹ thuật hơn. Đối với những người bạn muốn truy cập hoặc kiểm tra thực tiễn của công việc này, họ có thể tìm thấy các liên kết đến repos có liên quan tôi đã tạo với Python và các thư viện liên quan trong tài khoản GitHub của tôi ở cuối bài viết. Mong được gặp các bạn trong bài viết tiếp theo của series này. Thảo luận YURDUSEVEN Đọc thêm “Chúng tôi cũng muốn công nhận sự đóng góp cơ bản của bài báo RAG 2020 của Facebook AI, trong đó thông báo đáng kể về quan điểm của bài viết này.” Đánh giá GitHub Dự án RAG Chatbot Dự án RAG Chatbot