chƯƠngdaotao.sict.udn.vn/uploads/2020/01/1578052329-do-an-co... · web viewtiền xử lý dữ...

31
ĐẠI HỌC ĐÀ NẴNG KHOA CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG ĐỒ ÁN CƠ SỞ 4 ĐỀ TÀI: TÌM HIỂU, NGHIÊN CỨU VÀ XÂY DỰNG CHATBOT Sinh viên thực hiện : LƯỜNG KHẮC TUẤN ANH Giảng viên hướng dẫn : ThS. NGUYỄN ANH TUẤN Lớp : 17IT1

Upload: others

Post on 03-Feb-2021

0 views

Category:

Documents


0 download

TRANSCRIPT

ĐẠI HỌC ĐÀ NẴNG

KHOA CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

ĐỒ ÁN CƠ SỞ 4

ĐỀ TÀI: TÌM HIỂU, NGHIÊN CỨU VÀ XÂY DỰNG CHATBOT

Sinh viên thực hiện: LƯỜNG KHẮC TUẤN ANH

Giảng viên hướng dẫn: ThS. NGUYỄN ANH TUẤN

Lớp : 17IT1

Đà nẵng, tháng 12 năm 2019

ĐẠI HỌC ĐÀ NẴNG

KHOA CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

ĐỒ ÁN CƠ SỞ 4

ĐỀ TÀI: TÌM HIỂU, NGHIÊN CỨU VÀ XÂY DỰNG CHATBOT

Đà Nẵng, tháng 12 năm 2019

MỞ ĐẦU

Trong bối cảnh nền công nghệ thông tin phát triển mạnh mẽ cùng với đó là cuộc cách mạng công nghiệp 4.0. Sự phát triển nhanh chóng của các lĩnh vực là một trong những động lực góp phần giúp cho ngành công nghệ thông tin được phát triển theo. Để đáp ứng được các nhu cầu từ các ngành với các lĩnh vực khác, nhiều công nghệ mới đã được ngành công nghệ thông tin phát triển ra, trong đó không thể không kể đến Trí tuệ nhân tạo – Học Máy (Machine Learning). Nó góp một phần rất lớn trong việc nâng cao chất lượng công việc, giúp nâng cao hiệu suất giúp cho công việc đạt hiệu quả cao hơn. Một trong số những ứng dụng của Trí tuệ nhân tạo có thể kể đến đó là ứng dụng chatbot. Người dùng có thể tạo ra một Bot đảm nhiệm trọng trách phân loại câu hỏi, phản hồi từ người dùng đồng thời trả lời những câu hỏi và phản hồi đó, giúp cho công việc đạt hiệu quả cao hơn, và tiết kiệm thời gian. Người dùng có thể tận dụng những thời gian đó để thực hiện những công việc khác, giúp nâng cao thu nhập.

LỜI CẢM ƠN

Lời đầu tiên, em xin cảm ơn đến toàn thể các quý thầy cô giáo khoa Công nghệ thông tin và truyền thông. Người đã luôn đồng hành cùng em trong những năm bước vào ngưỡng Đại học, giúp em học cách tự lập và tự mình tìm tòi những thứ mới. Thầy cô đã giúp em rất nhiều trong việc định hướng trong việc học tập.

Em cũng xin gửi lời cảm ơn đến Thầy Nguyễn Anh Tuấn, thầy đã định hướng giúp em có thể chọn được một đề tài phù hợp với khả năng của mình. Thầy đã giúp đỡ em trong việc giải đáp và tìm hiểu các thông tin mà em gặp vướng mắc không thể giải đáp được. Thầy đã hướng dẫn em trong việc chọn hướng giải quyết vấn đề mà em mắc phải.

Em xin gửi lời cảm ơn đến tất cả các bạn, người đã giúp đỡ em có thêm nhiều thông tin bổ ích cho đề tài của mình. Giúp em có thể giải đáp một số thắc mắc để em có thể hoàn thiện bài làm của mình.

Sinh viên

Anh

Lường Khắc Tuấn Anh

NHẬN XÉT

(Của giảng viên hướng dẫn)

………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………

Đà Nẵng, ngày … tháng … năm 20...

Giáo viên hướng dẫn

ThS. Nguyễn Anh Tuấn

MỤC LỤCCHƯƠNG 1.GIỚI THIỆU101.1 Tổng quan101.2Giới thiệu sơ lược về ChatBot101.2.1 Định nghĩa101.2.2 Tổng quan111.2.3 Nguyên lý hoạt động111.2.4 Các ứng dụng thường gặp111.2.5 Các lợi ích khi sử dụng Chatbot111.2.5 Các lĩnh vực thường được sử dụng121.3 Phương pháp, kết quả121.3Các mục tiêu đặt ra12CHƯƠNG 2.NGHIÊN CỨU TỔNG QUAN132.1Giới thiệu Python132.2Các ứng dụng132.3Các phương pháp132.4Tìm hiểu chi tiết132.4.1JSON132.4.1 NLTK142.4.3TFlearn142.4.4 Request15CHƯƠNG 3.TRIỂN KHAI XÂY DỰNG163.1Tiềm hiểu kiến thức tổng quát163.2 Tham khảo một số mô hình ChatBox có sẵn163.3 Lập trình và huấn luyện Bot174.3.1Lập kịch bản173.4 Hoàn thành huấn luyện, chạy thử, kiểm tra và sửa lỗi phát sinh, viết báo cáo và làm slide thuyết trình22KẾT LUẬN23Ưu điểm23Nhược điểm23Kết luận23Hướng phát triển23

DANH MỤC HÌNH

Hình 1.1: Cấu trúc JSON11

Hình 2.1: Kịch bản ở dạng JSON13

Hình 2.2:NLTK13

Hình 2.3: TFlearn14

Hình 2.4: Request14

Hình 3.1: Kịch bản17

Hình 3.2: Nạp dữ liệu17

Hình 3.3: Xử lý dữ liệu18

Hình 3.4: Chuyển đổi kiểu dữ liệu18

Hình 3.5: Neural network19

Hình 3.6: Lưu dữ liệu đã train19

Hình 3.7: Mở dữ liệu19

Hình 3.8: Tiền xử lý19

Hình 3.9: Kết quả request20

Hình 3.10: Giao diện20

Hình 3.11:Hàm chức năng21

Hình 3.12: Chạy anaconda21

Hình 3.13: Demo Chatbot22

DANH MỤC CỤM TỪ VIẾT TẮT

STT

Cụm từ

Viết tắt

1

NLTK

Natural Language Toolkit

2

JSON

JavaScript Object Noattion

3

HTTPS

HyperText Transfer Protocol Secure

4

AI

Artificial Intelligence

5

NLP

Natural Language Processing

CHƯƠNG 1.GIỚI THIỆU

1.1 Tổng quan

Đề tài: Tìm hiểu, nghiên cứu và thực hiện tạo một Chatbot.

Bối cảnh thực hiện đề tài:

· Trong thời đại công nghệ thông tin đang phát triển mạnh, việc mỗi người sở hữu cho mình một chiếc điện thoại thông minh là không hiếm. Nhu cầu sử dụng của người dùng không chỉ còn là nghe gọi mà còn cả vấn đề về tìm hiểu thông tin, mua sắm, trao đổi thông tin, công việc, …

· Từ những nhu cầu đó, nhiều dịch vụ bán hàng, tư vấn trực tuyến qua mạng, qua các ứng dụng đang ngày càng nhiều. Việc trực máy để có thể tiếp nhận thông tin phản hồi từ khách hàng và trả lời khách hàng là một công việc tốn nhất nhiều nhân công và thời gian. Đối với một cửa hàng lớn, lượng thông tin trung bình tiếp nhậ từ khách hàng là vô cùng lớn, dẫn đến việc phản hồi thông tin khách hàng bị chậm trễ, dẫn đến mất một lượng lớn khách hàng. Làm giảm lợi nhuận cho chính những cửa hàng đó.

Vấn đề cần giải quyết:

· Lượng thông tin phản hồi từ khách hàng là rất lớn. Những thông tin đó nằm trên nhiều nhóm thông tin khác nhau, những thông tin đó thuộc về các phần như chất lượng sản phẩm, dịch vụ tư vấn, dịch vụ bán hàng, các câu hỏi về sản phẩm,… Vì vậy việc phân loại các câu hỏi để chuyến hướng đến cho những nhân viên có chuyên ngành trả lời là mất rất nhiều thời gian.

Có những phản hồi từ khách hàng thuộc về phần hỏi đáp về thông tin sản phẩm, câu trả lời cho những câu hỏi loại này có thể được cài sẵn và trả lời một cách tự động. Từ đó có thể giảm được một phần lớn chi phí cho việc phản hồi thông tin cho khách hàng.

Đề xuất nội dung thực hiện:

· Đối với đề tài Tìm hiểu, nghiên cứu và thực hiện tạo một Chatbot. Việc trả lời tự động cho người dùng cũng là một việc quan trọng. Đối với đề tài này, em thực hiện tạo một với tên “Giải đáp thắc mắc về môn Lập trình cơ bản” nhằm giúp người dùng có thể giải đáp các thắc mắc liên quan đến những kiến thức cơ bản cho môn Lập trình cơ bản.

· Với chatbot này, em sẽ sử dụng ngôn ngữ lập trình Python cùng với các thư viện nltk, tflearn, tensorflow,...và sử dụng Sublimetext để lập trình, ngoài ra còn kết hợp với javascript và html để triển khai chatbot lên trình duyệt

1.2 Giới thiệu sơ lược về ChatBot

1.2.1 Định nghĩa

Chatbot là một chương trình kết hợp với trí tuệ nhân tạo (AI) để tương tác với con người. Công cụ này thường được sử dụng để thay thế cho nhân viên tư vấn trả lời những gì khách hàng thắc mắc. Chatbot thường trao đổi với người dùng qua hình thức tin nhắn (Textual) hoặc âm thanh (Audiotory).

1.2.2 Tổng quan

Hiện nay, phân theo khía cạnh dịch vụ, ta có thể chia ChatBot thành 2 loại chính:

+ ChatBot bán hàng: Là công cụ hỗ trợ bán hàng hoạt động 24/7. Chatbot cập nhật liên tục, giúp không bỏ sót đơn của khách hàng. Ưu điểm nổi bật là đơn giản, dễ sử dụng. Chatbot bán hàng không cần dùng các phần mềm xử lý ngôn ngữ tự nhiên mà chỉ có các tương tác đơn giản (text/image/gallery,…) để tương tác với khách hàng. Kịch bản trả lời cũng được xây dựng sẵn từ trước.

+ ChatBot chăm sóc khách hàng : Loại chatbot này thường được các trung tâm chăm sóc khách hàng lớn sử dụng để trả lời các câu hỏi thường gặp theo kịch bản hoặc dữ liệu có sẵn. Đối với những câu hỏi đơn giản, chatbot sẽ tự trả lời. Với các câu hỏi phức tạp hơn, chatbot sẽ chuyển đến nhân viên chăm sóc khách hàng để giải quyết. Trong quá trình hoạt động, chatbot sẽ tự học để đưa ra những câu trả lời chính xác và phù hợp với thực tế hơn.

1.2.3 Nguyên lý hoạt động

ChatBot giao tiếp với người dùng dựa trên một quy trình như sau:

Translator: Thông tin/yêu cầu của người dùng (user) sẽ được dịch lại bằng ngôn ngữ lập trình. Máy tính sau đó có thể hiểu được các công việc cần thực hiện.

Processor: Công nghệ AI tiến hành xử lý yêu cầu của người dùng.

Respondent: Máy tính nhận output từ AI và gửi trả cho người dùng kết quả tương ứng trên platform messenger.

1.2.4 Các ứng dụng thường gặp

Ngày nay, chatbot được ứng dụng rất rộng rãi trong các công việc sau:

+ Trợ lý cá nhân (Personal Assitant)

+ Giới thiệu sản phẩm, bán hàng, đặt chỗ

+ Chăm sóc khách hàng

+ Thanh toán trực tuyến 

+ Đưa ra kết quả tìm kiếm, cập nhật tin tức

1.2.5 Các lợi ích khi sử dụng Chatbot

Cá nhân hóa trải nghiệm bán hàng của ChatBot

Dựa trên các cơ sở dữ liệu thu thập được từ lịch sử giao dịch trước đó. ChatBot có khả năng ghi nhớ mọi thông tin cá nhân của khách hàng như: tên, tuổi, nghề nghiệp, sở thích,… Như vậy, ngay từ khi nhận diện được yêu cầu từ khách hàng, ChatBot sẽ có thể trả lời chính xác. Sau đó đưa ra các tư vấn mua sắm phù hợp cho từng cá nhân. Những tư vấn này dựa trên những sở thích, xu hướng mà họ quan tâm.

Giảm thiểu chi phí

ChatBot có thể thay thế con người đảm nhận toàn bộ nhiệm vụ từ giới thiệu sản phẩm, báo giá, đưa ra lời khuyên cho đến chốt đơn hàng, xin feedback,… từ đó, giúp bạn tiết kiệm được khoản lớn chi phí trả cho nhân viên sale, chăm sóc khách hàng. Theo nghiên cứu Juniper Research đến năm 2022, ChatBot sẽ có thể giúp các công ty tiết kiệm được khoảng 8 tỷ USD ngân sách dành cho việc chăm sóc khách hàng.

Phản hồi khách hàng nhanh chóng

Con người sẽ có lúc cần nghỉ ngơi nhưng ChatBot thì không. Một ChatBot có thể hoạt động 24/7 xuyên suốt 365 ngày. ChatBot còn tiếp nhận và xử lý yêu cầu khách hàng tự động, nhanh chóng. Điều này sẽ giúp tăng trải nghiệm mua sắm cho khách hàng và nâng cao tỷ lệ chốt đơn, từ đó tăng doanh số dễ dàng hơn

1.2.5 Các lĩnh vực thường được sử dụng

Đa số tất cả các lĩnh vực kinh doanh trực tuyến đều có thể sử dụng ChatBot để hỗ trợ việc bán hàng nhưng tiêu biểu nhất là các nhóm ngành sau:

+ Kinh doanh dịch vụ ẩm thực, ăn uống: nhà hàng, quán ăn, quán café,…

+ Kinh doanh thời trang: giày dép, quần áo, phụ kiện,…

+ Kinh doanh lĩnh vực làm đẹp: thẩm mỹ viện, mỹ phẩm,…

+ Lĩnh vực giáo dục – đào tạo: trung tâm ngoại ngữ, trung tâm dạy kỹ năng mềm,…

+ Các dịch vụ hỗ trợ: đặt vé/đặt phòng online, vận chuyển ,…

1.3 Phương pháp, kết quả

Phương pháp:

+ Xây dựng kịch bản cho chatbot ở dạng JSON

+ Sử dụng các thư viện và ngôn ngữ lập trình Python để xây dựng mô hình training cho chatbot sau đó sẽ xây dựng hệ thống phản hồi cho chatbot.

+ Xây dựng giao diện trên trình duyệt để người dùng có thể giao tiếp với bot một cách thuận tiện và dễ dàng.

+Kết quả: Người dùng có thể giao tiếp với chatbot theo kịch bản đã được xây dựng và đào tạo cho chatbot.

Hình 1.1: Cấu trúc JSON

1.3 Các mục tiêu đặt ra

· ChatBot có thể phản ứng và trả lới đúng kịch bản cho trước

· Có thể ứng dụng vào thực tế

· ChatBot có thể tư học tập và phát triển

· ChatBot có thể lưu trữ dư liệu khách hàng và đảm bảo bảo mật thông tin

CHƯƠNG 2.NGHIÊN CỨU TỔNG QUAN2.1 Giới thiệu Python

· Python là một ngôn ngữ lập trình bậc cao cho các mục đích lập trình đa năng, do Guido van Rossum tạo ra và lần đầu ra mắt vào năm 1991. Python được thiết kế với ưu điểm mạnh là dễ đọc, dễ học và dễ nhớ. Python là ngôn ngữ có hình thức rất sáng sủa, cấu trúc rõ ràng, thuận tiện cho người mới học lập trình.

· Python hoàn toàn tạo kiểu động và dùng cơ chế cấp phát bộ nhớ tự động. Python được phát triển trong một dự án mã mở, do tổ chức phi lợi nhuận Python Software Foundation quản lý. Ban đầu, Python được phát triển để chạy trên nền Unix. Nhưng rồi theo thời gian, Python dần mở rộng sang mọi hệ điều hành từ MS-DOS đến Mac OS, OS/2, Windows, Linux và các hệ điều hành khác thuộc họ Unix.

2.2 Các ứng dụng

· Làm web: Django framework. Udacity, youtube, dropbox được xây dựng (một phần lớn) sử dụng python.

· Làm game: Pygame. Có một game do người Việt làm là Millia 44 cũng được xây dựng + bằng python, đương nhiên python không phải là lựa chọn tốt nhất để xây dựng game.

· Máy học: Theano, tensorflow, scikit-learn...

· Khoa học máy tính: Python Opencv, numpys, panda, scipy...

· Lập trình cho bo mạch: Ardruino, raspberry pi.

2.3Các phương pháp

+ Cấu trúc dữ liệu JSON: Xây dựng dữ liệu để phục vụ cho việc training cho chatbot

+ NLTK: là thư viện hỗ trợ chatbot để chatbot có thể hiểu được ngôn ngữ tự nhiên

+ TFlearn: là thư viện học sâu giúp cho quá trình training diễn ra nhanh hơn

+ Request: có nhiệm vụ truyền nhận thông tin giữa bot và người dùng

2.4Tìm hiểu chi tiết2.4.1JSON

· Dữ liệu chủ yếu là text, có thể đọc được theo dạng cặp “thuộc tính – giá trị”.

· Về cấu trúc, nó mô tả một vật thể bằng cách bọc những vật thể con trong vật thể lớn hơn trong dấu ngoặc nhọn.

· JSON là một kiểu dữ liệu trung gian với mục đích là kịch bản để training cho chatbot

Hình 2.1: Kịch bản ở dạng JSON

2.4.1 NLTK

-Natural Language Toolkit(NLTK) là bộ công cụ để xử lý ngôn ngữ tự nhiên (Natural Language Processing(NLP))

· Với đề tài này thì NLTK sẽ được sử dụng để phân tách từng từ các dữ liệu lấy từ kịch bản

· Ví dụ:

Hình 2.2:NLTK

2.4.3TFlearn

· TFlearn là một thư viện học tập sâu mô-đun và minh bạch được xây dựng trên đỉnh của Tensorflow. Nó được thiết kế để cung cấp API cấp cao hơn cho TensorFlow nhằm tạo điều kiện thuận lợi và tăng tốc các thử nghiệm, trong khi vẫn hoàn toàn minh bạch và tương thích với nó.

· Với đề tài này sẽ sử dụng TFlearn để xây dựng 2 neural network để tăng tốc thời gian traning và đưa ra kết quả chính xác và phù hợp nhất.

Hình 2.3: TFlearn

2.4.4 Request

Trong đề tài này ta sử dụng đối tượng XMLHttpRequest để thực hiện việc giao tiếp giữa người dùng và bot.

Hình 2.4: Request

CHƯƠNG 3.TRIỂN KHAI XÂY DỰNG3.1Tiềm hiểu kiến thức tổng quát

· Thời gian : Từ 28/10 đến 03/11

· Tìm hiểu cái thông tin liên quan và chuẩn bị kiến thức về Chatbot và Python

· Khái niệm về ChatBot, phân loại và cách thức hoat động

· Các ứng dụng của ChatBot trong cuộc sống

+ Các ưu điểm khi sử dụng ChatBot

+ Các lĩnh vực sử dụng được ChatBot hiện nay

+ Tìm hiểu các thông tin về Python, các ứng dụng chính và các cú pháp cần thiết khi áp dụng Python để tạo nên ChatBot

3.2 Tham khảo một số mô hình ChatBox có sẵn

Hanafunnel: Được phát triển bởi Haravan, Chatbot Harafunnel giúp bạn chăm sóc và tương tác 24/7 với những khách hàng đã tiếp cận được qua các kênh bán hàng ngay trên Facebook Messenger. Tính đến tháng 6/2018, Harafunnel đã được dùng bởi 15.000 doanh nghiệp và thương hiệu, với hơn 35.000 Facebook Messenger Bots được tạo.

Shoplus: Được thành lập tại Việt Nam chưa lâu, nhưng với sự phát triển nhanh và mạnh, nền tảng Chatbot của Shoplus hiện nay cũng rất đáng cân nhắc khi đang cần tìm một Chatbot đáp ứng được nhu cầu trả lời tin nhắn, tương tác với khách hàng và tự động chốt đơn để không bỏ lỡ bất kỳ cơ hội nào.

Chatbot Shoplus sở hữu các lợi thế sau:

+ Comment to inbox – tự động inbox thông tin khi khách comment dưới bài viết

+ Kết nối fanpage dễ dàng, nhanh chóng

+ Tự động chốt đơn trong Facebook Messenger

+ Giao diện tiếng Việt và có thể chuyển đổi theo nhu cầu người dùng

+ Quản lý hiệu quả Comments và Inbox

+ Có nhiều tính năng hỗ trợ khác được tích hợp trong phần mềm

Sử dụng hoàn toàn miễn phí

Với nền tảng Chatbot của Shoplus, các chủ shop và doanh nghiệp có thể tối ưu hoá hiệu năng bán hàng, tiết kiệm được nguồn nhân lực và chăm sóc khách hàng dễ dàng hơn.

Chatfuel

Ưu điểm của Chatfuel:

+ Thiết lập bot dễ dàng với các block, không cần code

+ Kết nối dễ dàng đến Fanpage Facebook

+ Dễ dàng kết nối với các mạng xã hội, dịch vụ khác như Instagram, Twitter, Youtube, … bằng các plugins

+ Tích hợp mọi loại API vào trong 1 con chatbot, giúp các lập trình viên dễ dàng nâng cấp và cải tiến cho chatbot của bạn

+ Có thư viện mẫu (template) để bạn tham khảo

+ Hỗ trợ hơn 50 ngôn ngữ trên toàn thế giới

+ Hoàn toàn miễn phí

ManyChat

Những ưu điểm mà ManyChat :

+ Hoàn toàn miễn phí và không cần sử dụng code

+ Dễ dàng cài đặt lên Fanpage Facebook mà không cần tạo app hay đợi xét duyệt

+ Tạo chatbot không giới hạn

+ Lên kịch bản chatbot và cài đặt các tùy chọn nhanh

3.3 Lập trình và huấn luyện Bot

Thời gian : Từ 11/11/2019 đến khoảng 08/12/2019

4.3.1 Lập kịch bản

· Kịch bản được xây dựng cho chatbot bao gồm các tag, pattern và response

· Với các tag bao gồm các nội dung như chào mừng, tạm biệt, cảm ơn, hình thức thanh toán...

Hình 3.1: Kịch bản

3.3.2 Xây dựng mô hình training

· Đầu tiên sẽ nạp dữ liệu training

Hình 3.2: Nạp dữ liệu

· Sử dụng bộ công cụ NLTK để xử lý dữ liệu thành các word và sắp xếp dữ liệu

· Sử dụng bộ công cụ NLTK để xử lý dữ liệu thành các word và sắp xếp dữ liệu

Hình 3.3: Xử lý dữ liệu

Hình 3.4: Chuyển đổi kiểu dữ liệu

· Sau đó chuyển dữ liệu word thành number và thêm vào các mảng

· Xây dựng neural network

Hình 3.5: Neural network

· Cuối cùng ta sẽ lưu lại để sử dụng cho hệ thống phản hồi

Hình 3.6: Lưu dữ liệu đã train

3.3.3 Xây dựng hệ thống phản hồi

· Nạp dữ liệu kịch bản và mở dữ liệu đã training

Hình 3.7: Mở dữ liệu

· Tiền xử lý dữ liệu thành các word để hệ thống có thể hiểu được ý định của người dùng

Hình 3.8: Tiền xử lý

· Sử dụng hàm model.predict() để xác định request thuộc tag nào và đưa ra kết quả phù hợp trả về cho người dùng

Hình 3.9: Kết quả request

3.3.4 Xây dựng giao diện chatbot

Hình 3.10: Xây dựng giao diện chatbot

· Xây dựng hàm chức năng để giao tiếp với bot

Hình 3.11:Hàm chức năng

3.3.5 Chạy anaconda

Hình 3.12:Chạy anaconda

3.3.6 Chạy Demo

Hình 3.13: Demo Chatbot

3.4 Hoàn thành huấn luyện, chạy thử, kiểm tra và sửa lỗi phát sinh, viết báo cáo và làm slide thuyết trình

Thời gian : Từ 09/12/2019 đến 10/01/2020

KẾT LUẬNƯu điểm

Trong thời gian làm chatbot em nhận thấy mình đã học hỏi được rất nhiều kinh nghiệm trong lập trình.Bên cạnh đó trong thời gian làm Chabot em đã tiếp cận được những cách làm mới như kết hợp Python với HTML để làm ra được một sản phẩm cho riêng mình. Đó là thành công lớn nhất của em khi làm phần mềm Chatbot này.

Bên cạnh đó trong quá trình làm đã giúp em có thêm kinh nghiệm như tìm kiếm tài liệu, cách viết các câu lệnh rõ ràng và mạch lạc hơn…

Về phầm mềm chatbot: dễ ràng sử dụng, giao diện thân thiện với mọi người tạo nên được những hứng thú khi người sử dụng dùng, chạy ổn định đúng với nhũng gì người lập trình đã đề ra.

Sau khi Chatbot hoạt động ta có thể thấy được nhiều ưu điểm của nó trong thực tế:

+ Tiết kiệm thời gian: thay vì cần khá nhiều nhân viên cho việc trả lời và hẹn khách hàng, ta chỉ cần phần mềm Chabot này, chúng sẽ giúp ta trả lời các yêu cầu của khách hàng. Điều này giúp khách hang có những trải nghiệm thú vị hơn khi mua hàng.

+ Tiết kiệm chi phí: thay vì chả khá nhiều lương cho nhân viên, ta chỉ cần cài chatbot, từ đó chúng ta going như có những nhân viên làm mà không cần suy nghĩ về tiền lương hang tháng ta sẽ trả như thế nào.

Nhược điểm

Vì đang trong quá trình hoàn thành nên Chatbot còn nhiều sơ sót như:

+ Lỗi

+ Chatbot chỉ trả lời được những câu hỏi và các câu trả lời đã được lập trình sẵn

+ Có thể khiến khách hang thất vọng vì chúng chỉ trả lời được những gì đã được lập trình nên không đáp ứng được những gì khách hàng hỏi thêm.

Kết luận

· Ứng dụng chatbot vào các công việc như trả lời khách hàng tự động, các hoạt động giải đáp thắc mắc là một công việc góp rất nhiều lợi ích trong việc giảm nhân công cũng như tăng hiệu suất công việc.

· Chatbot hiện đang được rất nhiều người sử dụng, khiến cho nó ngày càng phát triển mạnh hơn, và ngày càng thông minh hơn. Nó có thể đưa ra các đáp án chính xác hơn trong nhiều lĩnh vực khác nhau thông qua việc học máy.

Hướng phát triển

· Đối với ứng dụng hiện tại, bot chỉ có thể trả lời được một vài câu hỏi được huấn luyện sẵn.

· Trong tương lai, để có thể đáp ứng được và giải quyết nhiều câu hỏi mà người dùng đưa ra, bot cần được đua ra để người dùng sử dụng trực tiếp từ đó có thể nhận được nhiều câu hỏi liên quan đến nhau giúp cho việc trả lời được diễn ra một cách chính xác hơn.

TÀI LIỆU THAM KHẢO

[1] Tech With Tim https://techwithtim.net/tutorials/ai-chatbot

[2] https://github.com/zake7749/Chatbot

[3] https://github.com/zhaoyingjun/chatbot/tree/master/chineseChatbotWeb-tf2.0

21