Xây Dựng Hệ Thống Trả Lời Câu Hỏi Dựa Trên Mô Hình Ngôn Ngữ Lớn

Khám phá cách xây dựng hệ thống trả lời câu hỏi hiệu quả dựa trên mô hình ngôn ngữ lớn, nâng cao trải nghiệm người dùng và tối ưu hóa thông tin.

Chuyên ngành

Công Nghệ Thông Tin

Người đăng

Ẩn danh

Thể loại

Khóa Luận Tốt Nghiệp

2024

77
3
0

Phí lưu trữ

30 Point

Mục lục chi tiết

LỜI CẢM ƠN

ĐỀ CƯƠNG KHÓA LUẬN TỐT NGHIỆP

1. PHẦN MỞ ĐẦU

1.1. Tính cấp thiết của đề tài

1.2. Mục tiêu của đề tài

1.3. Phân tích các công trình nghiên cứu

1.4. Kết quả dự kiến đạt được

1.5. Đối tượng và phạm vi nghiên cứu

PHẦN NỘI DUNG

2. CHƯƠNG 1: MÔ HÌNH NGÔN NGỮ LỚN

2.1. MÔ HÌNH NGÔN NGỮ LỚN

2.2. KIẾN TRÚC TRANSFORMER

2.2.1. Multi-Head Attention

2.2.2. Feed-Forward Network

2.3. SỰ PHÁT TRIỂN CỦA MÔ HÌNH NGÔN NGỮ

2.3.1. Phân loại mô hình ngôn ngữ

2.3.2. Sự phát triển của mô hình ngôn ngữ lớn

2.3.3. Số lượng tham số của các mô hình ngôn ngữ lớn

2.4. Decoder-only với GPT (Generative pre-trained Transformer)

3. CHƯƠNG 2: TỔNG QUAN HỆ THỐNG TRẢ LỜI CÂU HỎI DỰA TRÊN MÔ HÌNH NGÔN NGỮ LỚN

3.1. KỸ THUẬT RAG (RETRIEVAL AUGMENTED GENERATION)

3.2. KỸ THUẬT ĐÁNH GIÁ HỆ THỐNG TRẢ LỜI CÂU HỎI

4. CHƯƠNG 3: XÂY DỰNG HỆ THỐNG TRẢ LỜI CÂU HỎI HỖ TRỢ NGƯỜI DÙNG LĨNH VỰC PHÁP LUẬT VIỆT NAM

4.1. XÂY DỰNG BỘ DỮ LIỆU PHÁP LUẬT

4.2. XÂY DỰNG HỆ THỐNG TRẢ LỜI CÂU HỎI VỚI RAG

4.2.1. Biến đổi và lưu trữ dữ liệu

5. CHƯƠNG 4: XÂY DỰNG WEBSITE HIỆN THỰC HÓA HỆ THỐNG TRẢ LỜI CÂU HỎI

5.1. PHÂN TÍCH YÊU CẦU VÀ THIẾT KẾ CƠ SỞ DỮ LIỆU

5.2. CÁC CÔNG NGHỆ SỬ DỤNG

5.3. XÂY DỰNG WEBSITE

5.4. MÔ TẢ GIAO DIỆN VÀ DEMO KẾT QUẢ

5.4.1. Mô tả giao diện

5.4.2. Demo kết quả

PHẦN KẾT LUẬN

Kết quả đạt được. Kết quả đạt được

Nhược điểm của đề tài. Nhược điểm của đề tài

Hướng phát triển của đề tài. Hướng phát triển của đề tài

DANH MỤC TÀI LIỆU THAM KHẢO

Tóm tắt

I. Tổng quan về Xây Dựng Hệ Thống Trả Lời Câu Hỏi Dựa Trên Mô Hình Ngôn Ngữ Lớn

Hệ thống trả lời câu hỏi dựa trên mô hình ngôn ngữ lớn (LLM) đang trở thành một công cụ quan trọng trong việc tương tác giữa con người và máy tính. Các mô hình này sử dụng công nghệ trí tuệ nhân tạo để hiểu và phản hồi các câu hỏi từ người dùng một cách tự nhiên. Việc phát triển hệ thống này không chỉ giúp nâng cao trải nghiệm người dùng mà còn mở ra nhiều cơ hội trong các lĩnh vực như giáo dục, pháp luật và dịch vụ khách hàng.

1.1. Mô hình ngôn ngữ lớn là gì

Mô hình ngôn ngữ lớn (LLM) là các hệ thống được huấn luyện trên tập dữ liệu khổng lồ, cho phép chúng hiểu và tạo ra ngôn ngữ tự nhiên. Chúng sử dụng kiến trúc Transformer để xử lý thông tin một cách hiệu quả.

1.2. Lợi ích của hệ thống trả lời câu hỏi

Hệ thống này giúp người dùng nhanh chóng tìm kiếm thông tin, tiết kiệm thời gian và nâng cao hiệu quả trong việc giải quyết các vấn đề phức tạp.

II. Thách thức trong việc xây dựng hệ thống trả lời câu hỏi

Mặc dù có nhiều lợi ích, việc xây dựng hệ thống trả lời câu hỏi dựa trên LLM cũng gặp phải nhiều thách thức. Một trong những vấn đề lớn nhất là khả năng hiểu ngữ nghĩa và ngữ cảnh của câu hỏi. Các mô hình hiện tại vẫn có thể gặp khó khăn trong việc xử lý các câu hỏi phức tạp hoặc không rõ ràng.

2.1. Vấn đề về dữ liệu

Nhiều mô hình LLM được huấn luyện trên dữ liệu không đầy đủ hoặc không chính xác, dẫn đến việc đưa ra các câu trả lời sai lệch.

2.2. Khả năng hiểu ngữ nghĩa

Các mô hình hiện tại đôi khi không thể hiểu được ngữ nghĩa sâu sắc của câu hỏi, đặc biệt là trong các lĩnh vực chuyên môn như pháp luật.

III. Phương pháp xây dựng hệ thống trả lời câu hỏi hiệu quả

Để xây dựng một hệ thống trả lời câu hỏi hiệu quả, cần áp dụng các phương pháp tiên tiến như Retrieval-Augmented Generation (RAG). Phương pháp này kết hợp khả năng của LLM với các nguồn dữ liệu bên ngoài để cải thiện độ chính xác của câu trả lời.

3.1. Kỹ thuật RAG

RAG cho phép hệ thống truy xuất thông tin từ các nguồn dữ liệu bên ngoài, giúp cải thiện độ chính xác và tính phù hợp của câu trả lời.

3.2. Tinh chỉnh mô hình

Quá trình tinh chỉnh mô hình giúp cải thiện khả năng của LLM trong việc xử lý các câu hỏi cụ thể và nâng cao độ chính xác của phản hồi.

IV. Ứng dụng thực tiễn của hệ thống trả lời câu hỏi

Hệ thống trả lời câu hỏi dựa trên LLM đã được áp dụng rộng rãi trong nhiều lĩnh vực, từ giáo dục đến dịch vụ khách hàng. Chúng giúp người dùng dễ dàng tiếp cận thông tin và giải quyết các vấn đề phức tạp một cách nhanh chóng.

4.1. Ứng dụng trong giáo dục

Hệ thống này có thể hỗ trợ học sinh và sinh viên trong việc tìm kiếm thông tin và giải đáp thắc mắc về bài học.

4.2. Ứng dụng trong pháp luật

Hệ thống giúp người dùng tra cứu thông tin pháp luật một cách nhanh chóng và chính xác, nâng cao hiệu quả trong việc giải quyết các vấn đề pháp lý.

V. Kết luận và tương lai của hệ thống trả lời câu hỏi

Hệ thống trả lời câu hỏi dựa trên mô hình ngôn ngữ lớn đang phát triển mạnh mẽ và hứa hẹn sẽ mang lại nhiều giá trị cho người dùng. Tương lai của công nghệ này sẽ phụ thuộc vào khả năng cải thiện độ chính xác và khả năng hiểu ngữ nghĩa của các mô hình.

5.1. Hướng phát triển

Cần tiếp tục nghiên cứu và phát triển các mô hình mới để cải thiện khả năng hiểu ngữ nghĩa và ngữ cảnh của câu hỏi.

5.2. Tích hợp công nghệ mới

Việc tích hợp các công nghệ mới như học sâu và trí tuệ nhân tạo sẽ giúp nâng cao hiệu quả của hệ thống trả lời câu hỏi.

10/07/2025
Xây dựng hệ thống trả lời câu hỏi dựa trên mô hình ngôn ngữ lớn

Trích đoạn nội dung tài liệu

CHƯƠNG 1: MÔ HÌNH NGÔN NGỮ LỚN 1.1 MÔ HÌNH NGÔN NGỮ LỚN Mô hình ngôn ngữ là một mô hình phân phối xác suất trên chuỗi các từ (token). Giả sử, chúng tôi có từ điển (𝑉) chứa toàn bộ các token. Mô hình ngôn ngữ 𝑝 sẽ gán mỗi chuỗi của các token (𝑥1 , 𝑥2 , … 𝑥𝐿 ) thuộc 𝑉 một xác suất (0, .1) Xác suất cho chúng ta biết một cách trực quan mức độ tốt (khả năng xuất hiện trong văn bản) của một chuỗi các token. Tuy nhiên, khả năng gán xác suất một cách hợp lý cho tất cả các chuỗi đòi hỏi các khả năng về ngôn ngữ và kiến thức thế giới.

Mô hình ngôn ngữ 𝑝 có thể phân phối xác suất như sau: 𝑃(𝑡ℎ𝑒, 𝑐𝑎𝑡, 𝑎𝑡𝑒, 𝑡ℎ𝑒, 𝑚𝑜𝑢𝑠𝑒) = 0.002 Từ ví dụ trên, ta có thể thấy được rằng, một mô hình ngôn ngữ hoạt động tốt thì phải gán xác suất rất thấp cho câu “the mouse ate the cat” vì nó không hợp lý về ngữ nghĩa, hoặc câu “the the cat ate mouse” vì nó không hợp lý về ngữ pháp và phải gán xác suất cao cho câu “the cat ate the mouse” vì nó đúng cả về ngữ nghĩa lẫn ngữ pháp. Mô hình ngôn ngữ lớn (LLM) thực chất là một mô hình ngữ được huấn luyện trên các tập dữ liệu lớn, bao gồm hàng trăm/ngàn tỷ token từ các văn bản khác nhau. Quá trình huấn luyện này giúp cho LLM có được khả năng hiểu và tạo ra ngôn ngữ tự nhiên một cách chính xác. Hiện nay, các mô hình ngôn ngữ lớn được huấn luyện dựa trên kiến trúc Transformer thay vì các mô hình RNN và LSTM.

Trước khi kiến trúc Transformer ra đời, RNN và LSTM là hai phương pháp tiên tiến nhất trong việc mô hình hóa chuỗi và giải quyết các GVHD. Ths Quách Đình Hoàng 4 vấn đề như mô hình ngôn ngữ, chúng vẫn có nhược điểm là phụ thuộc vào tính tuần tự trong tính toán, dẫn đến khả năng song song hóa hạn chế và hiệu suất huấn luyện không cao. Mặc dù đã có một số công trình nghiên cứu cố gắng cải thiện hiệu suất tính toán thông qua các kỹ thuật phân rã và tính toán có điều kiện, nhưng hạn chế cơ bản về tính tuần tự vẫn tồn tại. Kiến trúc Transformer đã giải quyết được vấn đề này với cơ chế Attention.

Vào năm 2017, các tác giả của bài báo “Attention is all you need” đã chỉ ra rằng kiến trúc Transformer đã loại bỏ tính tuần tự và hoàn toàn dựa vào cơ chế Attention để mô tả được mối quan hệ giữa các token trong một chuỗi. Phần bên dưới chúng tôi sẽ giải thích sâu hơn về kiến trúc Transformer.2 KIẾN TRÚC TRANSFORMER Kiến trúc Transformer là mô hình chuỗi chịu trách nhiệm cho sự phát triển của các mô hình ngôn ngữ lớn hiện nay. Hình ảnh trực quan hóa của kiến trúc Transformer. Bao gồm hai khối Encoder và Decoder, được hiển thị ở nửa trái và nửa phải [14] Chú ý rằng, chúng tôi chỉ tập trung giải thích tác dụng của các khối Transformer trong kiến trúc Transformer chứ không đi sâu chi tiết vào giải thích nguyên lý hoạt động của kiến trúc Transformer với hai khối Encoder-Decoder (hình 1) bởi vì trong phần tiếp GVHD.

Ths Quách Đình Hoàng 5 theo mô hình ngôn ngữ mà chúng tôi dùng để xây dựng hệ thống trả lời câu hỏi chỉ sử dụng một khối Decoder của kiến trúc Transformer. Đầu tiên, khối Transformer nhận vào chuỗi các token, mỗi token được biến đổi dưới dạng Embedding vector và thêm thông tin mã hóa vị trí (Positional Encoding). Sau đó, trong mỗi khối Transformer, một loạt các thao tác được thực hiện thông qua cơ chế Attention và các phép biến đổi sử dụng mạng nơ-ron truyền thẳng (Feed-Forward Network - FFN). Các lớp nối dư (Residual Connection) và chuẩn hóa lớp (Layer Normalization) được thêm vào sau mỗi bước (Attention, FFN) để cải thiện hiệu quả học tập và tính ổn định của mô hình.

Cuối cùng, chuỗi các vector đầu ra của khối Transformer được đưa qua một lớp tuyến tính và softmax để cố gắng dự đoán token tiếp theo hoặc phân loại chuỗi. Mục tiêu của khối Transformer là làm giàu mỗi token trong chuỗi với càng nhiều thông tin ngữ cảnh càng tốt, điều này được thực hiện thông qua cơ chế Attention và FFN.1 Multi-Head Attention Attention là một cơ chế giúp cho mô hình tập trung vào các khía cạnh khác nhau của chuỗi dữ liệu đầu vào. Giả sử, chuỗi dữ liệu đầu vào được biểu diễn bằng ma trận 𝑋 (kích thước 𝑛 × 𝑑) với 𝑛 là số từ và 𝑑 là kích thước của embedding vector. , 𝑥𝑛 ]𝑇 Tiếp theo, ma trận X sẽ được đưa vào khối Multi-Head Attention để xử lý.

Ths Quách Đình Hoàng 6 Hình 2. (Bên trái) Scaled Dot-Product Attention. (Bên phải) Multi-Head Attention bao gồm các lớp Attention chạy song song. Đầu vào của mỗi khối Multi-Head Attention bao gồm ba loại vector: query vector, key vector và value vector.

Các vector này được xây dựng từ ma trận 𝑋 và các ma trận trọng số 𝑊𝑞 , 𝑊𝑘 , 𝑊𝑣 (các ma trận trọng số này được khởi tạo ngẫu nhiên với kích thước lần lượt là 𝑑 × 𝑑𝑞 , 𝑑 × 𝑑𝑘 , 𝑑 × 𝑑𝑣 và sẽ được cập nhật trong quá trình huấn luyện). - Query vector (𝑄): đại diện cho token hiện tại mà mô hình đang xem xét, chứa thông tin về những gì mà chúng ta đang tìm kiếm trong chuỗi. 𝑊𝑞 𝑑 ] 𝑘 - Key vector (𝐾): được tạo ra từ tất cả các token trong chuỗi đầu vào, mỗi token có một vector key riêng biệt. 𝑊𝑘 𝑑 ] 𝑘 - Value vector (𝑉): tương tự như vector key, được tạo ra từ tất cả các token trong chuỗi và chứa thông thông tin thực tế mà chúng ta quan tâm.

𝑊𝑣 𝑑 ] 𝑣 Tiếp theo, ba vector 𝑄, 𝐾, 𝑉 được đưa vào các lớp Scaled Dot-Product Attention để xử lý song song. Ý tưởng chính của cơ chế Scaled Dot-Product Attention là sử dụng một query vector duy nhất để “giao tiếp” với tất cả các key vector trong chuỗi. Cụ thể, query vector hỏi GVHD. Ths Quách Đình Hoàng 7 từ key vector rằng “Bạn có liên quan đến tôi không? Nếu có, mức độ liên quan là bao nhiêu?”.

Quá trình Scaled Dot-Product Attention sẽ được thực hiện theo các bước sau: 1. Sử dụng tích vô hướng (dot-product) để tính toán trọng số Attention giữa query vector và key vector: 𝑠𝑐𝑜𝑟𝑒𝑠 = 𝑄𝐾 𝑇 Để tránh vấn đề gradient bị triệt tiêu do trọng số quá lớn, ma trận trọng số Attention được chia tỷ lệ bởi √𝑑𝑘 để điều chỉnh giá trị. Tiếp theo, nó được đưa qua Mask layer, để biến đổi các phần không cần thiết thành vô cực. Sau đó, áp dụng hàm softmax để chuẩn hóa các trọng số Attention, đảm bảo chúng nằm trong khoảng (0,1).

Kết quả cuối cùng, ma trận trọng số Attention đã chuẩn hóa được nhân với ma trận 𝑉 để thu được ma trận giá trị đã được trọng số hóa. 𝑎𝑛𝑛 ] [𝑣𝑛 ] Kết quả của khối Multi-Head Attention đo lường sự quan trọng và liên quan của mỗi token so với mỗi token khác trong một chuỗi. Ngoài ra, trong kiến trúc Transformer có thể có hàng chục hoặc thậm chí hàng trăm khối Transformer. Do đó, thông qua mỗi khối trước đó chúng ta không chỉ so sánh một token với một token khác mà còn nhìn vào chuỗi và vị trí chính xác mà token nó bắt đầu.

Ths Quách Đình Hoàng 8 1.2 Feed-Forward Network Các khối FFN sử dụng thông tin từ giai đoạn Attention để cải thiện biểu diễn của mỗi phần tử trong chuỗi. Quá trình này được thực hiện thông qua hai lớp Dense (fully connected) với một hàm kích hoạt phi tuyến tính ở giữa, thường là hàm ReLU (Rectified Linear Unit). Giả sử, đầu vào của khối FFN là 𝑋, đầu ra của bước tính toán trong khối FFN có thể được mô tả như sau: a. Lớp Dense đầu tiên 𝑋 ′ = 𝑅𝑒𝐿𝑈(𝑋𝑊1 + 𝑏1 ) Trong đó: - 𝑋 là kết quả được lấy từ bước Multi-Head Attention.

- W1 là ma trận trọng số có kích thước (dmodel , dff ). - b1 là vector bù có kích thước (dff ). Lớp Dense đầu tiên giúp mở rộng không gian biểu diễn của dữ liệu đầu vào. Nó biến đổi đầu vào từ không gian dmodel sang không gian ẩn lớn hơn, có kích thước là dff.

Hàm ReLU được sử dụng sau phép nhân và cộng bias. Hàm này giữ lại các giá trị dương và đặt các giá trị âm về 0, giúp mạng học được các biểu diễn phi tuyến tính. Lớp Dense thứ hai FFN(X) = 𝑋 ′ 𝑊2 + 𝑏2 Trong đó: - W2 là ma trận trọng số có kích thước (dff , dmodel ). - b2 là vector bù có kích thước (dmodel ).

Lớp Dense thứ hai thu nhỏ không gian biểu diễn trở lại kích thước ban đầu là dmodel. Điều này nhằm đảm bảo kích thước phù hợp để sử dụng Residual Connection, giúp gradient lan truyền tốt hơn và mô hình học hiệu quả hơn. Tới bước này thì gần như đã hoàn thiện. Về nguyên tắc, chúng ta có thể chỉ cần lấy mô hình chuỗi FeedForward ∘ SelfAttention và lặp lại 96 lần để làm GPT-3, nhưng mạng đó khó tối ưu (vì gradient bị triệt tiêu: đây là vấn đề khá phổ biến khi huấn luyện các mạng nơ ron sâu, khi gradient của hàm mất mát giảm xuống gần bằng 0 khi làn GVHD.

Ths Quách Đình Hoàng 9 truyền ngược qua các lớp. Điều này làm giảm tốc độ học và làm cho mạng khó huấn luyện).3 Kết nối dư (Residual Connection) và chuẩn hóa lớp (Layer Normalization) Kết nối dư và chuẩn hoá lớp được sử dụng sau khối Multi-Head Attention và FFN, nó đóng vai trò quan trọng trong việc ổn định quá trình huấn luyện và giúp mô hình học hiệu quả hơn. Chuẩn hóa lớp (Layer Normalization) Chuẩn hoá lớp nhằm mục đích chuẩn hóa các đầu vào của mỗi khối để có phân phối với giá trị trung bình bằng 0 và độ lệch chuẩn bằng 1. Điều này giúp tăng tốc độ huấn luyện và ổn định hóa mô hình.

Kết nối dư (Residual Connection) Kết nối dư giúp giảm vấn đề gradient bị triệt tiêu (vanishing gradients) trong các mạng sâu bằng cách cung cấp một con đường tắt cho gradient lan truyền ngược. Điều này cải thiện khả năng hội tụ của mô hình và cho phép các lớp học các biểu diễn khác nhau mà không phải lo lắng về việc làm mất thông tin gốc.3 SỰ PHÁT TRIỂN CỦA MÔ HÌNH NGÔN NGỮ 1.1 Phân loại mô hình ngôn ngữ Trong bài báo “Attention is all you need”, nhóm nghiên cứu từ Google đã giới thiệu kiến trúc Transformer gốc, sử dụng hai khối Encoder và Decoder. Ban đầu, mô hình được phát triển để giải quyết bài toán dịch tiếng Anh sang tiếng Đức và đem lại kết quả dịch rất ấn tượng.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ

Tài liệu có tiêu đề "Xây Dựng Hệ Thống Trả Lời Câu Hỏi Dựa Trên Mô Hình Ngôn Ngữ Lớn" cung cấp cái nhìn sâu sắc về việc phát triển các hệ thống tự động có khả năng trả lời câu hỏi dựa trên công nghệ mô hình ngôn ngữ lớn. Tài liệu này không chỉ giải thích các khái niệm cơ bản mà còn nêu bật những lợi ích mà hệ thống này mang lại, như khả năng cải thiện trải nghiệm người dùng và tối ưu hóa quy trình tìm kiếm thông tin. Độc giả sẽ tìm thấy những thông tin hữu ích về cách mà các mô hình ngôn ngữ có thể được áp dụng trong thực tế, từ đó mở rộng kiến thức và ứng dụng trong các lĩnh vực khác nhau.

Để tìm hiểu thêm về các ứng dụng công nghệ trong giáo dục và quản lý thông tin, bạn có thể tham khảo tài liệu "Luận văn thạc sĩ khoa học máy tính xây dựng hệ thống hỗ trợ học vụ đa ngôn ngữ trong tiếng việt và tiếng anh", nơi trình bày về hệ thống hỗ trợ học vụ đa ngôn ngữ. Ngoài ra, tài liệu "Luận văn thạc sĩ khoa học thông tin thư viện bộ máy tra cứu thông tin tự động hóa tại trung tâm thông tin thư viện trường đại học sư phạm hà nội" sẽ giúp bạn hiểu rõ hơn về tự động hóa trong việc tra cứu thông tin. Cuối cùng, tài liệu "Luận văn thạc sĩ hệ thống thông tin quản lý công nghệ điện toán đám mây trong môi trường đại học" sẽ cung cấp cái nhìn về quản lý công nghệ trong môi trường học thuật. Những tài liệu này sẽ giúp bạn mở rộng kiến thức và khám phá thêm nhiều khía cạnh thú vị trong lĩnh vực công nghệ thông tin.