ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA CÔNG NGHỆ PHẦN MỀM
NGUYỄN NGỌC ĐĂNG
BẾ HẢI LONG
KHÓA LUẬN TỐT NGHIỆP
XÂY DỰNG CHATBOT TRỢ LÝ ẢO ĐA NỀN TẢNG
Building a Cross-platform Virtual Assistant Chatbot
KỸ SƯ NGÀNH CƠNG NGHỆ PHẦN MỀM
TP. HỒ CHÍ MINH, 2022
ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA CÔNG NGHỆ PHẦN MỀM
NGUYỄN NGỌC ĐĂNG - 18520557
BẾ HẢI LONG - 18520302
KHÓA LUẬN TỐT NGHIỆP
XÂY DỰNG CHATBOT TRỢ LÝ ẢO ĐA NỀN TẢNG
Building a Cross-platform Virtual Assistant Chatbot
KỸ SƯ NGÀNH CÔNG NGHỆ PHẦN MỀM
GIẢNG VIÊN HƯỚNG DẪN
THS TRẦN ANH DŨNG
TP. HỒ CHÍ MINH, 2022
THƠNG TIN HỘI ĐỒNG CHẤM KHĨA LUẬN TỐT NGHIỆP
Hội đồng chấm khóa luận tốt nghiệp, thành lập theo Quyết định số
…………………… ngày ………………….. của Hiệu trưởng Trường Đại học Công
nghệ Thông tin.
1. …………………………………………. – Chủ tịch.
2. …………………………………………. – Thư ký.
3. …………………………………………. – Ủy viên.
4. …………………………………………. – Ủy viên.
ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH
CỘNG HỊA XÃ HỘI CHỦ NGHĨA VIỆT NAM
TRƯỜNG ĐẠI HỌC
Độc Lập - Tự Do - Hạnh Phúc
CÔNG NGHỆ THÔNG TIN
TP. HCM, ngày …… tháng …… năm ……
NHẬN XÉT KHÓA LUẬN TỐT NGHIỆP
(CỦA CÁN BỘ HƯỚNG DẪN)
Tên khóa luận:
XÂY DỰNG CHATBOT TRỢ LÝ ẢO ĐA NỀN TẢNG
Cán bộ hướng dẫn:
Nhóm SV thực hiện:
Nguyễn Ngọc Đăng
18520557
Bế Hải Long
18520302
ThS. Trần Anh Dũng
Đánh giá Khóa luận
1. Về cuốn báo cáo:
Số trang
_______
Số chương
_______
Số bảng số liệu
_______
Số hình vẽ
_______
Số tài liệu tham khảo
_______
Sản phẩm
_______
Một số nhận xét về hình thức cuốn báo cáo:
...........................................................................................................................
...........................................................................................................................
2. Về nội dung nghiên cứu:
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
3. Về chương trình ứng dụng:
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
4. Về thái độ làm việc của sinh viên:
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
Đánh giá chung:
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
Điểm từng sinh viên:
Nguyễn Ngọc Đăng: ………/10
Bế Hải Long: ……/10
Người nhận xét
(Ký và ghi rõ họ tên)
TRẦN ANH DŨNG
ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH
CỘNG HỊA XÃ HỘI CHỦ NGHĨA VIỆT NAM
TRƯỜNG ĐẠI HỌC
Độc Lập - Tự Do - Hạnh Phúc
CÔNG NGHỆ THÔNG TIN
TP. HCM, ngày …… tháng …… năm ……
NHẬN XÉT KHÓA LUẬN TỐT NGHIỆP
(CỦA CÁN BỘ PHẢN BIỆN)
Tên khóa luận:
XÂY DỰNG CHATBOT TRỢ LÝ ẢO ĐA NỀN TẢNG
Nhóm SV thực hiện:
Cán bộ phản biện:
Nguyễn Ngọc Đăng
18520557
Bế Hải Long
18520302
TS. Nguyễn Trịnh Đơng
Đánh giá Khóa luận
1. Về cuốn báo cáo:
Số trang
_______
Số chương
_______
Số bảng số liệu
_______
Số hình vẽ
_______
Số tài liệu tham khảo
_______
Sản phẩm
_______
Một số nhận xét về hình thức cuốn báo cáo:
...........................................................................................................................
...........................................................................................................................
2. Về nội dung nghiên cứu:
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
3. Về chương trình ứng dụng:
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
4. Về thái độ làm việc của sinh viên:
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
Đánh giá chung:
...........................................................................................................................
...........................................................................................................................
...........................................................................................................................
Điểm từng sinh viên:
Nguyễn Ngọc Đăng: ………/10
Bế Hải Long: ……/10
Người nhận xét
(Ký và ghi rõ họ tên)
LỜI CẢM ƠN
Nhóm chúng em trân trọng gửi lời cảm ơn đến thầy Trần Anh Dũng đã tạo điều kiện
cho chúng em có cơ hội được thực hiện khóa luận tốt nghiệp.
Trong vòng 15 tuần, nhờ sự chỉ dẫn nhiệt tình của Thầy, chúng em đã tiếp thu được
những kiến thức quan trọng cùng những góp ý chân thành để có thể hồn thành khóa
luận một cách hồn chỉnh.
Cũng xin cảm ơn thầy cô và bạn bè trong Khoa Công nghệ Phần mềm đã nhiệt tình
hỗ trợ, tạo điều kiện cho nhóm em làm bài báo cáo này.
Mặc dù đã cố gắng hoàn thành báo cáo với tất cả nỗ lực song báo cáo của nhóm chúng
em chắc chắn khơng tránh khỏi những thiếu sót, chúng em rất mong nhận được sự
thơng cảm và góp ý chân thành từ các thầy cơ. Nhóm em xin chân thành cảm ơn.
Thành phố Hồ Chí Minh, ngày 7 tháng 6 năm 2022
Lớp SE505.M21
Nguyễn Ngọc Đăng, Bế Hải Long
MỤC LỤC
THƠNG TIN HỘI ĐỒNG CHẤM KHĨA LUẬN TỐT NGHIỆP ......................3
LỜI CẢM ƠN ..........................................................................................................10
MỤC LỤC ................................................................................................................11
DANH MỤC HÌNH .................................................................................................15
DANH MỤC BẢNG ................................................................................................19
DANH MỤC TỪ VIẾT TẮT..................................................................................22
TÓM TẮT KHÓA LUẬN ......................................................................................24
ĐỀ CƯƠNG CHI TIẾT ..........................................................................................26
Chương 1: MỞ ĐẦU ...............................................................................................34
1.1. Giới thiệu về đề tài..........................................................................................34
1.1.1. Chatbot là gì .............................................................................................34
1.1.2. Góc nhìn chung về nhu cầu tra cứu thông tin ..........................................35
1.1.3. Lý do lựa chọn đề tài ................................................................................36
1.2. Đối tượng nghiên cứu .....................................................................................36
1.3. Phạm vi nghiên cứu ........................................................................................37
1.4. Phương pháp nghiên cứu ................................................................................37
1.5. Nhiệm vụ của đề tài ........................................................................................38
Chương 2: TỔNG QUAN .......................................................................................40
2.1. Khảo sát hiện trạng .........................................................................................40
2.1.1. CleverBot – Chatbot trò chuyện nổi tiếng nhất thế giới ..........................42
2.1.2. Google – Nền tảng tra cứu thông tin lớn nhất thế giới.............................43
2.2. Nhận xét về hiện trạng ....................................................................................44
2.2.1. Các vấn đề còn tồn tại ..............................................................................44
2.2.2. Các vấn đề được tập trung trong đề tài ....................................................44
Chương 3: NGHIÊN CỨU LÝ THUYẾT .............................................................46
3.1. Giới thiệu về bài toán Chatbot ........................................................................46
3.2. Lý thuyết xây dựng Chatbot ...........................................................................48
3.2.1. Các hướng tiếp cận xây dựng Chatbot .....................................................48
3.2.2. Giải quyết các vấn đề phát sinh trong xây dựng Chatbot ........................60
3.3. Cấu trúc hệ thống Chatbot ..............................................................................65
3.4. Ứng dụng của Chatbot ....................................................................................69
3.4.1. Phép thử Turing ........................................................................................69
3.4.2. Ứng dụng của Chatbot trong thực tế ........................................................70
3.5. Sử dụng thư viện NLP.js vào tác vụ nhận diện ý niệm ..................................70
3.5.1. Giới thiệu thư viện NLP.js .......................................................................70
3.5.2. Các khái niệm sử dụng trong NLP.js .......................................................71
3.5.3. Thực hiện tác vụ nhận diện ý niệm ..........................................................75
3.6. Tinh chỉnh mơ hình PhoBERT vào tác vụ phân tích cảm xúc .......................76
3.6.1. Giới thiệu về mơ hình PhoBERT .............................................................76
3.6.2. Thực hiện tác vụ phân tích cảm xúc .........................................................77
3.7. Tinh chỉnh mơ hình BARTpho vào tác vụ cấu tạo ngơn ngữ tự nhiên...........78
3.7.1. Giới thiệu về mơ hình BARTpho .............................................................78
3.7.2. Thực hiện tác vụ cấu tạo ngôn ngữ tự nhiên ............................................79
3.8. Nghiên cứu tình huống: Một số ví dụ xử lý ngôn ngữ tự nhiên của Chatbot .79
Chương 4: CHATBOT TRỢ LÝ ẢO - YOURCHATSTARTER ......................87
4.1. Xác định yêu cầu hệ thống..............................................................................87
4.1.1. Sơ đồ ca sử dụng ......................................................................................87
4.1.2. Đặc tả ca sử dụng .....................................................................................92
4.2. Thiết kế kiến trúc hệ thống ...........................................................................129
4.3. Thiết kế mơ hình dữ liệu ...............................................................................133
4.3.1. Sơ đồ lớp ................................................................................................133
4.3.2. Đặc tả lớp dữ liệu ...................................................................................134
4.4. Thiết kế luồng xử lý ......................................................................................145
4.4.1. Luồng xử lý chức năng đăng nhập .........................................................145
4.4.2. Luồng xử lý chức năng đăng kí ..............................................................146
4.4.3. Luồng xử lý chức năng thu phí ..............................................................147
4.4.4. Luồng xử lý chức năng giao tiếp với Chatbot ........................................148
4.4.5. Luồng xử lý chức năng phát âm đoạn Chat............................................150
4.4.6. Luồng xử lý chức năng gửi thông báo Push ...........................................151
4.4.7. Luồng xử lý chức năng gửi thơng báo theo lịch trình ............................152
4.4.8. Luồng xử lý chức năng cập nhật thông tin người dùng .........................153
4.4.9. Luồng xử lý chức năng cập nhật thiết lập cá nhân .................................154
4.4.10. Luồng xử lý chức năng cập nhật cấp bậc người dùng ..........................155
4.5. Thiết kế các Module truy vấn thông tin ........................................................156
4.5.1. Truy vấn thông tin thời tiết.....................................................................156
4.5.2. Truy vấn thông tin tỉ giá tiền tệ ..............................................................157
4.5.3. Truy vấn thông tin dịch thuật .................................................................158
4.5.4. Truy vấn giá cổ phiếu .............................................................................159
4.5.5. Truy vấn thông tin dịch COVID-19 .......................................................160
4.5.6. Truy vấn thông tin từ Google Knowledge Graph ..................................161
4.6. Thiết kế giao diện .........................................................................................162
4.6.1. Thiết kế giao diện trên nền tảng Web ....................................................164
4.6.2. Thiết kế giao diện trên nền tảng di động ................................................186
4.7. Thực hiện tác vụ nhận diện ý niệm ...............................................................204
4.7.1. Phương thức thực hiện ...........................................................................204
4.7.2. Kết quả thực hiện ...................................................................................206
4.8. Thực hiện tác vụ nhận diện thực thể đặt tên .................................................207
4.8.1. Phương thức thực hiện ...........................................................................207
4.8.2. Kết quả thực hiện ...................................................................................208
4.9. Thực hiện tác vụ phân tích cảm xúc .............................................................209
4.9.1. Phương thức thực hiện ...........................................................................209
4.9.2. Kết quả thực hiện ...................................................................................212
4.10. Thực hiện tác vụ cấu tạo ngôn ngữ tự nhiên...............................................212
4.10.1. Phương thức thực hiện .........................................................................212
4.10.2. Kết quả thực hiện .................................................................................215
4.11. Giới thiệu hệ thống .....................................................................................215
4.12. Sơ lược chức năng hệ thống .......................................................................216
Chương 5: KẾT LUẬN .........................................................................................221
5.1. Đánh giá kết quả làm việc ............................................................................221
5.1.1. Thuận lợi ................................................................................................221
5.1.2. Khó khăn ................................................................................................221
5.2. Kết quả đạt được ...........................................................................................222
5.2.1. Ưu điểm ..................................................................................................222
5.2.2. Nhược điểm ............................................................................................222
5.3. Hướng phát triển ...........................................................................................223
TÀI LIỆU THAM KHẢO ....................................................................................224
PHỤ LỤC ...............................................................................................................227
Phụ lục 1. Danh mục công nghệ được sử dụng ...................................................227
Phụ lục 1.1. ECMAScript 6 ..............................................................................228
Phụ lục 1.2. Python 3........................................................................................229
Phụ lục 1.3. Node.js..........................................................................................229
Phụ lục 1.4. React .............................................................................................230
Phụ lục 1.5. MongoDB .....................................................................................230
Phụ lục 1.6. Flutter ...........................................................................................231
Phụ lục 1.7. Web API .......................................................................................231
Phụ lục 1.8. OneSignal API .............................................................................231
Phụ lục 1.9. Wikidata và SPARQL ..................................................................232
Phụ lục 1.10. VNCoreNLP ...............................................................................233
Phụ lục 1.11. Dự án Jupyter và Google Colab .................................................233
Phụ lục 2. Bảng phân chia công việc ...................................................................234
Phụ lục 3. Mẫu dữ liệu huấn luyện các mơ hình .................................................236
DANH MỤC HÌNH
Hình 2.1 Dữ liệu Google Trend cho cụm từ "chatbot" trong vịng 5 năm trở lại đây
...................................................................................................................................40
Hình 2.2 Một giao diện của CleverBot .....................................................................42
Hình 2.3 Giao diện tra cứu thơng tin của Google .....................................................43
Hình 3.1 Kiến trúc cơ bản của một hệ thống Chatbot ...............................................46
Hình 3.2 Ví dụ về bài tốn thấu hiểu ngơn ngữ tự nhiên ..........................................48
Hình 3.3 Ví dụ về bài tốn cấu tạo ngơn ngữ tự nhiên .............................................48
Hình 3.4 Đặc tả độ đo Levenshtein ...........................................................................49
Hình 3.5 Bảng minh họa thuật toán quy hoạch động của Wagner-Fischer (So sánh
xâu Integration và Intelligent) ...................................................................................50
Hình 3.6 Bảng minh họa thuật tốn Seller (Tìm kiếm xâu “think” trong xâu “i am
shrinky”) ....................................................................................................................51
Hình 3.7 Cấu trúc dữ liệu Trie để lưu trữ từ điển cho phép so sánh mờ...................52
Hình 3.8 Hình minh họa cho mạng nơ-ron truyền thẳng ..........................................56
Hình 3.9 Hình minh họa cấu trúc của mơ hình Transformer ....................................60
Hình 3.10 Cấu trúc đầy đủ của một Chatbot .............................................................67
Hình 4.1 Sơ đồ ca sử dụng hệ thống xác thực người dùng .......................................87
Hình 4.2 Sơ đồ ca sử dụng hệ thống Chatbot ...........................................................88
Hình 4.3 Sơ đồ hệ thống dịch vụ bổ trợ người dùng.................................................89
Hình 4.4 Sơ đồ ca sử dụng hệ thống quản lý nội dung .............................................90
Hình 4.5 Sơ đồ ca sử dụng hệ thống quản lý hóa đơn thanh tốn.............................90
Hình 4.6 Sơ đồ ca sử dụng hệ thống truy vấn thông tin............................................91
Hình 4.7 Sơ đồ ca sử dụng hệ thống quản lý thơng báo ...........................................91
Hình 4.8 Sơ đồ kiến trúc hệ thống ..........................................................................129
Hình 4.9 Sơ đồ lớp của hệ thống .............................................................................133
Hình 4.10 Sơ đồ luồng xử lý chức năng đăng nhập ................................................145
Hình 4.11 Sơ đồ luồng xử lý chức năng đăng ký ....................................................146
Hình 4.12 Sơ đồ luồng xử lý chức năng thu phí .....................................................147
Hình 4.13 Sơ đồ luồng xử lý cho việc giao tiếp với Chatbot (Trường hợp chung) 148
Hình 4.14 Sơ đồ luồng xử lý cho việc giao tiếp với Chatbot (Trường hợp cần tra cứu
thơng tin) .................................................................................................................149
Hình 4.15 Sơ đồ luồng xử lý chức năng phát âm đoạn Chat ..................................150
Hình 4.16 Sơ đồ luồng xử lý chức năng gửi thơng báo Push .................................151
Hình 4.17 Sơ đồ luồng xử lý chức năng gửi thơng báo theo lịch trình ...................152
Hình 4.18 Sơ đồ luồng xử lý chức năng cập nhật thông tin người dùng ................153
Hình 4.19 Sơ đồ luồng chức năng cập nhật thiết lập cá nhân .................................154
Hình 4.20 Sơ đồ luồng xử lý chức năng cập nhật cấp bậc người dùng ..................155
Hình 4.21 Sơ đồ luồng xử lý truy vấn thơng tin thời tiết ........................................156
Hình 4.22 Sơ đồ luồng xử lý truy vấn thơng tin tỉ giá ngoại tệ ..............................157
Hình 4.23 Sơ đồ luồng xử lý dịch thuật ..................................................................158
Hình 4.24 Sơ đồ luồng xử lý truy vấn giá cổ phiếu ................................................159
Hình 4.25 Sơ đồ luồng xử lý truy vấn thơng tin dịch COVID-19 ..........................160
Hình 4.26 Sơ đồ luồng xử lý truy vấn thơng tin từ Google Knowledge Graph ......161
Hình 4.27 Sơ đồ màn hình ......................................................................................162
Hình 4.28 Giao diện màn hình chính (Chưa đăng nhập) ........................................164
Hình 4.29 Giao diện màn hình chính (Đã đăng nhập) ............................................165
Hình 4.30 Giao diện màn hình đăng nhập ..............................................................166
Hình 4.31 Giao diện màn hình đăng ký ..................................................................167
Hình 4.32 Giao diện màn hình liệt kê giá dịch vụ ..................................................168
Hình 4.33 Giao diện màn hình giao tiếp với Chatbot .............................................169
Hình 4.34 Giao diện màn hình nhập thơng tin thanh tốn ......................................170
Hình 4.35 Giao diện màn hình danh sách bài viết ..................................................172
Hình 4.36 Giao diện màn hình chỉnh sử hồ sơ người dùng ....................................173
Hình 4.37 Giao diện màn hình thiết lập bảo mật người dùng .................................174
Hình 4.38 Giao diện màn hình thiết lập cá nhân người dùng .................................175
Hình 4.39 Giao diện màn hình dashboard quản trị hệ thống ..................................177
Hình 4.40 Giao diện màn hình quản lý người dùng ................................................178
Hình 4.41 Giao diện màn hình chỉnh sửa thơng tin người dùng .............................180
Hình 4.42 Giao diện màn hình quản lý dịch vụ hệ thống .......................................182
Hình 4.43 Giao diện màn hình quản lý bài viết ......................................................183
Hình 4.44 Giao diện màn hình chỉnh sửa bài viết ...................................................184
Hình 4.45 Giao diện màn hình Đăng nhập..............................................................186
Hình 4.46 Giao diện màn hình Đăng ký .................................................................188
Hình 4.47 Giao diện màn hình Khung chat ............................................................190
Hình 4.48 Giao diện màn hình khung chat (kèm bản đồ) .......................................190
Hình 4.49 Giao diện màn hình Danh sách bài viết .................................................192
Hình 4.50 Giao diện màn hình Thiết lập tài khoản .................................................194
Hình 4.51 Giao diện màn hình Chỉnh sửa thông tin người dùng ............................197
Hình 4.52 Giao diện màn hình Thiết lập âm thanh và thơng báo ...........................199
Hình 4.53 Giao diện màn hình Nâng cấp dịch vụ ...................................................201
Hình 4.54 Giao diện màn hình Thiết lập bảo mật ...................................................203
Hình 4.55 Sơ đồ quy trình thực hiện tác vụ nhận diện ý niệm ...............................206
Hình 4.56 Kết quả huấn luyện mơ hình nhận diện ý niệm .....................................207
Hình 4.57 Sơ đồ quy trình thực hiện tác vụ xác định thực thể đặt tên ....................208
Hình 4.58 Sơ đồ quy trình thực hiện tác vụ phân tích cảm xúc ..............................211
Hình 4.59 Sơ đồ quy trình thực hiện tác vụ cấu tạo ngơn ngữ tự nhiên .................214
Hình 4.60 Giao diện chính của Chatbot ..................................................................217
Hình 4.61 Màn hình quản lý người dùng giúp quản trị viên dễ dàng quản lý các tài
khoản trong hệ thống ...............................................................................................218
Hình 4.62 Màn hình quản lý cấp bậc người dùng ...................................................218
Hình 4.63 Các tính năng trong ứng dụng di động của Chatbot ..............................220
Hình 4.64 Ứng dụng di động cho phép người dùng tùy chỉnh diện mạo của ứng dụng
.................................................................................................................................220
Hình phụ lục 1 Hình ảnh giao diện làm việc của Google Colaboratory (Thông qua
Jupyter Notebook) ………………………………………………………………234
DANH MỤC BẢNG
Bảng 3.1 Bảng minh họa mơ hình bigram cho từ điển ví dụ minh họa ....................55
Bảng 3.2 Bảng danh sách các thành phần trong một Chatbot ..................................67
Bảng 3.3 Bảng danh sách thuộc tính trong một Entity .............................................71
Bảng 3.4 Bảng danh sách thuộc tính trong một Intent ..............................................72
Bảng 3.5 Bảng danh sách thuộc tính của một Entity Parameter ...............................73
Bảng 3.6 Bảng các Entity được hỗ trợ bởi Duckling ................................................74
Bảng 4.1 Bảng mô tả sơ lược các Actor trong sơ đồ ca sử dụng ..............................92
Bảng 4.2 Bảng mô tả thành phần chính trong hệ thống ..........................................130
Bảng 4.3 Bảng thuộc tính lớp User .........................................................................134
Bảng 4.4 Bảng thuộc tính lớp Service ....................................................................134
Bảng 4.5 Bảng phương thức lớp Service ................................................................135
Bảng 4.6 Bảng thuộc tính lớp Session ....................................................................135
Bảng 4.7 Bảng phương thức lớp Session ................................................................135
Bảng 4.8 Bảng thuộc tính lớp Bill ..........................................................................136
Bảng 4.9 Bảng thuộc tính lớp PendingBill .............................................................136
Bảng 4.10 Bảng phương thức lớp PendingBill .......................................................137
Bảng 4.11 Bảng thuộc tính lớp ConfirmBill ...........................................................137
Bảng 4.12 Bảng thuộc tính lớp Context ..................................................................138
Bảng 4.13 Bảng phương thức lớp Context..............................................................138
Bảng 4.14 Bảng thuộc tính lớp ActiveContext .......................................................139
Bảng 4.15 Bảng thuộc tính lớp Message ................................................................139
Bảng 4.16 Bảng thuộc tính lớp Option ...................................................................140
Bảng 4.17 Bảng thuộc tính lớp InformationKey .....................................................140
Bảng 4.18 Bảng phương thức lớp InformationKey ................................................140
Bảng 4.19 Bảng thuộc tính lớp Utterance ...............................................................141
Bảng 4.20 Bảng thuộc tính lớp Intent .....................................................................141
Bảng 4.21 Bảng thuộc tính lớp Entity .....................................................................142
Bảng 4.22 Bảng thuộc tính lớp Trait .......................................................................142
Bảng 4.23 Bảng thuộc tính lớp Notification ...........................................................143
Bảng 4.24 Bảng thuộc tính lớp Preference .............................................................143
Bảng 4.25 Bảng thuộc tính lớp Blog .......................................................................144
Bảng 4.26 Bảng danh sách màn hình trong hệ thống..............................................163
Bảng 4.27 Bảng danh sách các thành phần trong màn hình chính .........................165
Bảng 4.28 Bảng danh sách thành phần trong màn hình đăng nhập ........................167
Bảng 4.29 Bảng danh sách thành phần trong màn hình đăng ký ............................168
Bảng 4.30 Bảng danh sách thành phần trong màn hình liệt kê giá dịch vụ ............169
Bảng 4.31 Bảng danh sách thành phần trong màn hình giao tiếp với Chatbot .......170
Bảng 4.32 Bảng danh sách thành phần trong màn hình nhập thơng tin thanh toán 171
Bảng 4.33 Bảng danh sách thành phần trong màn hình danh sách bài viết ............172
Bảng 4.34 Bảng danh sách thành phần trong màn hình chỉnh sửa hồ sơ người dùng
.................................................................................................................................173
Bảng 4.35 Bảng danh sách các thành phần trong màn hình thiết lập bảo mật người
dùng .........................................................................................................................175
Bảng 4.36 Bảng danh sách các thành phần trong màn hình thiết lập cá nhân người
dùng .........................................................................................................................176
Bảng 4.37 Bảng danh sách các thành phần trong màn hình dashboard quản trị hệ
thống ........................................................................................................................177
Bảng 4.38 Bảng danh sách các thành phần trong màn hình quản lý người dùng ...179
Bảng 4.39 Bảng danh sách các thành phần trong màn hình chỉnh sửa thơng tin người
dùng .........................................................................................................................180
Bảng 4.40 Bảng danh sách các thành phần trong màn hình quản lý dịch vụ hệ thống
.................................................................................................................................182
Bảng 4.41 Bảng danh sách các thành phần trong màn hình quản lý bài viết..........183
Bảng 4.42 Bảng danh sách các thành phần trong màn hình chỉnh sửa bài viết ......184
Bảng 4.43 Bảng danh sách các thành phần trong màn hình Đăng nhập .................187
Bảng 4.44 Bảng danh sách các thành phần trong màn hình Đăng ký .....................189
Bảng 4.45 Bảng danh sách các thành phần trong màn hình Khung chat ................191
Bảng 4.46 Bảng danh sách các thành phần trong màn hình Danh sách bài viết .....193
Bảng 4.47 Bảng danh sách các thành phần trong màn hình Thiết lập tài khoản ....195
Bảng 4.48 Bảng danh sách các thành phần trong màn hình Chỉnh sửa thơng tin người
dùng .........................................................................................................................198
Bảng 4.49 Bảng danh sách các thành phần trong màn hình Thiết lập âm thanh và
thông báo .................................................................................................................200
Bảng 4.50 Bảng danh sách các thành phần trong màn hình Nâng cấp dịch vụ ......202
Bảng 4.51 Bảng danh sách các thành phần trong màn hình Thiết lập bảo mật ......204
Bảng phụ lục 1 Bảng danh mục cơng nghệ được sử dụng trong khóa luận………227
Bảng phụ lục 2 Bảng phân chia cơng việc trong khóa luận ....................................234
DANH MỤC TỪ VIẾT TẮT
Từ viết tắt
Tên đầy đủ
Mô tả tiếng Việt
AI
Artificial Intelligent
Trí tuệ nhân tạo
API
Application Programming Interface
Giao diện lập trình ứng
dụng
BERT
Bi-directional Encoder
Thể hiện mã hóa hai chiều
Representations from Transformer
từ mơ hình Transformer
CPU
Central Processing Unit
Đơn vị xử lý trung tâm
DAO
Data Access Object
Đối tượng truy cập dữ liệu
GPT
Generative Pre-trained Transformer
Mơ hình Transformer luyện
sẵn mang tính cấu tạo
GPU
Graphics Processing Unit
Đơn vị xử lý đồ họa
HTML
HyperText Markup Language
Ngôn ngữ đánh dấu cho
siêu văn bản
HTTP
Hypertext Transfer Protocol
Giao thức chuyển giao siêu
văn bản
ID
Identifier
Mã nhận diện
JSON
JavaScript Object Notation
Biểu diễn đối tượng
Javascript
NER
Named Entity Recognition
Nhận diện thực thể đặt tên
NLG
Natural Language Generation
Cấu tạo ngôn ngữ tự nhiên
NLP
Natural Language Processing
Xử lý ngôn ngữ tự nhiên
NLU
Natural Language Understanding
Thấu hiểu ngôn ngữ tự
nhiên
RAM
Random Access Memory
Bộ nhớ truy xuất ngẫu
nhiên
UC
Use Case
Ca sử dụng
UI
User Interface
Giao diện người dùng
URL
Uniform Resource Locator
Cú pháp định vị tài nguyên
đồng nhất
TÓM TẮT KHÓA LUẬN
Trong bối cảnh nhu cầu tra cứu thông tin ngày càng lớn, cũng như việc phổ cập
Internet đang diễn ra với tốc độ càng cao trong bối cảnh hậu đại dịch COVID-19.
Nhóm nhận thấy tiềm năng trong việc phát triển một hệ thống Chatbot trợ lý ảo hỗ
trợ người dùng tra cứu thông tin trên mạng Internet. Để tạo ra được sản phẩm, nhóm
phải giải quyết hai bài tốn lớn trong xử lý ngơn ngữ tự nhiên, gồm thấu hiểu ngôn
ngữ tự nhiên. Để giải quyết hai vấn đề này. Nhóm đã kết hợp nhiều hướng tiếp cận
bao gồm:
• Sử dụng giải thuật tìm mờ như giải thuật tìm độ đo Levenshtein
• Sử dụng mơ hình mạng nơ-ron truyền thẳng
• Sử dụng mơ hình Transformer (Tinh chỉnh mơ hình huấn luyện trước gồm
BARTpho và PhoBERT
Sau q trình miệt mài nghiên cứu, thực hiện thiết kế và cài đặt hệ thống. Nhóm
đã hồn thiện hệ thống Chatbot đa nền tảng với những điểm nổi bật sau:
• Chatbot phản hồi câu hỏi của người dùng
• Chatbot cung cấp thơng tin thời gian thực cho người dùng như tin tức, thời
tiết, tỉ giá ngoại tệ, chỉ số chứng khốn
• Chatbot cung cấp thông tin kiến thức cho người dùng dựa theo kho tri thức của
Wikidata và Google Knowledge Graph
• Chatbot có khả năng xác định câu hỏi của người dùng dựa vào mơ hình mạng
nơ-ron truyền thẳng để thực hiện tác vụ nhận diện ý niệm
• Chatbot có khả năng phân tích cảm xúc của người dùng dựa vào mơ hình tinh
chỉnh từ mơ hình PhoBERT
• Chatbot có khả năng cấu tạo phản hồi dựa vào mơ hình tinh chỉnh từ mơ hình
BARTpho
24
• Người dùng có thể giao tiếp với Chatbot thơng qua giao diện trên trình duyệt
web hoặc ứng dụng trên điện thoại chạy nền tảng iOS và Android. Với ứng
dụng điện thoại bổ sung một số chức năng bổ sung
• Quản trị viên có thể quản lý mức độ truy cập thông tin của người dùng thông
qua giao diện riêng trên trình duyệt web
25