Lý do chọn đề tài

Một phần của tài liệu Xây dựng hệ thống kinh doanh sách trực tuyến với chatbot (khóa luận tốt nghiệp) (Trang 25)

Tại Việt Nam, có một bộ phận người dân có nhu cầu đọc sách rất cao, tuy nhiên, bên cạnh đó cũng có một bộ phận chiếm đa số thờ ơ với việc đọc sách, có đến 98% giới trẻ cho biết họ không hề đọc một cuốn sách nào trong 1 tuần, 80% bạn trẻ không đụng đến sách trong một năm qua và chỉ có 12% cho biết bản thân có đọc sách (theo một cuộc khảo sát của báo Dân trí năm 2021). Yêu cầu đặt ra là người có nhu cầu đọc sách cao cần được đáp ứng nhu cầu và người không đọc sách cần được khuyến khích việc đọc sách. Để thực hiện được thì mọi người cần được tiếp cận sách một cách nhanh chóng và dễ dàng nhất, nhưng xã hội càng phát triển, con người càng bận rộn, sau 8 tiếng làm việc tại công ty, người nhân viên chỉ muốn được nghỉ ngơi, nên họ từ chối việc đến nhà sách. Việc cung cấp một hệ thống bán sách trực tuyến để giúp họ vừa nghỉ ngơi mà vẫn có thể chọn sách và mua sách là việc cần được thực hiện.

9

Trước đây, khi người dùng cần sự hỗ trợ trong quá trình truy cập Internet, họ thường phải nhắn tin cho phía chăm sóc khách hàng hoặc gọi điện cho đường dây nóng và chờ đợi sự phản hồi từ người có trách nhiệm. Tuy nhiên, lưu lượng người truy cập Internet ngày càng tăng vọt, yêu cầu về sự hỗ trợ kịp thời cũng tăng theo, trong khi số lượng nhân viên chăm sóc khách hàng thì không thể đáp ứng đủ, thì việc tạo ra một công nghệ phục vụ khách hàng tự động là vô cùng bức thiết. Đó là nguyên nhân chatbot ra đời và đóng vai trò ngày càng quan trọng trong hầu hết các hệ thống trực tuyến hiện nay, có thể nói rằng: nếu nền tảng trực tuyến của bạn không có chatbot, thì nền tảng của bạn là một nền tảng không tốt.

Từ những vấn đề nếu trên, nhóm đã lên ý tưởng về một hệ thống kinh doanh sách trực tuyến để giải quyết nhu cầu về sách của người Việt Nam, đồng thời tích hợp chatbot giúp cải thiện trải nghiệm người dùng và tăng hiệu quả hoạt động của hệ thống.

10

CHƯƠNG 2. TỔNG QUAN ĐỀ TÀI 1. Mục tiêu

Ứng dụng được xây dựng với mục đích tạo một ứng dụng cho các nhà quản lý các hệ thống sách cũng như những người yêu thích sách. Thông qua ứng dụng, các hệ thống sách có thể có một phương tiện để quản lý và cắt giảm chi phí, thời gian mua trực tiếp cho người tìm mua sách. Đồng thời hệ thống Chatbot hỗ trợ giải đáp, tìm kiếm thông tin nhanh chóng và dễ dàng hơn cho người dùng.

Bên cạnh đó, đề tại cũng tạo ra cơ hội để nghiên cứu, học hỏi để nâng cao chuyên môn trong lĩnh vực phát triển phần mềm. Nắm bắt các công nghệ mới và xu hướng phát triển ứng dụng trên thị trường.

2. Phạm vi

Đề tài tập trung vào xây dựng ứng dụng trên nền tảng di động (Android) và Web với các chức năng chính:

- Admin: Đăng bán sách, sửa thông tin sách, kiểm duyệt bình luận, quản lý tài khoản, quản lý kho sách, quản lý các báo cáo.

- Người dùng: Tra cứu sách, đánh giá bình luận sản phẩm, mua sách, quản lý giỏ hàng, quản lý sách yêu thích, tương tác với Chatbot để thực hiện các yêu cầu liên quan

3. Phương pháp thực hiện

Đề tài được thực hiện bằng cách tìm hiểu, đánh giá các giải pháp đã có. Tìm ra những điểm hay và phù hợp với đề tài để kế thừa, cải tiến. Sau đó đề tài sẽ được bổ sung các tính năng mới, cần thiết để trở nên hoàn thiện và đáp ứng được nhu cầu thực tế của người dùng.

Ứng dụng mô hình thác nước vào quá trình phát triển phần mềm và chia thành các giai đoạn rõ ràng. Các công nghệ mới hữu ích cho đề tài sẽ được tìm hiểu ở giai đoạn đầu và triển khai trong suốt quá trình phát triển.

11

4. Ý nghĩa thực tiễn

Ứng dụng sẽ cung cấp môi trường để kết nối những người yêu sách với các hệ thống kinh doanh sách.

Người dùng tiếc kiệm chi phí, thời gian đến các cơ sách kinh doanh sách. Có công cụ để giải đáp thắc mắc, tìm kiếm sách và các nội dung liên quan trực quan và dễ dàng.

5. Kết quả dự kiến

Hiểu rõ về cú pháp, cách hoạt động của các framework liên quan như ReactJS, Flutter hay công cụ Dialogflow và ứng dụng một cách hợp lý vào xây dựng hệ thống kinh doanh sách. Tạo ra sản phẩm là ứng dụng chạy trên nền tảng Android cho khách hàng và Website quản lý cho Admin có đầy đủ các tính năng đã được thiết kế.

Cuối cùng, sản phẩm có độ hoàn thiện cao, giao diện thân thiện với người dùng, thời gian phản hồi nhanh, có khả năng mở rộng và sẵn sàng đưa vào môi trường thực tế.

6. Hiện trạng bài toán

Việc được đến tận nhà sách, cảm nhận chất liệu giấy, đọc những lời mở đầu mà tác giả gửi gắm vào cuốc sách là trải nghiệm mà người đọc nào cũng muốn có. Tuy nhiên, trong bối cảnh con người ngày càng bận rộn, thời gian mua sắm không nhiều, việc ngồi tại nhà, mua được một quyển sách chỉ thông qua vài thao tác là vô cùng thuận tiện. Hơn nữa trong thời điểm đại dịch Covid-19 vẫn còn đang diễn ra phức tạp thì việc ngoài và tìm cho mình một cuốn sách không phải là điều dễ dàng. Trong một số trường hợp, người đọc được bạn bè giới thiệu một quyển sách rất hay, nhưng không thể đến nhà sách ngay được, thì mua sách trực tuyến là một lựa chọn sáng suốt.

7. Các ứng dụng liên quan 7.1. Tiki 7.1. Tiki

12

13

Hình 2 Ứng dụng Tiki

− Là nền tảng thương mại điện tử bao gồm rất nhiều mặt hàng online, trong đó nổi bật nhất là sách.

− Ưu điểm:

+ Có mặt trên cả 2 nền tảng web và mobile (adsbygoogle = window.adsbygoogle || []).push({});

+ Tiki tạo niềm tin cho khách hàng bởi số lượng đầu sách phong phú, chất lượng, luôn áp dụng các chương trình khuyến mãi hấp dẫn như voucher giảm giá, mã giảm giá…

− Hạn Chế:

+ Không có các chức năng chuyên cho việc bán sách như phân loại sách, đánh giá nội dung của sách

+ Hệ thống Chatbot chưa trực quan, đầy đủ, chỉ như hệ thống tra cứu người dùng.

14

Hình 3 Website Fahasa

15

− Là trang web bán sách thuộc Fahasa (công ty sách nổi tiếng ở Việt Nam)

− Đây là trang web có hầu hết mọi đầu sách trên thị trường, đáp ứng đa số nhu cầu của khách hàng.

− Ưu điểm:

+ Hệ thống tìm kiếm chia ra các danh mục thể loại sách dễ dàng tìm kiếm đúng sở thích của khách hàng.

+ Có mặt trên cả 2 nền tảng web và mobile − Hạn chế:

+ Giao diện còn phức tạp và rối.

+ Chưa có hệ thống Chatbot để dễ dàng trao đổi, thực hiện các mục đích liên quan một cách trực quan

7.3. Vinabook

16

Hình 6 Ứng dụng Vinabook

− Vinabook.com là nhà sách trên mạng có số lượng đầu sách lớn nhất với hơn 60,000 tựa sách và đều cập nhật mới mỗi ngày.

− Ưu điểm:

+ Có mặt trên cả 2 nền tảng web và mobile

+ Là trang web đầu tiên tại Việt Nam cung cấp dịch vụ bán sách online − Hạn chế:

+ Giao diện đơn giản và không hiện đại

+ Chưa có hệ thống Chatbot để dễ dàng trao đổi, thực hiện các mục đích liên quan một cách trực quan mà chỉ thông qua trao đổi trực tiếp với nhân viên

7.4. Tổng kết

- Ưu điểm: Các hệ thống trên đều hỗ trợ người dùng trên đa nền tảng, hệ thống sách phong phú, đa dạng

17

+ Giao diện còn khá rối, bên cạnh đó có nhiều quảng cáo không cần thiết gây khó chịu cho người dùng

+ Hệ thống Chatbot hỗ trợ người dùng chưa có hoặc chưa đảm bảo trực quan, đẩy đủ các nhu cầu cần thiết với việc mua sách.

18

CHƯƠNG 3. KIẾN THỨC NỀN TẢNG 1. Kiến thức chung (adsbygoogle = window.adsbygoogle || []).push({});

1.1. Chatbot

Hình 7 Hình minh họa Chatbot

1.1.1. Khái niệm

Chatbot là một phần mềm máy tính được phát triển để có thể thảo luận hoặc trò chuyện với con người. Ví dụ, người dùng có thể đặt cho chatbot một câu hỏi hoặc một yêu cầu, và chatbot sẽ đưa ra phản hồi hay thực hiện một hành động tương ứng thông qua tin nhắn văn bản hoặc tin nhắn thoại`. Cách mà chatbot tương tác với người dùng gần giống với các cuộc đối thoại hằng ngày, nó sẽ dựa vào các từ khoá mà con người sử dụng để giao tiếp, học hỏi thông qua machine learning và ngày càng đưa ra các phản hồi cá nhân hoá hơn, giống thật hơn.

Tuy nhiên, đa số chatbot hiện nay yêu cầu sự bảo trì và kiểm tra liên tục, chúng thường không thể giao tiếp một cách tự nhiên như con người hay có thể vượt qua được Turing test (sẽ được giải thích ở phần sau).

19

Năm 1950, Alan Turing băn khoăn rằng liệu một chương trình máy tính có thể giao tiếp với một nhóm người mà khiến họ không nhận ra rằng người đối thoại là một máy tính nhân tạo không. Sự băn khoăn này được đặt tên là Turing test, được xem như là ý tưởng sơ khai nhất về chatbot.

Chatbot đầu tiên – ELIZA – được tạo ra bởi Joseph Weizenbaum (Viện Công nghệ Massachusetts, Mỹ) vào năm 1966. ELIZA mô phỏng lại hành vi của một nhà trị liêu tâm lý, phản hồi các câu nói của người dùng, dựa trên một kịch bản phỏng vấn có sẵn. Hiển nhiên, khả năng giao tiếp của ELIZA là cực kỳ hạn hẹp, nhưng đây là bước khởi đầu cho những phát triển vượt bậc của chatbot sau này.

Hình 8 Hội thoại minh họa Chatbot

Năm 1972, PARRY xuất hiện, được xây dựng bởi bác sĩ thần kinh người Mỹ Kenneth Colby. PARRY bắt chước các hành động của một bệnh nhân tâm thần phân liệt, nó là có nhiều cải tiến hơn so với ELIZA như việc có một “tính cách” như con người và có hệ thống điều khiển tốt hơn. PARRY hoạt động thông qua một hệ thống phức tạp các giả định, phản hồi bằng các “cảm xúc” dựa trên mức độ lời nói của người đối thoại.

20

Năm 1997, Jabberwacky được tạo ra bởi lập trình viên người Anh Rollo Carpenter là một trong những cấu trúc chatbot đầu tiên có sử dụng AI (trí tuệ nhân tạo). Nó sử dụng các mẫu ngữ cảnh sao cho phù hợp với các lựa chọn trước đó của người dùng.

Năm 2001, công nghệ chatbot thực sự tiến hoá với sự phát triển của SmarterChild. Đây là lần đầu tiên một chatbot có thể giúp con người trong các công việc hằng ngày như nó có thể thu thập dữ liệu từ database về lịch chiếu phim, tỉ số trận đấu thể thao, giá chứng khoán, tin tức và thời tiết.

Lần lượt những chatbot với khả năng vượt trội được ra mắt bởi các công ty lớn như Watson của IBM (2006), Siri của Apple (2010), Google Now của Google (2012), Alexa của Amazon (2015), Cortana của Microsoft (2015) ...

Đến năm 2016, chatbot xuất hiện ở khắp mọi nơi, Facebook ra mắt một nền tảng xây dựng chatbot cho Messenger, và hàng chục nghìn chương trình được tạo ra trong vòng vài tháng. Các dịch vụ nhắn tin khác như Slack, Telegram và Kik cũng làm như trên. Trong cùng năm, Apple mở iMessage cho các nhà phát triển bên thử ba. Công nghệ chatbot thực sự bùng nổ từ đây.

1.1.3. Các thành phần

Cấu tạo của chatbot cũng gồm những phần cở bản như các ứng dụng máy tính khác: - Cơ sở dữ liệu

- Tầng ứng dụng - Các API

1.1.4. Phân loại

Có 3 loại chatbot chính dựa trên cách vận hành:

- Chatbot đơn giản (simple chatbot): là chatbot có hành vi được xác định bởi các quy tắc cụ thể. Tại mỗi bước trong cuộc trò chuyện, người dùng cần phải chọn các tuỳ chọn có sẵn để xác định bước tiếp theo của cuộc trò chuyện. Với mỗi lựa chọn của người dùng, chatbot sẽ phản hồi lại dựa trên các kịch bản đã được sắp đặt sẵn.

21

Ví dụ: khi khách hàng muốn đặt mua trà sữa, chatbot sẽ đưa ra các lựa chọn cho khách hàng theo từng bước: đầu tiên chatbot sẽ hỏi khách hàng về hương vị trà sữa muốn mua, sau khi khách hàng chọn được hương vị mình thích, chatbot sẽ hỏi lần lượt về size, topping, độ lạnh… sau khi đã chọn xong ly trà sữa ưng ý sẽ là các câu hỏi về thông tin giao hàng và thanh toán.

- Chatbot thông minh (smart chatbot): là chatbot được xây dựng với các kỹ thuật trí tuệ nhân tạo. Chúng đối thoại tự do với người dùng, có thể hiểu được ý định, ngôn ngữ, tình cảm của người dùng. Những chatbot này cần được lập trình để giúp chúng hiểu được các ngữ cảnh giao tiếp. Chatbot thông minh phức tạp hơn nhiều và cần rất nhiều dữ liệu để tự học.

Ví dụ: trợ lý ảo là một biến thể của chatbot thông minh, chúng thu thập dữ liệu về các cuộc trò chuyện với mọi người trên thế giới để học và cải thiện khả năng giao tiếp. Lưu ý rằng để xây dựng được một trợ lý ảo thì khối lượng dữ liệu cần thu thập là khổng lồ, tuy nhiên trên lý thuyết, chatbot có thể hoạt động như một trợ lý ảo trên các web app.

- Chatbot hỗn hợp (hybrid chatbot): là chatbot kết hợp giữa chatbot đơn giản và chatbot thông minh. Simple chatbot và smart chatbot thể hiện hai thái cực rất khác nhau của chatbot. Chúng ta luôn muốn làm cho chatbot đơn giản trở nên thông minh hơn, và chatbot thông minh trở nên đơn giản hơn, chatbot hỗn hợp là sự kết hợp hoàn hảo của cả hai.

Ví dụ: để chẩn đoán tình trạng bệnh, bệnh nhân có thể mô tả các triệu chứng của mình cho chatbot thông qua các lựa chọn được hỏi, tuy nhiên, cơ thể con người là vô cùng phức tạp, đôi khi chỉ cần vài câu hỏi là bệnh tình của bệnh nhân đã có thể được chẩn đoán và đưa ra phương pháp điều trị thích hợp, nhưng có những trường hợp các kịch bản đặt sẵn không đáp ứng được nhu cầu của người bệnh, trí tuệ nhân tạo được sử dụng để phục vụ các trường hợp này.

1.1.5. Cách thức hoạt động

Chatbot là sự kết hợp của các kịch bản có trước và tự học trong quá trình tương tác. Người dùng sẽ tương tác với chatbot bằng tin nhắn văn bản, tin nhắn thoại hoặc bằng cử chỉ. Với các câu hỏi được đặt ra, Chatbot sử dụng các hệ thống xử lý ngôn ngữ tự nhiên (Natural

22 (adsbygoogle = window.adsbygoogle || []).push({});

Language Processing) để phân tích dữ liệu sau đó chúng lựa chọn các thuật toán học máy để đưa ra các loại phản hồi khác nhau, chúng sẽ dự đoán và phản hồi chính xác nhất có thể. Chatbot sẽ quét các từ khoá có trong câu lệnh của người dùng, xác định các ý định của người dùng, từ đó trích xuất dữ liệu từ database để có câu trả lời phù hợp nhất. Nếu tình huống đó chatbot không xác định được ý định của người dùng, chúng sẽ bỏ qua nhưng sẽ đồng thời tự thêm vào dữ liệu tự học để áp dụng cho các cuộc trò chuyện về sau.

Một trong các yếu tố nổi trội của chatbot là khả năng tự học. Càng đối thoại, tương tác với người dùng nhiều, nền tảng chatbot càng trở nên “thông minh” hơn. Chatbot thông minh có khả năng tự học hỏi dựa trên các dữ liệu đưa vào mà không cần phải được lập trình cụ thể (phương pháp máy học – Machine learning), điều này giúp cho các nhà phát triển tạo ra được các cuộc trò chuyện tự động với người dùng.

Hình 9 Chatbot - Cách thức hoạt động

1.2. Mô hình Client-Server 1.2.1. Khái niệm 1.2.1. Khái niệm

Mô hình client server (mô hình mạng máy khách – máy chủ) là một cấu trúc ứng dụng phân tán. Nó phân vùng các nhiệm vụ hay workload giữa các nhà cung cấp tài nguyên hoặc dịch vụ, gọi là server, và người yêu cầu dịch vụ (Client).

23

Trong kiến trúc Client Server, khi máy Client gửi yêu cầu dữ liệu đến Server thông qua Internet, server sẽ chấp nhận quy trình được yêu cầu. Sau đó gửi các gói dữ liệu được yêu cầu trở lại client. Client không chia sẻ bất kỳ tài nguyên nào của họ.

Một phần của tài liệu Xây dựng hệ thống kinh doanh sách trực tuyến với chatbot (khóa luận tốt nghiệp) (Trang 25)