Chương 1. Giới thiệu đề tài: Chatbot Tiếng Việt hỗ trợ du lịch Sài Gòn có tên là Du Lịch Ở Đâu là một chatbot hỗ trợ tư vẫn thông tin du lịch tại phạm vi Sài Gòn, các thông tin được hỗ trợ bao gồm như : địa điểm du lịch, địa điểm ăn uống, khách sạn và những câu hỏi đáp nhanh (thời tiết, trang phục, phương tiện,. Lý do chọn đề tài Chatbot là một chương trình máy tính hoặc trí thông minh nhân tạo tương tác với con người băng ngôn ngữ tự nhiên, thực hiện cuộc trò chuyện thông qua một giao diện dưới dạng tin nhắn hoặc âm thanh. Thuật ngữ “ChatBot” ban đầu được đặt bởi Michael Mauldin dầu tien vào năm 1994.
Chatbots còn được gọi là Conversational Agents hay Dialog Systems. Các chatbots được thiết kế một cách thuyết phục con người cư xử như một đối tác đàm thoại. Theo cách tương tác mà chúng tương tác với người dùng, các chatbots thường được chia thành hai loại: âm thanh và tin nhắn. Các chatbots được thiết kế phức tạp dựa trên nền tảng xử lý ngôn ngữ tự nhiên, nhưng cũng có nhiều hệ thống khác đơn giản hơn bằng cách tìm từ khoá trong từng câu và dựa vào từ khoá dé tìm câu trả lời phù hợp Hiện nay phần lớn các chatbot đều thực hiện truy cập thông qua các trợ lý ảo như trợ lý Google và Amazon Alexa, dưới ứng dụng tin nhắn như Facebook Messenger, WeChat hoặc thông qua các ứng dụng va trang web của các tổ chức riêng lẻ.
Sự phát triển của trí tuệ nhân tao tạo điều kiện dé chatbot phát triển nhanh chóng và tạo ra một hệ sinh thái chatbot tương tự hệ sinh thái ứng dụng. Chatbot được sử dụng trong rất nhiều công việc như trong việc chăm sóc khách hàng (cung cấp thông tin sản phẩm, đưa ra các thông tin gợi ý.), quản lý hàng tồn, sắp xếp lịch, tra cứu dữ liệu y tế, chăm sóc sức khóc. Chatbot giúp tối ưu hóa năng suất, giảm thiểu chi phí thông qua chăm sóc khách hàng, chăm sóc sức khỏe, đời sống con người. Chatbot có lợi thé dé dé dang sử dụng bat cứ ngành nghề nào.
18 Du lịch là một trong những ngành kinh tế quan trọng, là một ngành kinh tế tổng hợp có tính liên ngành, liên vùng và xã hội hóa cao. Du lịch không những có khả năng tạo ra nguồn thu nhập rat lớn cho xã hội mà còn góp phan thực hiện chính sách mở cửa, giao lưu văn hóa, thúc đây sự đổi mới và phát triển nhiều ngành kinh tế khác, đồng thời giải quyết nhiều van đề mang tinh chất xã hội. Sài Gòn, vùng đất được thiên nhiên ưu ái ban tặng nhiều tài nguyên quý, độc đáo được phục vụ cho việc phát triển một ngành du lịch với nhiều loại sản phẩm du lịch, hình thức du lịch phong phú và đa dạng. Mặc dù là một thành phó rất phát triển về kinh tế, bên cạnh đó Sài Gòn còn là vùng đất giàu tiềm năng, lợi thế để phát triển du lịch, tuy nhiên du lich Sài Gòn chưa phát triển tương xứng với tiềm năng vốn có.
Lam thé nào dé du lịch Sài Gòn phát triển đi lên ngày một nhanh và mạnh mẽ, thu hút được lượng khách du lịch đến thăm quan nhiều hon, nâng cao sức cạnh tranh, nâng cao vi thế du lịch Sài Gòn là một vấn đề quan trọng và cấp thiết cần được đặt ra hiện nay. TONG QUAN DE TÀI 2. Mục tiêu Nghiên cứu, tìm hiểu về công nghệ chatbot. Tìm hiểu cơ chế hoạt động của chatbot Rasa.
Cài đặt môi trường dé thử nghiệm và xây dựng, phát triển hệ thống với chatbot Rasa. Tìm hiểu về quy trình du lịch để áp dụng vào việc xây dựng hệ thống. Nâng cao kỹ năng chuyên môn về phát triển ứng dụng web và mobile, cả back-end và front-end. Phạm vi và đối tượng 2.
Đối tượng nghiên cứu — Lý thuyết máy học, các thuật toán, phương pháp xây dựng ngôn ngữ tự nhiên với ngôn ngữ Tiếng Việt. — Mã nguồn mở Rasa và kỹ thuật xây dựng chatbot. — Dữ liệu về du lịch Sài Gòn. Phạm vi nghiên cứu — Nghiên cứu dữ liệu Tiếng Việt dùng trong du lịch và ngôn ngữ hội thoại sử dụng cho xây dựng chatbot.
— Xây dựng và thực nghiệm hệ thống mô phỏng trợ lý ảo có trí tuệ nhân tạo, hiểu và có thể trả lời những câu hỏi về thông tin du lịch Sài Gòn. Phương pháp thực hiện: Thực hiện theo các bước sau: Phân tích đề tài. Nghiên cứu quy trình du lịch. Phân tích các yêu cầu đã thu thập được.
Thiết kế cơ bản các yêu cầu. 20 — Nghiên cứu công nghệ dé áp dụng. — Phát triển sản phẩm qua các giai đoạn, đồng thời lấy ý kiến phản hồi — Kiểm thử và hoàn thiện. Những công nghệ được sử dụng: — Back end: ©_ Nodejs, Loopback Framework, Mongodb — Front-end: o Web Application: = Reactjs = Ant design — Mobile Application: o Flutter Framework 2.
Y nghĩa thực tiễn — Tạo được một nguồn thông tin chính thức. — Cung cấp sự nhanh chóng, tiện lợi cho người sử dụng. — Giúp tiết kiệm thời gian trong việc tra cứu thông tin di du lịch. — Giúp cắt giảm được nhiều chỉ phí phát sinh về mặt vật chất cũng như về mặt con người — Giúp cắt giảm được nhiều chỉ phí phát sinh về mặt vật chất cũng như về mặt con người.
Kết quả dự kiến: — Hiểu rõ được những khái niệm cơ bản về Chatbot và cơ chế hoạt động của Rasa. — Xây dựng và phát triển hệ thống chatbot hỗ trợ du lịch vối các chức năng sau: © Đối với khách du lịch: m Địa điểm khách sạn: 21 Liệt kê top khách sạn nồi bật Tìm khách sạn theo quận Tìm khách sạn theo đánh giá sao Tìm khách sạn giá rẻ Tìm khách sạn dưới mức giá (vd: 200 trăm) Tìm khách sạn trên mức giá (vd: 500 trăm) m Địa điểm du lịch: Liệt kê top địa điểm du lịch nồi tiếng Tim địa điểm du lịch theo thé loại Tìm địa điểm du lịch theo quận m Địa điêm ăn uông: Liệt kê quán ăn ngon sài gòn Tìm quán ăn theo quận Tìm quán ăn theo loại © Đối với tinh thành quản lý: m Quản lý địa điểm khách sạn m Quản lý địa điểm du lịch m Quản lý địa điểm ăn uống 22 Chương 3. CÔNG NGHỆ CHATBOT VÀ CHATBOT RASA 3. Tổng quan về chatbot Chatbot là một chương trình máy tính có khả năng giao tiếp với con người bằng cách đưa ra câu trả lời cho các câu hỏi và thực hiện cuộc trò chuyện bằng cách sử dụng xử lý ngôn ngữ tự nhiên.
Con người đưa vào lời nói hoặc văn bản ngôn ngữ tự nhiên, trong khi chương trình chatbot sẽ đưa ra phản hồi thông minh phù hợp nhất đưới dạng văn bản hoặc lời. Cuộc trò chuyện có thể được bắt đầu bởi người dùng hoặc bởi chatbot. Quá trình giao tiếp bắt đầu khi người dùng nhập câu hỏi hoặc câu dưới dạng lời nói hoặc văn bản cho chương trình. Sau đó, đầu vào của người dùng được phân tích cho các từ khóa hoặc cụm từ mà nó chứa và câu trả lời được lập trình phù hợp nhất từ cơ sở dữ liệu chatbot.
Quá trình kết thúc sau khi đầu ra được trình bày cho người dùng bằng đồ họa hoặc bằng lời nói. Chatbots còn được gọi là Conversational Agents hay Dialog Systems. Các chatbot được thiết kế một cách thuyết phục con người cư xử như một đối tác đàm thoại. Theo cách tương tác mà chúng tương tác với người dùng, các chatbot thường được chia thành hai loại: âm thanh và tin nhắn.
Các chatbot được thiết kế phức tạp dựa trên nền tảng xử lý ngôn ngữ tự nhiên, nhưng cũng có nhiều hệ thống khác đơn giản hơn bằng cách quét từ khóa trong đầu vào, sau đó trả lời với từ khóa phù hợp nhất hoặc mẫu từ ngữ tương tự nhất trong cơ sở dữ liệu. 23 Chọn câu trả lời phù hop nhât Dữ liệu của chatbot Hình 3. 1: Xử lý hội thoại giữa chatbot và con người Hiện nay phan lớn các chatbots đều thực hiện truy cập thông qua các trợ lý ảo như trợ lý Google và Amazon Alexa, dưới ứng dụng tin nhắn như Facebook Messenger, WeChat hoặc thông qua các ứng dụng. Chatbot được sử dụng trong rất nhiều công việc như trong việc chăm sóc khách hàng(cung cấp thông tin sản phẩm, đưa ra những gợi ý.), quản lý hàng tồn, sắp xép lịch, tra cứu dit liệu hồ sơ y tế, chăm sóc sức khỏe, khuyến khích người dùng tập luyện, hướng dẫn chế độ ăn.
Hoạt động của chatbot Chatbot tương tác với con người qua âm thanh hoặc văn bản và sử dụng các nền tảng đề giao tiếp với bot. Phần mà các lập trình viên cần phát triển bao gồm: Translator: Dịch yêu cầu của người dùng giúp máy tính hiểu được yêu cầu cần thực hiện. Mục đích (intent) và các thực thể (entities) có trong yêu cầu được trích xuất dé làm cơ sở cho việc xác định câu tra lời. Các kỹ thuật xử lý ngôn ngữ 24 tự nhiên được áp dụng dé phân tích ngữ nghĩa yêu cầu của người dùng.
Question Translator Processor Database Answer Responsor Hình 3. 2: Hoạt động của chatbot Processor: Xử lý yêu cầu của người dùng dựa vào dữ liệu được Translator cung cấp có thé là mục đích và ý định. Câu trả lời sẽ được trả về cho user hoặc nếu câu trả lời cần thông tin từ database thì nó sẽ được truy xuất từ cơ sở dữ liệu của chatbot. Tùy thuộc vào kỹ thuật sử dụng sẽ cho mức độ chính xác của câu trả lời khác nhau.
Responsor: Nhận output từ Processor và trả lời lại cho người dùng. Sự phát triển của chatbot Ban đầu chatbot được phát triển như một ứng dụng bình thường, cũng có giao thức tầng ứng dụng, cơ sở dữ liệu và giao diện lập trình ứng dụng. Giao diện người dùng của chatbot là giao diện trò chuyện. Mặc dù, Chatbot cung cấp các tính năng dễ dang cho người dùng có thé sử dụng nhưng lại tăng độ phức tap và tỉnh vi trong quá trình xây dựng, quản lý và huấn luyện.
Hầu hết các hệ thống chatbot đều có thé lưu trữ dữ liệu các cuộc đối thoại với người dùng. Các nhà phát triển chatbot sẽ sử dụng nhật ký các cuộc đối thoại dé phân tích những gì người dùng đang có gắng hỏi và ý định của người dùng là gì?, tại sao chatbot không hiéu?,. Với sự kết hợp của các mô hình và công cụ Machine Learning, các nhà phát triển xây dựng các kịch bản mới cho từng câu 25 hỏi, ý định với các câu trả lời phù hợp nhất, đáp ứng nhu cầu của người dùng. Chatbot sẽ ngày càng phát triển theo thời gian cũng giống như kinh nghiệm tiếp xúc với khách hàng của 1 nhân viên bán hàng.