Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 52 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
52
Dung lượng
2,68 MB
Nội dung
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA CÔNG NGHỆ PHẦN MỀM BÁO CÁO ĐỒ ÁN Đề tài: PHẦN MỀM HỎI ĐÁP VÀ THEO DÕI TÌNH HÌNH COVID-19 TẠI VIỆT NAM Giảng viên hướng dẫn : ThS Trần Anh Dũng Sinh viên thực : Phan Xuân Quang Mã số sinh viên : 20521008 Mã lớp : SE121.N21 Thành phố Hồ Chí Minh, ngày 30 tháng 06 năm 2023 LỜI CẢM ƠN Sau trình học tập rèn luyện khoa Công nghệ phần mềm trường Đại học Công nghệ Thông tin – ĐHQG TP.HCM em trang bị kiến thức bản, kỹ thực tế để lần đầu thực Đồ án Để hồn thành Đồ án này, em xin gửi lời cảm ơn chân thành đến: Ban Giám hiệu trường Đại học Công nghệ Thông tin – ĐHQG TP.HCM tạo điều kiện sở vật chất với hệ thống thư viện đại, đa dạng loại sách, tài liệu thuận lợi cho việc tìm kiếm, nghiên cứu thơng tin Em xin gửi lời cảm ơn chân thành đến thầy Trần Anh Dũng tận tình giúp đỡ, định hướng trình thực đồ án Đó góp ý q báu khơng q trình thực đồ án mà hành trang tiếp bước cho em trình học tập lập nghiệp sau Và cuối cùng, em xin gửi lời cảm ơn đến gia đình, tất thầy khoa, bạn bè, tập thể lớp KTPM2020 người sẵn sàng sẻ chia giúp đỡ học tập sống Mong rằng, mãi gắn bó với Trong q trình làm Đồ án khơng tránh khỏi sai sót, em kính mong nhận dẫn góp ý q thầy để hồn thiện phát triển đồ án môn học Đồ án Khóa luận tốt nghiệp tương lai Thành phố Hồ Chí Minh, ngày 30 tháng năm 2023 Sinh viên thực PHAN XUÂN QUANG NHẬN XÉT CỦA KHOA DANH MỤC HÌNH ẢNH Hình 2.1 Logo phần mềm 16 Hình 3.1 Logo Dialogflow ES 18 Hình 3.2 Sơ đồ chức Dialogflow ES 18 Hình 3.3 Logo NET 19 Hình 3.4 Giao diện làm việc với Windows Forms 20 Hình 3.5 Logo XPath 21 Hình 3.6 Minh họa YouTube Data API 22 Hình 3.7 Minh họa chức YouTube Data API 23 Hình 3.8 Những ứng dụng REST API 24 Hình 3.9 Mơ hình chế REST API 25 Hình 3.10 Mơ hình kiến trúc REST API 26 Hình 4.1 Sơ đồ use case 27 Hình 4.2 Mơ hình Client – Server sử dụng REST API 29 Hình 4.3 Mơ hình kiến trúc hệ thống 30 Hình 5.1 Một số Intent COVIDealer 31 Hình 5.2 Một số Entity COVIDealer 32 Hình 5.3 Danh sách tài liệu COVIDealer 33 Hình 5.4 Nội dung tài liệu Knowledge Base COVIDealer 34 Hình 5.5 Quá trình xử lý yêu cầu Dialogflow ES 35 Hình 5.6 Mơ hình Client – Server Dialogflow ES 37 Hình 5.7 Mơ hình luồng liệu phần mềm COVIDealer 37 Hình 5.8 Mơ hình q trình xử lý yêu cầu dự án 38 Hình 5.9 Phản hồi mà người dùng nhận 39 Hình 6.1 Giao diện phần mềm 40 Hình 6.2 Giao diện hình “Trị chuyện” 42 Hình 6.3 Minh họa chức trò chuyện 43 Hình 6.4 Giao diện hình “Thống kê” 45 Hình 6.5 Màn hình “Thống kê” thực thao tác giao diện 46 Hình 6.6 Giao diện hình “Tin tức” 48 Hình 6.7 Giao diện hình “Bản tin” 49 MỤC LỤC LỜI CẢM ƠN NHẬN XÉT CỦA KHOA DANH MỤC HÌNH ẢNH MỤC LỤC Chương ĐỀ CƯƠNG CHI TIẾT 1.1 Nội dung đề tài 1.2 Lý chọn đề tài 1.3 Mục tiêu 10 1.4 Phạm vi 11 1.5 Kết mong đợi: 12 1.6 Hướng phát triển đề tài: 12 1.7 Kế hoạch thực 12 Chương TỔNG QUAN 16 2.1 Mô tả sản phẩm 16 2.2 Công nghệ sử dụng 16 Chương CƠ SỞ LÝ THUYẾT 18 1.1 Dialogflow ES 18 1.1.1 Tổng quan 18 1.1.2 Chức 18 1.1.3 Cơ chế kiến trúc 19 1.2 Windows Form NET 19 1.2.1 Tổng quan 19 1.2.2 Chức 20 1.2.3 Cơ chế kiến trúc 21 1.3 XPath 21 1.3.1 Tổng quan 21 1.3.2 Chức 21 1.3.3 Cơ chế kiến trúc 22 1.4 YouTube Data API 22 1.4.1 Tổng quan 22 1.4.2 Chức 23 1.4.3 Cơ chế kiến trúc 23 1.5 REST API 24 1.5.1 Tổng quan 24 1.5.2 Chức 24 1.5.3 Cơ chế kiến trúc 25 Chương THIẾT KẾ HỆ THỐNG 27 4.1 Đặc tả use case 27 4.2 Kiến trúc hệ thống 29 4.2.1 Kiến trúc Client – Server 29 4.2.2 Kiến trúc Client – Server COVIDealer 29 Chương XÂY DỰNG CHATBOT 31 5.1 Mơ hình chatbot xây dựng Dialogflow ES 31 5.1.1 Các thành phần 31 5.1.1.1 Intent 31 5.1.1.2 Entity 32 5.1.1.3 Knowledge Base 33 5.1.2 Xử lý yêu cầu 34 5.1.2.1 Mơ hình xử lý yêu cầu 34 5.1.2.2 Xử lý ngôn ngữ tự nhiên 35 5.2 Quy trình giao tiếp 36 5.2.1 Mơ hình Client – Server Dialogflow ES 36 5.2.2 Luồng liệu 37 5.3 Áp dụng vào dự án 38 Chương THIẾT KẾ GIAO DIỆN 40 6.1 Giao diện 40 6.1.1 Thành phần giao diện: 41 6.1.2 Xử lý kiện 41 6.2 Màn hình Trị chuyện 42 6.2.1 Thành phần giao diện: 43 6.2.2 Xử lý kiện 44 6.3 Màn hình Thống kê 44 6.3.1 Thành phần giao diện: 46 6.3.2 Xử lý kiện 47 6.4 Màn hình Tin tức 47 6.4.1 Thành phần giao diện 48 6.4.2 Xử lý kiện 49 6.5 Màn hình Bản tin 49 6.5.1 Thành phần giao diện 50 6.5.2 Xử lý kiện 50 Chương TỔNG KẾT 51 7.1 Ưu điểm 51 7.2 Hạn chế 51 7.3 Hướng phát triển 51 TÀI LIỆU THAM KHẢO 52 Chương ĐỀ CƯƠNG CHI TIẾT TÊN ĐỀ TÀI: Phần mềm hỏi đáp theo dõi tình hình COVID-19 Việt Nam Cán hướng dẫn: ThS Trần Anh Dũng Thời gian thực hiện: Từ ngày 10/03/2023 đến ngày 06/07/2022 Sinh viên thực hiện: Phan Xuân Quang - 20521008 1.1 Nội dung đề tài Với phát triển công nghệ, ngành y tế khơng ngừng tìm kiếm cách sử dụng cơng nghệ tiên tiến để nâng cao chất lượng chăm sóc sức khỏe cải thiện trải nghiệm bệnh nhân Trong đó, ứng dụng chatbot hỗ trợ tư vấn y khoa giải pháp nhận quan tâm lớn từ chuyên gia y tế người dân Ngoài ra, với bùng phát COVID-19 vài năm gần đây, việc cập nhật tình tin tức trở nên cần thiết hết 1.2 Lý chọn đề tài Chatbot ứng dụng trí tuệ nhân tạo trở thành công nghệ áp dụng rộng rãi nhiều lĩnh vực khác nhau, từ dịch vụ khách hàng hỗ trợ giáo dục Và lĩnh vực y tế, chatbot coi cơng nghệ có tiềm lớn để giúp nâng cao chất lượng dịch vụ y tế cải thiện quy trình chăm sóc sức khỏe bệnh nhân Đặc biệt bối cảnh nay, dịch bệnh diễn biến phức tạp, cần thiết việc ứng dụng chatbot tư vấn y khoa trở nên bật hết Việc sử dụng chatbot tư vấn y khoa giúp bệnh nhân dễ dàng tiếp cận nhận tư vấn y tế cách nhanh chóng, tiện lợi hiệu Thơng qua chatbot, người dùng đặt câu hỏi nhận câu trả lời tức vấn đề liên quan đến sức khỏe, từ cách phòng ngừa bệnh với triệu chứng bất thường Đồng thời, việc sử dụng chatbot tư vấn y khoa giúp giảm bớt gánh nặng cho hệ thống chăm sóc sức khỏe, từ giúp tăng cường khả đáp ứng nhu cầu tư vấn y tế đông đảo người dân Điều giúp giảm thiểu tình trạng tải cho sở y tế giúp người bệnh tiết kiệm thời gian, chi phí nỗ lực tìm kiếm thơng tin sức khỏe Ngồi ra, dịch bệnh COVID-19 bùng phát vài năm gần đây, ngành y tế cố gắng nhằm cung cấp cho người dân kênh thông tin tổng hợp dịch bệnh, nhằm giúp người dân nắm tình hình với giải pháp phù hợp Tuy nhiên, kênh thơng tin cịn rải rác cần thống Chính vậy, việc xây dựng đề tài "Phần mềm hỏi đáp theo dõi tình hình COVID-19 Việt Nam " cần thiết để tận dụng tiềm công nghệ việc nâng cao chất lượng hiệu việc đáp ứng nhu cầu tư vấn y tế ngày tăng người dân, đồng thời giúp cập nhật tin tức COVID-19 theo thời gian thực cách hiệu quả, giúp người dân có biện pháp ứng phó phù hợp 1.3 Mục tiêu Đề tài bao gồm mục tiêu chính: Xây dựng chatbot: Chatbot có khả trả lời nhanh hợp lý câu hỏi người dùng, có khả đối đáp, tư vấn dựa vào nhu cầu người dùng, từ tối ưu thời gian việc người dùng phải tự tra cứu thơng tin Cập nhật tình hình: Ứng dụng có khả cập nhật tin tức liên quan đến COVID-19 bảng thống kê theo thời gian thực Xây dựng ứng dụng: Ứng dụng hoạt động cách hiệu hệ điều hành Windows 10 Windows 11 Ngồi ra, ứng dụng cần có giao diện người dùng trực quan thân thiện Dữ liệu đào tạo chatbot cập nhật từ nguồn uy tín 10 Phần mềm trích xuất kết từ phản hồi (bằng tiếng Anh) gửi lên Cloud Translation để dịch sang tiếng Việt Cloud Translation trả kết tiếng Việt cho Client 5.3 Áp dụng vào dự án Nhóm đối tượng sử dụng phần mềm người dân Việt Nam, nhiên, nguồn liệu sử dụng tiếng Anh đến từ tổ chức FDA, Dialogflow ES không mạnh khoản xử lý tiếng Việt mà thay vào tiếng Anh Do đó, trước xử lý yêu cầu người dùng trước hiển thị yêu cầu người dùng, liệu cần phải qua bước dịch thuật thông qua Cloud Translation, cách dịch yêu cầu sang tiếng Anh, dịch phản hồi sang tiếng Việt Hình 5.8 Mơ hình q trình xử lý u cầu dự án Để hiểu rõ cách vai trò Dialogflow ES phần mềm này, ta lấy ví dụ minh họa sau qua bước xử lý: Yêu cầu người dùng: Tác dụng phụ vắc xin covid Dịch yêu cầu sang tiếng Anh: Yêu cầu người dùng gửi lên máy chủ Cloud Translation, trả kết Tell me side effect of covid vaccine Xử lý ngơn ngữ: Dialogflow ES phân tích câu hỏi người dùng (bằng tiếng Anh) hiểu yêu cầu thông tin tác dụng phụ vắc-xin COVID-19 38 Xác định Intent Entity: Dialogflow ES xác định intent VaccineFAQ.Side effects of covid vaccines khơng tìm thấy thực thể cụ thể câu Xử lý Intent: Với intent VaccineFAQ.Side effects of covid vaccines, Dialogflow ES chọn phản hồi danh sách phản hồi quy định sẵn Phản hồi: Dialogflow ES trả phản hồi dạng tệp tin json Xử lý phản hồi: Phần mềm xử lý phản hồi cách phân tích tệp tin json trả từ hệ thống Kết cần lấy liệu thuộc tính fulfillmentText Dịch phản hồi sang tiếng Việt: Kết trả gửi lên máy chủ Google Cloud Translate, trả dịch tiếng Việt tương ứng Sau trình xử lý trên, phản hồi mà người dùng nhận được: Hình 5.9 Phản hồi mà người dùng nhận Tuy nhiên, cách diễn đạt tiếng Việt phản hồi có phần “máy móc” dịch thực tự động AI thay người biên soạn thủ công 39 Chương THIẾT KẾ GIAO DIỆN Lưu ý: Giao diện thiết kế độ phân giải 3840 x 2160 (pixel) với mức phóng đại 150% Tuy nhiên, hệ điều hành Windows khơng tối ưu tốt cho tính High DPI nên giao diện bị lỗi số hình khơng hỗ trợ High DPI 6.1 Giao diện Hình 6.1 Giao diện phần mềm Giao diện phần mềm thiết kế với hình “Trị chuyện” làm nơi bắt đầu Giao diện thiết kế với màu xanh dương tạo cảm giác thoải mái mắt Đồng thời, bảng chọn đặt bên trái tạo cảm giác quen thuộc hầu hết phần mềm có thị trường 40 6.1.1 Thành phần giao diện: Thứ tự Tên thành phần Thanh tiêu đề Loại Mô tả Windows Header Tiêu đề phần mềm Mang màu xanh chủ đạo chứa Thanh lựa chọn Label nút lựa chọn phần mềm Mang biểu tượng tên tương Nút “Trò chuyện” Button ứng, dùng để truy cập tính trị chuyện Mang biểu tượng tên tương Nút “Thống kê” Button ứng, dùng để truy cập tính thống kê tình hình dịch Mang biểu tượng tên tương Nút “Tin tức” Button ứng, dùng để truy cập tính xem tin tức dịch Mang biểu tượng tên tương Nút “Bản tin” Button ứng, dùng để truy cập tính xem tin dịch Mang biểu tượng tên tương Nút “Cập nhật” Button ứng, dùng để kiểm tra cập nhật 6.1.2 Xử lý kiện Thứ tự Hành động Mở phần mềm Sự kiện tương ứng Kiểm tra kết nối mạng, có hiển thị cửa sổ tính “Trị chuyện” 41 Nhấp chuột vào nút “Trò chuyện” Nhấp chuột vào “Thống kê” Truy cập tính “Trị chuyện” nút Truy cập tính “Thống kê”, hiển thị bảng thống kê Nhấp chuột vào nút “Tin Truy cập tính “Tin tức”, hiển thị danh sách tức” tin tức Nhấp chuột vào nút “Bản Truy cập tính “Bản tin”, hiển thị danh sách tin tin” Nhấp chuột vào nút “Cập Truy cập tính “Cập nhật”, kiểm tra cập nhật" nhật phần mềm 6.2 Màn hình Trị chuyện Hình 6.2 Giao diện hình “Trị chuyện” 42 Màn hình “Trị chuyện”, hình phần mềm Cũng ứng dụng trò chuyện khác thị trường, người dùng nhập câu thoại vào hộp chữ hình gửi đi, có phản hồi tương ứng trả Ví dụ: Hình 6.3 Minh họa chức trị chuyện 6.2.1 Thành phần giao diện: Thứ tự Tên thành phần Hộp nhập chữ Loại Textbox Mô tả Nơi để người dùng nhập thắc mắc dùng để hỏi chatbot Nút có biểu tượng máy bay Nút “Gửi” Button giấy đại diện cho hành động “gửi” màu xanh (màu chủ đạo phần mềm) 43 Nút có biểu tượng “khơi phục” đại diện cho hành động hủy bỏ phiên hoạt động Nút “Làm mới” đưa giao diện ban đầu, màu Button nút đỏ (đại diện cho hành động khơng khuyến cáo) Khơng gian trị chuyện Rich Textbox Khu vực dùng để hiển thị trò chuyện 6.2.2 Xử lý kiện Thứ tự Hành động Nhấp chuột vào Sự kiện tương ứng nút Kiểm tra hộp nhập chữ có trống khơng Nếu có “Gửi” hộp nhập chữ thơng báo yêu cầu người dùng nhập nội trống dung vào hộp nhập chữ Nếu khơng gửi tin Bấm phím Enter nhắn đi, đồng thời xóa tồn chữ hộp trỏ văn hộp nhập, sau hiển thị câu trả lời tương ứng nhập chữ khơng gian trị chuyện Nhấp chuột vào nút “Làm Khơi phục hình “Trị chuyện” giao diện mới” mở phần mềm lên 6.3 Màn hình Thống kê 44 Hình 6.4 Giao diện hình “Thống kê” Màn hình hiển thị liệu thống kê theo thời gian thực tình hình dịch COVID-19 Việt Nam Tại đây, người dùng thao tác với thành phần giao diện để lựa chọn liệu muốn xem Ví dụ: 45 Hình 6.5 Màn hình “Thống kê” thực thao tác giao diện 6.3.1 Thành phần giao diện: Thứ tự Tên thành phần Tiêu đề Loại Mô tả Label Tiêu đề trường thông tin Thể tổng số ca ghi Thông tin khu vực Label nhận từ dịch bùng phát đến khu vực Nút có biểu tượng “khơi phục” đại diện cho hành động Bảng thống kê Data GridView hủy bỏ phiên hoạt động đưa giao diện ban đầu, màu nút đỏ (đại diện cho 46 hành động không khuyến cáo) Nút điều chỉnh biểu đồ thống kê Rich Textbox Khu vực dùng để hiển thị trò chuyện Thống kê số ca mắc bệnh, số Biểu đồ thống kê Column Graph ca khỏi bệnh số ca tử vong tuần qua 6.3.2 Xử lý kiện Thứ tự Hành động Nhấp chuột vào dịng chữ Hiển thị thơng tin cho khu vực giới, dòng “Việt Nam” chữ “Việt Nam” thay đổi thành “Thế giới” Nhấp chuột vào dịng chữ Hiển thị thơng tin cho khu vực Việt Nam, dòng “Thế giới” chữ “Thế giới” thay đổi thành “Việt Nam” Nhấp chuột vào nút “Số Biểu đồ thống kê chuyển sang thông tin số ca nhiễm bệnh” ca nhiễm bệnh Nhấp chuột vào nút “Số Biểu đồ thống kê chuyển sang thông tin số ca khỏi bệnh” ca khỏi bệnh Nhấp chuột vào nút “Số Biểu đồ thống kê chuyển sang thông tin số ca tử vong” Nhấp chuột vào tiêu đề Sự kiện tương ứng cột bảng thống kê ca tử vong Sắp xếp lại giá trị bảng thống kê theo thứ tự tăng/giảm dần giá trị cột 6.4 Màn hình Tin tức 47 Hình 6.6 Giao diện hình “Tin tức” Màn hình hiển thị danh sách tin tức liên quan đến COVID-19 cập nhật trực tiếp từ Bộ Y Tế 6.4.1 Thành phần giao diện Thứ tự Tên thành phần Loại Mô tả Thông tin tin tức, bao gồm Tin tức User Control tiêu đề, tóm lược ảnh đại diện 48 6.4.2 Xử lý kiện Thứ tự Hành động Nhấp chuột vào tin tức Sự kiện tương ứng Mở trình duyệt dẫn đến tin tức tương ứng Thay đổi kích thước Cách bố trí tin tức hàng ngang thay đổi cửa sổ theo 6.5 Màn hình Bản tin Hình 6.7 Giao diện hình “Bản tin” 49 Màn hình hiển thị danh sách video tin liên quan đến COVID-19 cập nhật trực tiếp từ hệ thống YouTube 6.5.1 Thành phần giao diện Thứ tự Tên thành phần Loại Mô tả Thông tin tin tức, bao gồm Bản tin User Control tiêu đề, tóm lược ảnh đại diện 6.5.2 Xử lý kiện Thứ tự Hành động Sự kiện tương ứng Nhấp chuột vào Mở trình duyệt dẫn đến video tin tương tin ứng Thay đổi kích thước Cách bố trí tin hàng ngang thay đổi cửa sổ theo 50 Chương TỔNG KẾT 7.1 Ưu điểm - Chatbot hiểu phân tích ngôn ngữ tiếng Việt tiếng Anh, đồng thời đối đáp tương đối xác theo kịch - Thơng tin thống kê, tin tức, tin cập nhật theo thời gian thực - Thực hoàn chỉnh phạm vi đề tài 7.2 Hạn chế - Phần mềm tương thích hệ điều hành Windows - Windows Forms không hỗ trợ HighDPI nên giao diện bị lỗi hiển thị số mẫu hình máy tính - Kịch đối thoại chưa cập nhật theo thời gian thực - Câu trả lời chatbot không với ngữ cảnh - Phản hồi chatbot cịn chậm phải thơng qua bước dịch thuật 7.3 Hướng phát triển - Đưa lên tảng web - Hỗ trợ thêm ngơn ngữ khác ngồi tiếng Anh tiếng Việt - Tự xây dựng tảng thay phụ thuộc vào Dialogflow ES 51 TÀI LIỆU THAM KHẢO Google Cloud, “Dialogflow ES documentation”, 14/03/2016 [Trực tuyến] Địa chỉ: https://cloud.google.com/Dialogflow ES/es/docs [Truy cập lần cuối 12/05/2023] Google Cloud, “Translation AI - Google Cloud”, 12/07/2019 [Trực tuyến] Địa chỉ: https://cloud.google.com/translate [Truy cập lần cuối 12/05/2023] YouTube, “YouTube Data API - Google for Developers”, 03/05/2016 [Trực tuyến] Địa chỉ: https://developers.google.com/youtube/v3 [Truy cập lần cuối 12/05/2023] MDN, “XPath - MDN Web Docs”, 18/02/2016 [Trực tuyến] Địa chỉ: https://cloud.google.com/translate [Truy cập lần cuối 12/05/2023] Microsoft, “Windows Forms for NET documentation - Microsoft Learn”, 18/02/2022 [Trực tuyến] Địa chỉ: https://learn.microsoft.com/vi- vn/dotnet/desktop/winforms [Truy cập lần cuối 12/05/2023] 52