Xây Dựng Hệ Thống Chatbot Hỗ Trợ Nghiên Cứu Tài Liệu

Tài liệu nghiên cứu Xây dựng hệ thống chatbot phục vụ nghiên cứu tài liệu, tổng hợp lý thuyết và thực hành, cung cấp kiến thức chuyên sâu về kỹ thuật.

Trường đại học

Đại học Đà Nẵng

Chuyên ngành

Công nghệ thông tin

Người đăng

Ẩn danh

Thể loại

đồ án tốt nghiệp

2024

66
7
0

Phí lưu trữ

30 Point

Mục lục chi tiết

LỜI NÓI ĐẦU

CAM ĐOAN

1. CHƯƠNG 1: Ngôn ngữ lập trình Python

1.1. Python

1.2. JavaScript

1.3. Langchain

1.4. ReactJS

1.5. FastAPI

1.6. OpenAI GPT

1.7. Embedding

1.8. LLM (Large Language Model)

1.9. Công cụ lập trình - Visual Studio Code

Tóm tắt

I. Tổng quan về hệ thống chatbot hỗ trợ nghiên cứu tài liệu đại học

Hệ thống chatbot hỗ trợ nghiên cứu tài liệu đại học đang trở thành một công cụ quan trọng trong việc tối ưu hóa quá trình tìm kiếm và xử lý thông tin. Với sự phát triển của công nghệ, việc xây dựng một hệ thống chatbot thông minh giúp sinh viên và giảng viên dễ dàng truy cập tài liệu học tập và nghiên cứu. Hệ thống này không chỉ giúp tiết kiệm thời gian mà còn nâng cao hiệu quả trong việc tìm kiếm thông tin cần thiết.

1.1. Lợi ích của việc sử dụng chatbot trong nghiên cứu tài liệu

Việc sử dụng chatbot hỗ trợ nghiên cứu giúp người dùng nhanh chóng tìm kiếm thông tin từ các tài liệu đã tải lên. Chatbot có khả năng trả lời các câu hỏi liên quan đến nội dung tài liệu, từ đó giúp người dùng tiết kiệm thời gian và nâng cao hiệu quả nghiên cứu.

1.2. Công nghệ nền tảng cho hệ thống chatbot

Hệ thống được xây dựng dựa trên các công nghệ tiên tiến như Python, JavaScript, và các framework như ReactJS, FastAPI. Những công nghệ này giúp đảm bảo hiệu suất và khả năng mở rộng của hệ thống, đồng thời tạo ra trải nghiệm người dùng tốt nhất.

II. Thách thức trong việc xây dựng hệ thống chatbot đại học

Mặc dù có nhiều lợi ích, việc xây dựng hệ thống chatbot đại học cũng gặp phải nhiều thách thức. Các vấn đề như khả năng hiểu ngôn ngữ tự nhiên, quản lý dữ liệu lớn và đảm bảo tính bảo mật thông tin là những yếu tố cần được xem xét kỹ lưỡng.

2.1. Khó khăn trong việc xử lý ngôn ngữ tự nhiên

Một trong những thách thức lớn nhất là khả năng xử lý ngôn ngữ tự nhiên của chatbot. Để chatbot có thể hiểu và phản hồi chính xác các câu hỏi từ người dùng, cần phải có các mô hình ngôn ngữ mạnh mẽ như LLM và các kỹ thuật nhúng văn bản.

2.2. Quản lý và bảo mật dữ liệu người dùng

Việc lưu trữ và quản lý dữ liệu người dùng là một vấn đề quan trọng. Hệ thống cần đảm bảo rằng thông tin cá nhân và tài liệu của người dùng được bảo mật và không bị rò rỉ ra ngoài.

III. Phương pháp xây dựng hệ thống chatbot hỗ trợ nghiên cứu tài liệu

Để xây dựng một hệ thống chatbot hỗ trợ nghiên cứu tài liệu, cần áp dụng các phương pháp và công nghệ hiện đại. Việc sử dụng các framework như Langchain và OpenAI giúp tối ưu hóa khả năng tương tác của chatbot với người dùng.

3.1. Sử dụng mô hình ngôn ngữ lớn LLM

Mô hình ngôn ngữ lớn (LLM) giúp chatbot hiểu và xử lý các câu hỏi phức tạp từ người dùng. Việc tích hợp LLM vào hệ thống giúp nâng cao khả năng tương tác và độ chính xác trong phản hồi.

3.2. Tích hợp các công nghệ web hiện đại

Sử dụng các công nghệ như ReactJS và FastAPI giúp xây dựng giao diện người dùng thân thiện và hiệu suất cao. Điều này không chỉ cải thiện trải nghiệm người dùng mà còn giúp hệ thống hoạt động mượt mà.

IV. Ứng dụng thực tiễn của hệ thống chatbot trong nghiên cứu tài liệu

Hệ thống chatbot hỗ trợ nghiên cứu tài liệu đã được áp dụng trong nhiều trường đại học và tổ chức giáo dục. Những ứng dụng này không chỉ giúp sinh viên dễ dàng tìm kiếm tài liệu mà còn hỗ trợ giảng viên trong việc quản lý thông tin.

4.1. Hỗ trợ sinh viên trong việc tìm kiếm tài liệu

Chatbot giúp sinh viên nhanh chóng tìm kiếm và truy cập tài liệu học tập. Điều này giúp họ tiết kiệm thời gian và nâng cao hiệu quả trong việc nghiên cứu.

4.2. Tăng cường khả năng tương tác giữa người dùng và hệ thống

Hệ thống chatbot cho phép người dùng tương tác một cách tự nhiên, giúp họ dễ dàng đặt câu hỏi và nhận được phản hồi nhanh chóng. Điều này tạo ra một môi trường học tập tích cực và hiệu quả.

V. Kết luận và hướng phát triển tương lai của hệ thống chatbot

Hệ thống chatbot hỗ trợ nghiên cứu tài liệu đang mở ra nhiều cơ hội mới trong lĩnh vực giáo dục. Với sự phát triển không ngừng của công nghệ, hệ thống này có thể được cải tiến và mở rộng để đáp ứng nhu cầu ngày càng cao của người dùng.

5.1. Tiềm năng phát triển của công nghệ chatbot

Công nghệ chatbot có tiềm năng phát triển mạnh mẽ trong tương lai. Việc cải tiến khả năng hiểu ngôn ngữ tự nhiên và tích hợp trí tuệ nhân tạo sẽ giúp chatbot ngày càng thông minh hơn.

5.2. Hướng đi mới cho nghiên cứu và ứng dụng chatbot

Nghiên cứu và phát triển các ứng dụng chatbot trong giáo dục sẽ tiếp tục được mở rộng. Các trường đại học có thể áp dụng công nghệ này để nâng cao chất lượng giảng dạy và học tập.

10/07/2025
Xây dựng hệ thống chatbot hỗ trợ nghiên cứu tài liệu

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

CHƯƠNG 1. Ngôn ngữ lập trình Python 1. Python Python là một ngôn ngữ lập trình bậc cao được tạo ra bởi Guido van Rossum và ra mắt lần đầu vào năm 1991. Được thiết kế với ưu điểm dễ đọc, dễ học và dễ nhớ, Python được sử dụng rộng rãi trong nhiều mục đích lập trình, đặc biệt là trong phát triển trí tuệ nhân tạo.

Ngôn ngữ này có cấu trúc sáng sủa, rõ ràng, thuận tiện cho người mới học lập trình và có khả năng viết mã với số lần gõ phím tối thiểu. Python là ngôn ngữ lập trình hoàn toàn tạo kiểu động và sử dụng cơ chế cấp phát bộ nhớ tự động, tương tự như Perl, Ruby, Scheme, Smalltalk, và Tcl. Được phát triển trong một dự án mã nguồn mở, Python được quản lý bởi tổ chức phi lợi nhuận Python Software Foundation. Ban đầu, Python được phát triển cho nền tảng Unix, nhưng sau đó đã mở rộng hỗ trợ cho nhiều hệ điều hành khác nhau từ MS-DOS đến Mac OS, OS/2, Windows, Linux và các hệ điều hành khác thuộc họ Unix.

Mặc dù có sự đóng góp của nhiều cá nhân, Guido van Rossum vẫn là tác giả chủ yếu và giữ vai trò quyết định chủ chốt trong hướng phát triển của Python. Python luôn đứng đầu trong danh sách các ngôn ngữ lập trình phổ biến nhất, và vào tháng 7 năm 2018, sau 30 năm công tác, Guido van Rossum đã từ chức lãnh đạo trong cộng đồng ngôn ngữ Python. JavaScript JavaScript là ngôn ngữ lập trình được nhà phát triển sử dụng để tạo trang web tương tác. Từ làm mới bảng tin trên trang mạng xã hội đến hiển thị hình ảnh động và bản đồ tương tác, các chức năng của JavaScript có thể cải thiện trải nghiệm người dùng của trang web.

Là ngôn ngữ kịch bản phía máy khách, JavaScript là một trong những công nghệ cốt lõi của World Wide Web. Ví dụ: khi duyệt internet, bất cứ khi nào bạn thấy quảng cáo quay vòng dạng hình ảnh, menu thả xuống nhấp để hiển thị Sinh viên thực hiện: Nguyễn Thị Như Ý Người hướng dẫn: TS. Hoàng Thị Mỹ Lệ 3 Xây dựng hệ thống chatbot hỗ trợ nghiên cứu tài liệu hoặc màu sắc phần tử thay đổi động trên trang web cũng chính là lúc bạn thấy các hiệu ứng của JavaScript. Langchain LangChain là một framework được thiết kế để đơn giản hóa việc tạo các ứng dụng bằng mô hình ngôn ngữ lớn (LLM).

Là một khung tích hợp mô hình ngôn ngữ, các trường hợp sử dụng của LangChain phần lớn trùng lặp với các trường hợp sử dụng của mô hình ngôn ngữ nói chung, bao gồm phân tích và tóm tắt tài liệu , chatbot và phân tích mã. LangChain được ra mắt vào tháng 10 năm 2022 dưới dạng một dự án nguồn mở của Harrison Chase khi đang làm việc tại công ty khởi nghiệp về máy học Robust Intelligence. Dự án nhanh chóng thu hút được sự nổi tiếng, với những cải tiến từ hàng trăm người đóng góp trên GitHub, các cuộc thảo luận thịnh hành trên Twitter, hoạt động sôi nổi trên máy chủ Discord của dự án , nhiều hướng dẫn trên YouTube và các cuộc gặp gỡ ở San Francisco và London. ReactJS Một trong những đặc điểm nổi bật của ReactJS là cách tiếp cận khác biệt trong quản lý giao diện.

Thay vì thao tác trực tiếp với DOM, ReactJS sử dụng Virtual DOM, một bản sao của DOM được lưu trữ trong bộ nhớ, và chỉ cập nhật lại các phần cần thay đổi thay vì cập nhật toàn bộ DOM. Điều này giúp tối ưu hiệu suất và cải thiện trải nghiệm người dùng. ReactJS cũng hỗ trợ việc tạo ra các thành phần giao diện động và tái sử dụng. Thành phần React có thể được xây dựng độc lập và tái sử dụng trong nhiều phần của ứng dụng.

Điều này giúp tăng tính linh hoạt và dễ bảo trì của mã nguồn. ReactJS cũng có khả năng tích hợp với các thư viện hoặc framework khác như Redux, React Router để quản lý trạng thái ứng dụng và điều hướng định tuyến. Ngoài ra, ReactJS cũng hỗ trợ JSX, một cú pháp mở rộng của JavaScript, để viết mã HTML trong mã JavaScript, giúp dễ dàng xây dựng giao diện và duy trì khả năng đọc mã nguồn. Sinh viên thực hiện: Nguyễn Thị Như Ý Người hướng dẫn: TS.

Hoàng Thị Mỹ Lệ 4 Xây dựng hệ thống chatbot hỗ trợ nghiên cứu tài liệu 1. FastAPI FastAPI là một web framework hiện đại, hiệu năng cao để xây dựng web APIs với Python 3.8+ dựa trên tiêu chuẩn Python type hints. Những tính năng như: • Nhanh: Hiệu năng rất cao khi so sánh với NodeJS và Go. Một trong những Python framework nhanh nhất.

• Code nhanh: Tăng tốc độ phát triển tính năng từ 200% tới 300%. • Ít lỗi hơn: Giảm khoảng 40% những lỗi phát sinh bởi con người (nhà phát triển). • Trực giác tốt hơn: Được các trình soạn thảo hỗ tuyệt vời. Ít thời gian gỡ lỗi.

• Dễ dàng: Được thiết kế để dễ dàng học và sử dụng. Ít thời gian đọc tài liệu. • Ngắn: Tối thiểu code bị trùng lặp. Nhiều tính năng được tích hợp khi định nghĩa tham số.

• Tăng tốc: Có được sản phẩm cùng với tài liệu (được tự động tạo) có thể tương tác. • Được dựa trên các tiêu chuẩn: Dựa trên (và hoàn toàn tương thích với) các tiêu chuẩn mở cho APIs : OpenAPI (trước đó được biết đến là Swagger) và JSON Schema 1. OpenAI GPT GPT (Generative Pre-trained Transformer) là một trong những framework đáng chú ý, được phát triển dựa trên kiến trúc Transformer. Kiến trúc Transformer được giới thiệu bởi Vaswani et al.

năm 2017, nhanh chóng trở thành tiêu chuẩn trong xử lý ngôn ngữ tự nhiên và nhiều ứng dụng khác của trí tuệ nhân tạo. Một đặc điểm quan trọng của GPT là khả năng pre-training, tức là mô hình được huấn luyện trước đó trên một lượng lớn dữ liệu mà không cần thông tin cụ thể về nhiệm vụ cụ thể. Điều này giúp GPT tự động học được cấu trúc và thông tin từ dữ liệu, làm cho nó trở nên linh hoạt và có khả năng thích ứng cao với nhiều loại nhiệm vụ khác nhau. Sinh viên thực hiện: Nguyễn Thị Như Ý Người hướng dẫn: TS.

Hoàng Thị Mỹ Lệ 5 Xây dựng hệ thống chatbot hỗ trợ nghiên cứu tài liệu OpenAI cung cấp API (Application Programming Interface) cho GPT, cho phép nhà phát triển tích hợp và sử dụng khả năng xử lý ngôn ngữ tự nhiên mạnh mẽ này trong các ứng dụng của mình. Điều này mở ra nhiều cơ hội sáng tạo trong việc xây dựng ứng dụng chatbot, tạo văn bản sáng tạo, dịch ngôn ngữ tự nhiên, và nhiều ứng dụng khác trong lĩnh vực trí tuệ nhân tạo. Embedding Embedding tạo ra một biểu diễn vector của một đoạn văn bản. Điều này hữu ích vì nó có nghĩa là chúng ta có thể nghĩ về văn bản trong không gian vector, và thực hiện các công việc như tìm kiếm ngữ nghĩa nơi chúng ta tìm kiếm các đoạn văn bản tương tự nhất trong không gian vector.

Lớp Embedding cơ bản trong LangChain tiếp xúc với hai phương thức: một cho việc nhúng tài liệu và một cho việc nhúng một truy vấn. Phương thức đầu tiên nhận đầu vào là nhiều đoạn văn bản, trong khi phương thức thứ hai nhận một đoạn văn bản duy nhất. Lý do để có hai phương thức riêng biệt là vì một số nhà cung cấp nhúng có các phương thức nhúng khác nhau cho tài liệu (để được tìm kiếm) so với truy vấn (chính truy vấn tìm kiếm). LLM (Large Language Model) Mô hình ngôn ngữ lớn (LLM) là thành phần cốt lõi của LangChain.

LangChain không phục vụ LLM của riêng mình mà cung cấp giao diện tiêu chuẩn để tương tác với nhiều LLM khác nhau. Cụ thể, giao diện này là giao diện lấy đầu vào là một chuỗi và trả về một chuỗi. Có rất nhiều nhà cung cấp LLM (OpenAI, Cohere, Hugging Face, v.) - LLM được thiết kế để cung cấp giao diện chuẩn cho tất cả các nhà cung cấp đó. Công cụ lập trình - Visual Studio Code Phần mềm Visual Studio Code là một giải pháp IDE JavaScript chuyên nghiệp hỗ trợ các tính năng tiên tiến cho ngôn ngữ lập trình JavaScript, HTML và CSS, cung cấp những trải nghiệm hoàn thiện để lập trình và phát triển web.

Sinh viên thực hiện: Nguyễn Thị Như Ý Người hướng dẫn: TS. Hoàng Thị Mỹ Lệ 6 Xây dựng hệ thống chatbot hỗ trợ nghiên cứu tài liệu Phần mềm WebStorm cung cấp một trình biên tập mã thông minh am hiểu sâu sắc cấu trúc của mã được viết bằng JavaScript, HTML hay CSS. Visual Studio Code cũng là một công cụ tuyệt vời cho việc phát triển các ứng dụng Node. Cùng với các công cụ tích hợp để kiểm tra, gỡ lỗi và phân tích mã và hội nhập với VCS khác nhau, Visual Studio Code là một công cụ cần thiết cho phát triển web mạnh mẽ và hiệu quả.

Visual Studio Code có tính năng công nghệ web tiên tiến, giúp tạo ra mã số chất lượng cao hơn, có thể duy trì được với các công cụ như hoàn thành mã, tái cấu trúc, định dạng mã, chống lỗi on-the-fly, và nhiều hơn nữa. Phần mềm Visual Studio Code cũng rất tuyệt vời cho việc phát triển các ứng dụng Node.js nhờ một trình gỡ lỗi tích hợp và đặc trưng Node.js hỗ trợ mã hóa. Hoàn thành với các công cụ tích hợp để kiểm tra, gỡ rối và phân tích mã và tích hợp với nhiều VCS khác nhau, Visual Studio Code là một công cụ thiết yếu cho sự phát triển web hiệu quả và mạnh mẽ. Hệ quản trị cơ sở dữ liệu MySQL là hệ quản trị cơ sở dữ liệu tự do nguồn mở phổ biến nhất thế giới và được các nhà phát triển rất ưa chuộng trong quá trình phát triển ứng dụng.

Vì MySQL là cơ sở dữ liệu tốc độ cao, ổn định và dễ sử dụng, có tính khả chuyển, hoạt động trên nhiều hệ điều hành cung cấp một hệ thống lớn các hàm tiện ích rất mạnh. Với tốc độ và tính bảo mật cao, MySQL rất thích hợp cho các ứng dụng có truy cập CSDL trên internet. MySQL miễn phí hoàn toàn cho nên bạn có thể tải về MySQL từ trang chủ. Nó có nhiều phiên bản cho các hệ điều hành khác nhau: phiên bản Win32 cho các hệ điều hành dòng Windows, Linux, Mac OS X, Unix, FreeBSD, NetBSD, SGI Irix, Solaris, SunOS,… MySQL là một trong những ví dụ rất cơ bản về Hệ Quản trị Cơ sở dữ liệu quan hệ sử dụng Ngôn ngữ truy vấn có cấu trúc (SQL) Sinh viên thực hiện: Nguyễn Thị Như Ý Người hướng dẫn: TS.

Hoàng Thị Mỹ Lệ 7 Xây dựng hệ thống chatbot hỗ trợ nghiên cứu tài liệu CHƯƠNG 2. PHÂN TÍCH THIẾT KẾ HỆ THỐNG 2.

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 Chatbot Hỗ Trợ Nghiên Cứu Tài Liệu Đại Học trình bày một giải pháp công nghệ tiên tiến nhằm hỗ trợ sinh viên và giảng viên trong việc tìm kiếm và nghiên cứu tài liệu học tập. Hệ thống chatbot này không chỉ giúp tiết kiệm thời gian mà còn nâng cao hiệu quả trong việc truy cập thông tin, từ đó cải thiện chất lượng học tập và nghiên cứu.

Độc giả có thể tìm hiểu thêm về các ứng dụng công nghệ trong giáo dục qua các tài liệu liên quan như quản lý ứng dụng công nghệ thông tin trong dạy học các môn khoa học tự nhiên, hay ứng dụng sơ đồ tư duy trong dạy học chủ đề tam giác. Những tài liệu này sẽ cung cấp thêm góc nhìn và kiến thức bổ ích cho những ai quan tâm đến việc ứng dụng công nghệ trong giáo dục.