Đồ án Xây dựng hệ thống Chatbots tự động

MỤC LỤC  
MỤC LỤC ....................................................................................................................................... i  
LỜI CAM ĐOAN .........................................................................................................................iii  
LỜI CẢM ƠN ............................................................................................................................... iv  
LIỆT KÊ HÌNH VẼ ...................................................................................................................... v  
TÓM TẮT.....................................................................................................................................vii  
CHƢƠNG 1. TỔNG QUAN ........................................................................................................ 1  
1.1. Đặt Vấn Đề........................................................................................................................... 1  
1.2. Mục Tiêu .............................................................................................................................. 2  
1.3. Nội Dung Nghiên Cứu......................................................................................................... 2  
1.4. Giới Hạn ............................................................................................................................... 3  
1.5. Bố Cục.................................................................................................................................. 3  
CHƢƠNG 2. CƠ SỞ LÝ THUYẾT ........................................................................................... 4  
2.1. Giới Thiệu Về Tri Tuệ Nhân Tạo (AI – Artificial Intelligence)....................................... 4  
2.2. Chatbots................................................................................................................................ 4  
2.2.1. Khái niệm...................................................................................................................... 4  
2.2.2. Lịch sử ra đời................................................................................................................ 5  
2.2.3. Cấu tạo chatbot............................................................................................................. 9  
2.2.4. Phân loại chatbot. ....................................................................................................... 10  
2.2.5. Cách thức hoạt động................................................................................................... 10  
2.2.6. Một số nền tảng hỗ trợ phát triển cho chatbot.......................................................... 12  
2.2.7. Một số ứng dụng chatbot. .......................................................................................... 12  
2.2.8. Xu hướng phát triển.................................................................................................... 13  
2.3. Dialogflow.......................................................................................................................... 14  
2.3.1. Khái niệm.................................................................................................................... 14  
2.3.2. Lịch sử ra đời và hoạt động. ...................................................................................... 15  
2.4. Intents. ................................................................................................................................ 15  
2.4.1. Khái niệm.................................................................................................................... 15  
2.4.2. Phân loại...................................................................................................................... 15  
2.4.2.1. Ý định ngẫu nhiên - Casual Intents..................................................... 15  
2.4.2.2. Ý định nghiệp vụ - Business Intents. .................................................. 16  
2.5. Entities................................................................................................................................ 16  
2.6. Contexts.............................................................................................................................. 16  
i
2.7. Actions and Parameters..................................................................................................... 17  
CHƢƠNG 3: TÍNH TOÁN VÀ THIẾT KẾ. .......................................................................... 19  
3.1. Giới Thiệu. ......................................................................................................................... 19  
3.2. Thiết Kế Hệ Thống............................................................................................................ 19  
3.2.1. Thiết kế sơ đồ khối hệ thống. .................................................................................... 19  
3.2.2. Chức năng các khối hệ thống..................................................................................... 20  
CHƢƠNG 4. THI CÔNG HỆ THỐNG................................................................................... 24  
4.1. Giới Thiệu .......................................................................................................................... 24  
4.2. Lập Trình Hệ Thống.......................................................................................................... 24  
4.2.1. Sơ đồ và lưu đồ........................................................................................................... 24  
4.2.2. Phần mềm hệ thống.................................................................................................... 28  
4.2.2.1. Xây dựng chatbots cơ bản trên Dialogfow.......................................... 28  
4.2.2.2. Phần mềm PyCharm........................................................................... 35  
CHƢƠNG 5. KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ ............................................................. 41  
5.1. Tổng Quan Kết Quả Đạt Được ......................................................................................... 41  
5.2. Kết Quả Thực Tế ............................................................................................................... 41  
CHƢƠNG 6. KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN ....................................................... 60  
6.1. Kết Luận............................................................................................................................. 60  
6.2. Hướng Phát Triển .............................................................................................................. 60  
TÀI LIỆU THAM KHẢO.......................................................................................................... 62  
PHỤ LỤC ..................................................................................................................................... 63  
ii  
LỜI CAM ĐOAN  
Đề tài này là do chúng tôi tự thực hiện dựa vào một số tài liệu trước đó và  
không sao chép từ tài liệu hay công trình đã có trước đó.  
Người thực hiện đề tài  
Mai Vũ Xuân Trƣờng  
Nguyễn Thanh Tân  
iii  
LỜI CẢM ƠN  
Chúng em xin gửi lời cảm ơn chân thành đến Thầy Nguyễn Mạnh Hùng –  
Giảng viên Trường Đại học Sư phạm Kỹ thuật Tp.HCM đã tận tình hướng dẫn trong  
suốt thời gian làm luận văn tốt nghiệp. Thầy đã tạo rất nhiều điều kiện thuận lợi và cho  
những lời khuyên quý báu giúp chúng em hoàn thành tốt luận văn.  
Xin chân thành cảm ơn thầy cô giáo trong Trường Đại học Sư phạm Kỹ thuật  
Tp.HCM nói chung, các thầy cô trong Bộ môn Điện tử Công nghiệp nói riêng đã tận  
tình giảng dạy, truyền đạt cho chúng em những kiến thức quý báu và tạo điều kiện  
giúp đỡ trong suốt quá trình học tập trong những năm học vừa qua, giúp chúng em có  
được cơ sở lý thuyết vững vàng.  
Cuối cùng, chúng em xin chân thành cảm ơn gia đình và bạn bè, đã luôn tạo  
điều kiện, quan tâm, ủng hộ, giúp đỡ, động viên chúng em trong suốt quá trình học tập  
và hoàn thành đồ án tốt nghiệp.  
Xin chân thành cảm ơn!  
Người thực hiện đề tài  
Mai Vũ Xuân Trƣờng  
Nguyễn Thanh Tân  
iv  
LIỆT KÊ HÌNH VẼ  
Hình 1.1 Cách thức hoạt động của chatbots.................................................................2  
Hình 2.1 Tương tác giữa người dùng với Chatbot Eliza...............................................6  
Hình 2.2 Cách thức hoạt động của chatbots. .............................................................. 12  
Hình 2.3 Biểu tượng Dialogflow................................................................................ 14  
Hình 2.4 Input Context và Output Context................................................................. 17  
Hình 2.5 Tham số trong Dialogflow. ......................................................................... 18  
Hình 3.1 Sơ đồ hệ thống chatbots tự động. ................................................................ 19  
Hình 3.2 Sơ đồ quá trình truyền dữ liệu, thông tin. .................................................... 20  
Hình 3.3 Sơ đồ quá trình xử lý dữ liệu, thông tin thông qua Dialogflow. ................... 21  
Hình 3.4 Sơ đồ quá trình thực hiện truy vấn trên Webhook. ...................................... 22  
Hình 3.5 Sơ đồ kết nối các thiết bị điện với các chân của Raspberry.......................... 23  
Hình 3.6 Raspberry và sơ đồ chân. ............................................................................ 23  
Hình 4.1 Sơ đồ chương trình...................................................................................... 25  
Hình 4.2 Lưu đồ chương trình trên Dialogflow.......................................................... 27  
Hình 4.3 Giao diện Dialogflow ban đầu..................................................................... 28  
Hình 4.4 Lựa chọn GO TO CONSOLE. .................................................................... 29  
Hình 4.5 Đăng nhập Dialogflow qua Google. ............................................................ 29  
Hình 4.6 Chọn tài khoản để đăng nhập Dialogflow.................................................... 30  
Hình 4.7 Giao diện chính của Dialogflow.................................................................. 30  
Hình 4.8 Tạo tác nhân................................................................................................ 31  
Hình 4.9 Tạo mục đích. ............................................................................................. 32  
Hình 4.10 Thêm phản hồi.......................................................................................... 33  
Hình 4.11 Chạy thử ví dụ........................................................................................... 34  
Hình 4.12 Logo Pycharm........................................................................................... 35  
Hình 4.13 Giao diện Pycharm.................................................................................... 36  
Hình 4.14 Tải Pycharm từ website............................................................................. 36  
Hình 4.15 Đặt tên và nơi lưu trữ project. ................................................................... 37  
Hình 4.16 Tạo file Python.......................................................................................... 37  
Hình 5.1 Các tham số trong intents được hiển thị....................................................... 41  
Hình 5.2 Các cụm từ huấn luyện trong intents được hiển thị...................................... 42  
Hình 5.3 Các entities được trích xuất......................................................................... 42  
Hình 5.4 Entities Devide được trích xuất................................................................... 43  
Hình 5.5 Entities on-off được trích xuất..................................................................... 43  
Hình 5.6 Lời chào...................................................................................................... 44  
Hình 5.7 Lời hỏi thăm 1............................................................................................. 44  
Hình 5.8 Lời hỏi thăm 2............................................................................................. 45  
Hình 5.9 Phản hồi của chatbots.................................................................................. 46  
Hình 5.10Phản hồi của chatbots................................................................................. 46  
Hình 5.11 Ảnh chụp thiết bị điện khi chưa điều khiển. .............................................. 47  
Hình 5.12 Yêu cầu bật đèn 1 hiển thị trên Dialogflow. .............................................. 48  
Hình 5.13 Đèn 1 sáng khi người dùng yêu cầu bật..................................................... 49  
v
Hình 5.14 Yêu cầu tắt đèn 1 hiển thị trên Dialogflow. ............................................... 50  
Hình 5.15 Đèn 1 tắt khi người dùng yêu cầu tắt......................................................... 51  
Hình 5.16 Yêu cầu bật đèn 2 hiển thị trên Dialogflow. .............................................. 52  
Hình 5.17 Đèn 2 sáng khi người dùng yêu cầu bật..................................................... 53  
Hình 5.18 Yêu cầu tắt đèn 2 hiển thị trên Dialogflow. ............................................... 54  
Hình 5.19 Đèn 2 tắt khi người dùng yêu cầu tắt......................................................... 55  
Hình 5.20 Yêu cầu bật motor hiển thị trên Dialogflow............................................... 56  
Hình 5.21 Motor quay khi người dùng yêu cầu bật quay motor. ................................ 57  
Hình 5.22 Yêu cầu tắt motor hiển thị trên Dialogflow. .............................................. 58  
Hình 5.23 Motor tắt khi người dùng yêu cầu ngừng quay motor................................ 59  
vi  
TÓM TẮT  
Trong những năm gần đây, khoa học công nghệ đang dần tiến đến một tầm cao  
mới. Mặc dù còn mới mẻ trong lĩnh vực khoa học và công nghệ nhưng Chatbots đang  
được nghiên cứu và phát triển với tốc độ chóng mặt bởi các trung tâm nghiên cứu, các  
trường đại học và học viện.... rất nhiều các lĩnh vực được ứng dụng công nghệ mới  
này. Chatbots là một hình thức thô sơ của phần mềm trí tuệ nhân tạo, là một chương  
trình được tạo ra từ máy tính tiến hành cuộc trò chuyện thông qua các phương pháp  
nhập văn bản, âm thanh, cảm ứng có thể trả lời các câu hỏi và xử lý các tình huống, là  
một công cụ có thể giao tiếp, tương tác với con người thông qua một trí tuệ nhân tạo  
đã được lập trình sẵn. Có rất nhiều công cụ cũng như thư viện hỗ trợ cho Chatbots  
như: Dialogflow, Wit.ai, Watson Conversation Service, Microsoft „s LUIS, Google  
Natural Language API, Amazon Lex,...  
Đề tài: “Xây dựng hệ thống Chatbots tự động” chủ yếu xây dựng trên ngôn ngữ  
Python, nhận thông tin từ Dialogflow, trả lời tự động và thực hiện yêu cầu điều khiển  
các thiết bị điện phục vụ cho việc trồng trọt.  
vii  
CHƢƠNG 1: TỔNG QUAN  
CHƢƠNG 1. TỔNG QUAN  
1.1. Đặt Vấn Đề  
Trong những năm gần đây, mặc dù còn mới mẻ trong lĩnh vực khoa học và công  
nghệ nhưng Chatbots đang được nghiên cứu và phát triển với tốc độ nhanh chóng bởi  
các trung tâm nghiên cứu, trường đại học và học viện…với rất nhiều ứng dụng trên các  
lĩnh vực khác nhau như: giải trí, y tế, thương mại, tự động hóa,... Kể từ khi chatbots  
được phát triển mạnh mẽ vào năm 2016, nó đã nhanh chóng trở thành một trong những  
xu hướng công nghệ được quan tâm nhất trong giai đoạn đó và cho đến nay. Trên thực  
tế cho thấy, sự gia tăng của chatbots đã dẫn đến dự đoán của Gartner (công ty nghiên  
cứu và tư vấn công nghệ thông tin hàng đầu thế giới, cung cấp cái nhìn sâu sắc liên  
quan đến công nghệ cần thiết cho khách hàng để đưa ra những quyết định đúng đắn  
mỗi ngày) rằng hơn 85% tương tác của khách hàng sẽ được quản lý mà không cần con  
người vào năm 2020.  
Chatbots phát triển dựa trên 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. Ta sẽ tương tác với chatbots qua nền tảng tin nhắn. Với các  
câu hỏi được đặt ra, Chatbots sử dụng các hệ thống xử lý ngôn ngữ tự nhiên (Natural  
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ể. Chatbots sử dụng nhiều hệ thống quét các từ khoá bên trong đầu vào, sau  
đó bot khởi động một hành động, kéo một câu trả lời với các từ khóa phù hợp nhất  
và trả lời thông tin từ một cơ sở dữ liệu / API, hoặc bàn giao cho con người. Nếu tình  
huống đó chưa xảy ra (không có trong dữ liệu), Chatbot sẽ bỏ qua nhưng sẽ đồng  
thời tự học để áp dụng cho các cuộc trò chuyện về sau.  
Một trong các yếu tố làm nên sức mạnh của Chatbot là khả năng tự học hỏi. Càng  
được sử dụng, tương tác với người dùng nhiều, nền tảng Chatbot càng “thông minh”.  
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ể (đó được gọi là phương pháp máy học - Machine Learning).  
Chính điều này làm cho các nhà phát triển dễ dàng tạo các chương trình trò chuyện và  
tự động hoá các cuộc trò chuyện với người dùng.  
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP  
1
CHƢƠNG 1: TỔNG QUAN  
Hình 1.1 Cách thức hoạt động của chatbots  
Hiện nay, Chatbots đang được ứng dụng rộng rãi trong các lĩnh vực đời sống con  
người, mà trong đó phải kể đến là việc giúp ích cho quá trình tự động hóa các quy  
trình chiếu sáng (đóng mở đèn tự động), tưới tiêu, quản lý thời gian, cây trồng,... phục  
vụ cho nông nghiệp giúp giảm thiểu công sức, chi phí và thời gian.  
Và Dialogflow là một trong những công cụ hỗ trợ mạnh cho Chatbots, giúp  
người dùng xây dựng được những hệ thống tự động và tối ưu. Xuất phát từ mục tiêu  
tiếp cận, bổ sung các kiến thức mới, cũng như cũng cố lại những kỹ năng kiến thức  
trong suốt quá trình học tập tại trường, đồng thời nghiên cứu sâu hơn về công cụ  
Dialogflow và ứng dụng Dialogflow cho việc tự động hóa các quy trình. Do đó, nhóm  
thực hiện đồ án chọn đề tài: “Xây dựng hệ thống Chatbots tự động”.  
1.2. Mục Tiêu  
Trong luận văn này, mục tiêu chính của đề tài là tìm hiểu về hệ thống chatbots và  
ứng dụng của chatbots cho đời sống, cụ thể qua việc xây dựng hệ thống trên nền tảng  
của Dialogflow và ngôn ngữ Python cũng như ý tưởng về mô hình tương tác giữa  
người với máy thông qua hệ thống chatbots tự động để điều khiển các thiết bị điện.  
1.3. Nội Dung Nghiên Cứu  
NỘI DUNG 1: Tìm hiểu về Chatbots, Dialogflow, Intents, Entities, Contexts,  
Actions and Parameters, Training Phrase, Fulfillment.  
NỘI DUNG 2: Vẽ sơ đồ khối của Chatbots, Vẽ lưu đồ của Dialogflow.  
NỘI DUNG 3: Nghiên cứu webhook trong Dialogflow để kết nối với Pycharm và  
lấy dữ liệu file json của Dialogflow đưa vào Webhook.  
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP  
2
CHƢƠNG 1: TỔNG QUAN  
NỘI DUNG 4: Tìm hiểu về Raspberry, cài hệ điều hành và đưa code xuống  
Raspberry.  
NỘI DUNG 5: Nghiên cứu ngôn ngữ python trên giao diện Pycharm, tìm hiểu về  
ngrok để kết nối Dialogflow với Raspberry.  
NỘI DUNG 6: Đánh giá kết quả thực hiện.  
NỘI DUNG 7: Viết báo cáo luận văn tốt nghiệp.  
1.4. Giới Hạn  
Tìm hiểu về Chatbots và ứng dụng Chatbots vào hệ thống vườn rau để thực hiện  
các yêu cầu một cách tự động.  
Hệ thống bao gồm việc đóng mở tự động các công tắc đèn và motor tưới rau  
thông qua các yêu cầu từ Dialogflow.  
Hệ thống hoạt động thông qua việc tương tác giữa người với máy tính và gửi các  
yêu cầu xuống cho phần cứng thực hiện.  
Kết quả thu được bao gồm việc trả lời tự động từ máy tính, các tín hiệu của đèn  
và motor thông qua yêu cầu người dùng.  
1.5. Bố Cục  
Chƣơng 1: Tổng Quan.  
Chương này trình bày đặt vấn đề dẫn nhập lý do chọn đề tài, mục tiêu, nội dung  
nghiên cứu, giới hạn và bố cục đồ án.  
Chƣơng 2: Cơ Sở Lý Thuyết.  
Giới thiệu về Chatbots, Dialogflow, Intents, Entities, Contexts, Actions and  
Parameters, Training Phrase, Fulfillment.  
Chƣơng 3: Thiết Kế và Tính Toán.  
Xây dựng sơ đồ khối hệ thống, chức năng của từng khối.  
Chƣơng 4: Thi Công Hệ Thống.  
Thiết kế Chatbots trên Dialogflow, viết chương trình trên Python bằng  
Pycharm, kết nối dữ liệu giữa Dialogflow với Pycharm, chạy chương trình trên  
Raspberry.  
Chƣơng 5: Kết Quả, Nhận Xét và Đánh Giá.  
Các kết quả đạt được khi thực hiện chương trình, phân tích, nhận xét, đánh giá  
kết quả thu được.  
Chƣơng 6: Kết Luận và Hướng Phát Triển.  
Tóm tắt những kết quả đạt được, những hạn chế và nêu lên các hướng phát triển  
trong tương lai.  
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP  
3
CHƢƠNG 2: CỞ SỞ LÝ THUYẾT  
CHƢƠNG 2. CƠ SỞ LÝ THUYẾT  
2.1. Giới Thiệu Về Tri Tuệ Nhân Tạo (AI – Artificial Intelligence).  
Ngày nay thì trí tuệ nhân tạo thì có mặt ở khắp mọi nơi. Trí tuệ nhân tạo là xu  
hướng mà các hãng công nghệ lớn đang hướng đến như Google, Facebook, Amazon,  
Microsoft,... Các hãng đó đều đầu tư rất lớn vào trí tuệ nhân tạo nhắm tạo ra các sản  
phẩm phục vụ cho lợi ích của con người.  
Trí tuệ nhân tạo là trí tuệ được biểu diễn bởi bất cứ một hệ thống nhân tạo nào.  
Thuật ngữ này thường dùng để nói đến các máy tính có mục đích không nhất định và  
ngành khoa học nghiên cứu về các lý thuyết và ứng dụng của trí tuệ nhân tạo. Nó liên  
quan đến việc cư xử, sự học hỏi, khả năng thích ứng thông minh của máy móc.  
Bellman (1978) định nghĩa: trí tuệ nhân tạo là tự động hoá các hoạt động phù hợp  
với suy nghĩ con người, chẳng hạn các hoạt động ra quyết định, giải bài toán, …  
Rich anh Knight (1991) thì cho rằng: Trí tuệ nhân tạo là khoa học nghiên cứu  
xem làm thế nào để máy tính có thể thực hiện những công việc mà hiện con người còn  
làm tốt hơn máy tính.  
Mỗi khái niệm, định nghĩa đều có điểm đúng riêng, nhưng để đơn giản chúng ta  
có thể hiểu trí tuệ nhân tạo là một ngành khoa học máy tính. Nó xây dựng trên một nền  
tảng lý thuyết vững chắc và có thể ứng dụng trong việc tự động hóa các hành vi thông  
minh của máy tính. Giúp máy tính có được những trí tuệ của con người như: biết suy  
nghĩ và lập luận để giải quyết vấn đề, biết giao tiếp do hiểu ngôn ngữ, tiếng nói, biết  
học và tự thích nghi.  
Nó là thứ giúp ta sử dụng để trả lời tin nhắn tự động, học cách lái xe, lái máy  
bay để chúng ta có thể ngồi đó quan sát không cần phải điểu khiển, sắp xếp lại các ảnh  
của những chuyến đi chơi khác nhau vào những cuốn album riêng biệt, thậm chí AI  
còn giúp chúng ta quản lí nhà của khi đi vắng hoặc đi mua sắm nữa.  
2.2. Chatbots  
2.2.1. Khái niệm.  
Chatbot là một hình thức thô sơ của phần mềm trí tuệ nhân tạo, là một chương  
trình được tạo ra từ máy tính tiến hành cuộc trò chuyện thông qua các phương pháp  
nhập văn bản, âm thanh, cảm ứng có thể trả lời các câu hỏi và xử lý các tình huống, là  
một công cụ có thể giao tiếp, tương tác với con người thông qua một trí tuệ nhân tạo  
đã được lập trình sẵn.  
Trong đa số các trường hợp thì chatbot được sử dụng qua ứng dụng nhắn tin để  
nói chuyện với con người. Nó có khả năng trả lời những câu hỏi mà người dùng để ra,  
thông thường lúc ban đầu thì nó sẽ dựa vào những từ khóa trong câu hỏi của người  
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP  
4
CHƢƠNG 2: CỞ SỞ LÝ THUYẾT  
dùng để trả lời và dân dần nó sẽ học hỏi được thêm từ trải nghiệm người dùng và làm  
những cuộc trò chuyện tiếp xúc với con người trở nên cá nhân hơn, giống thật hơn.  
Ví dụ 1: Nếu như bạn muốn nhắn tin để tìm kiếm thông tin một sản phẩm của  
một cửa hàng hoặc công ty đã tạo Chatbot, bạn chỉ việc nhập vào từ khoá, chúng sẽ lập  
tức tìm và hiện kết quả thông tin sản phẩm cho bạn. Đôi khi thuật ngữ “Chatbot” được  
sử dụng để chỉ các trợ lý ảo nói chung hoặc cụ thể là chỉ chương trình máy tính trả lời  
tự động trên nền tảng tin nhắn (Messaging Platform).  
Ví dụ 2: Nếu như bạn đã hỏi “trợ lý ảo” Siri của Apple hay Cortana của  
Microsoft một vấn đề gì đó như: “Thời tiết hôm nay như thế nào?”, là bạn đã làm việc  
với một ChatBot.  
2.2.2. Lịch sử ra đời.  
a. Turning Test: 1950.  
Phép thử Turing được ra đời năm 1950 bởi Alan Turing. Phép thử  
Turing là một bài kiểm tra khả năng trí tuệ của máy tính. Mô hình chuẩn của  
phép thử Turing, trong đó người chơi C, đóng vai trò là người chất vấn, có  
nhiệm vụ xác định người chơi A và B, bên nào là máy tính, bên nào là con  
người bằng cách đặt các câu hỏi và nhận câu trả lời từ A và B. Phép thử Turing  
dựa trên giả thiết rằng người ta có thể đánh giá tính "thông minh" của máy tính  
bằng cách so sánh hành vi của nó với hành vi của con người. Câu hỏi đặt ra là:  
kết quả của phép thử có thể phản ánh thực tế, trong khi chỉ xem xét tới hành vi  
và so sánh với hành vi con người? Vì lý do này và những lý do khác, các nhà  
nghiên cứu trí tuệ nhân tạo đã đặt câu hỏi về tính hữu dụng của phép thử. Trong  
thực tế, kết quả của thử nghiệm có thể dễ dàng bị chi phối không phải bởi tính  
thông minh của máy tính, mà do kỹ năng, thái độ hoặc sự ngây thơ của người  
hỏi.  
b. Dartmouth Conferences: 1956  
Năm 1956, một hội thảo nghiên cứu mang tên Dartmouth về Trí tuệ nhân  
tạo được tổ chức, thiết lập AI là một lĩnh vực nghiên cứu. Hội thảo được tổ  
chức bởi Trợ lý Giáo sư Toán học John McCarthy và được kéo dài khoảng 6  
đến 8 tuần.  
c. Eliza: 1966.  
Chatbot đầu tiên ra đời năm 1960, tên là Eliza, và là một chương trình  
máy tính của Joseph Weizenbaum (Viện Công nghệ Massachusetts, Mỹ).  
Chương trình được thiết kế theo cách bắt chước cuộc trò chuyện của con  
người. Chatbot Eliza hoạt động bằng cách chuyển các từ mà người dùng đã  
nhập vào máy tính và sau đó ghép nối chúng vào danh sách các câu trả lời có  
kịch bản. Nó sử dụng một kịch bản mô phỏng một nhà tâm lý trị liệu. Kịch bản  
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP  
5
CHƢƠNG 2: CỞ SỞ LÝ THUYẾT  
được chứng minh là một tác động đáng kể đến việc xử lý ngôn ngữ tự nhiên và  
trí thông minh nhân tạo và là một trong những chương trình đầu tiên có thể  
vượt qua bài kiểm tra Turing.  
Hình 2.1 Tương tác giữa người dùng với Chatbot Eliza.  
d. Parry: 1972.  
Parry được xây dựng bởi bác sĩ tâm thần người Mỹ Kenneth Colby vào  
năm 1972. Chương trình bắt chước một bệnh nhân tâm thần phân liệt. Nó cố  
gắng để mô phỏng bệnh. Nó là một chương trình ngôn ngữ tự nhiên tương tự  
như suy nghĩ của một cá nhân. Parry hoạt động thông qua một hệ thống phức  
tạp các giả định, phân bổ và “phản ứng cảm xúc” được kích hoạt bằng cách  
thay đổi trọng số được gán cho các đầu vào bằng lời nói. Trong cùng năm đó,  
Parry và Eliza đã “gặp” và “nói chuyện” với nhau tại Hội nghị Quốc tế về  
Truyền thông Máy tính ở Washington DC.  
e. Chinese Room: 1980.  
Chinese Room (còn được hiểu là căn phòng tiếng Trung Quốc) là một thí  
được đề xuất vào năm 1980 nhằm thách thức cái gọi là trí thông minh nhân tạo.  
Searle tưởng tượng rằng mình ở trong phòng gồm những hộp đựng chữ Trung  
Quốc. Ông hoàn toàn không biết nghĩa của những chữ này, nhưng bên cạnh  
chúng là một cuốn sách hướng dẫn về tiếng Trung Quốc. Nếu như có  
một người nào đó nói tiếng Trung Quốc nói chuyện với ông qua cửa căn phòng  
trên thì ông có thể dựa vào sự hướng dẫn của cuốn sách đó để trò chuyện lại với  
người đó cũng qua cửa của căn phòng. Searle cho rằng một máy tính được lập  
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP  
6
CHƢƠNG 2: CỞ SỞ LÝ THUYẾT  
trình tốt đến mấy thì cũng chỉ là sự mô phỏng tiếng Trung Quốc chứ không thể  
là sự hiểu ngôn ngữ đó. Vì vậy, ông cho rằng máy tính không hề thông minh.  
f. Dr. Sbaitso: 1992.  
Dr. Sbaitso là một chabot được tạo ra bởi Creative Labs cho MS-Dos  
vào năm 1992. Đây là một trong những nỗ lực sớm nhất của việc kết hợp AI  
vào một chatbot và được công nhận cho chương trình trò chuyện có lời thoại  
đầy đủ. Chương trình "trò chuyện" với người dùng như một nhà tâm lý học, hầu  
hết các câu hỏi thường là "Bạn cảm thấy như thế nào?" chứ không phải là  
những tương tác phức tạp. Khi gặp phải những câu thoại phức tạp, Dr. Sbaitso  
thường trả lời "Không phải là vấn đề của tôi".  
g. Alice: 1995.  
Alice là một chatbot xử lý ngôn ngữ phổ thông sử dụng mẫu tương tác  
heuristic để thực hiện các cuộc hội thoại. Trong đó, Heuristic là các thuật toán  
dựa trên kinh nghiệm để giải quyết vấn đề, học hỏi hay khám phá nhằm đưa ra  
một giải pháp ở mức nhận thức thông thường. Năm 1995, Richard Wallace đi  
tiên phong trong việc xây dựng Alice.  
Chương trình làm việc với lược đồ XML được gọi là ngôn ngữ đánh dấu  
thông minh nhân tạo (AIML), giúp xác định các quy tắc trò chuyện. Năm 1998,  
chương trình đã được chỉnh sửa bằng Java và vào năm 2001, Wallace đã cụ thể  
hóa đặc tả của AIML trong Alice. Từ đó, các nhà phát triển khác đã soạn thảo  
các nguồn Alice miễn phí và mở rộng bằng các ngôn ngữ lập trình khác nhau và  
một loạt các ngôn ngữ nước ngoài.  
h. Jabberwacky: 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 hình thức sớm nhất của AI dựa trên cuộc trò chuyện của con  
người. Được xây dựng chủ yếu như một hình thức giải trí, Carpenter cũng dự  
định Jabberwacky có khả năng vượt qua bài kiểm tra Turing.  
i. SmarterChild: 2001.  
SmarterChild, bot thông minh được phát triển bởi ActiveBuddy, Inc.  
được phát hành trên các nền tảng tin nhắn, SMS và nhanh chóng trở nên phổ  
biến. SmarterChild được đánh giá cao qua việc đứng đầu danh sách bạn bè AIM  
của hàng triệu trẻ em và người lớn trên khắp thế giới cho đến khi công nghệ  
được xếp sau khi Microsoft mua lại công ty.  
k. GooglyMinotaur: 2001.  
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP  
7
CHƢƠNG 2: CỞ SỞ LÝ THUYẾT  
GooglyMinotaur, một bot AOL Instant Messenger, được phát triển bởi  
ActiveBuddy để quảng cáo cho album thứ năm của Radiohead, Amnesiac. Bản  
phát hành của nó đánh dấu một trong những phiên bản đầu tiên của chương  
trình được sử dụng cho các phương tiện thương mại. Sau khi trò chuyện với gần  
một triệu người về nội dung liên quan đến Radiohead, bot đã bị tắt.Nguyên  
nhân chưa được xác định.  
l. Watson của IBM: 2006.  
Siêu máy tính của IBM Watson, được đặt tên theo CEO đầu tiên của  
công ty, được phát triển với khả năng trả lời các câu hỏi được đặt ra bằng ngôn  
ngữ tự nhiên. Trong năm 2011, máy tính đã cạnh tranh trên chương trình trò  
chơi Jeopardy đánh bại cựu người chiến thắng Brad Rutter và Ken  
Jennings. Cho đến ngày nay, Watson được cung cấp cho vô số các doanh  
nghiệp trên các ngành nghề khác nhau.  
m. Siri: 2010.  
Siri, trợ lý thoại cá nhân thông minh của Apple, được phát triển bởi Siri  
Inc. và được phát hành dưới dạng ứng dụng độc lập. Sau khi được Apple mua  
lại trong năm đó, chương trình đã được tích hợp vào iOS, với khả năng tương  
tác với một số ứng dụng mặc định của Apple. Ngày nay, Siri có thể được sử  
dụng trên các ứng dụng trong iOS, watchOS, tvOS và macOS của Apple.  
n. Google Now: 2012.  
Google Now, trợ lý cá nhân thông minh của Google, được phát hành cho  
Android. Sử dụng giao diện người dùng ngôn ngữ tự nhiên, bot có thể trả lời  
các câu hỏi, đưa ra các đề xuất và thực hiện các hành động trên các dịch vụ web  
khác nhau. Vào năm 2016, một phiên bản phát triển của Google Hiện hành có  
khả năng tham gia vào một cuộc đối thoại hai chiều, được gọi là Trợ lý Google,  
đã được công bố.  
o. Alexa của Amazon: 2015.  
Alexa là một trợ lý cá nhân thông minh được phát triển bởi Amazon. Nó  
được giới thiệu vào năm 2014 và hiện được tích hợp vào các thiết bị như  
Amazon Echo, Echo Dot, Echo Show và nhiều hơn nữa. Tất cả những gì bạn  
phải làm là nói "Alexa, chơi nhạc nào đó" hoặc "Alexa, tìm cho tôi một nhà  
hàng Ý" và nó sẽ giúp bạn.  
Chỉ cần sử dụng âm thanh giọng nói của bạn, bạn có thể tìm kiếm trên  
web, phát nhạc, tạo danh sách việc cần làm hoặc mua sắm, đặt báo thức, chơi  
audiobook, nhận tin tức hoặc báo cáo thời tiết, kiểm soát sản phẩm nhà thông  
minh của bạn và hơn thế nữa.  
p. Cortana của Microsoft: 2015.  
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP  
8
CHƢƠNG 2: CỞ SỞ LÝ THUYẾT  
Tương tự như với Siri của Apple, Microsoft phát hành trợ lý cá nhân thông  
minh của riêng họ, Cortana. Cortana có sẵn trong nhiều ngôn ngữ, Cortana phục  
vụ như là một thành phần quan trọng của hệ điều hành của Microsoft  
"makeover".  
q. Tay: 2016.  
Microsoft phát hành một chatbot thông minh, có tên là Tay, trên Twitter  
dưới sự quản lý @TayandYou. Được thiết kế để bắt chước các mẫu ngôn ngữ  
của một cô gái mười chín tuổi và học hỏi từ việc tương tác với người dùng  
Twitter, Tay sớm được biết đến với tên gọi “The AI with zero Chill” khi nó bắt  
đầu thể hiện hành vi xúc phạm. Nó đã được gỡ xuống chỉ 16 giờ sau khi ra mắt.  
r. Betaworks Botcamp: 2016.  
Betaworks thông báo chương trình hạt giống trước 90 ngày cho phần  
khởi động chatbot. Mười công ty được chấp nhận, mỗi công ty nhận được 200  
nghìn đô la và một văn phòng để làm việc tại không gian Studio Betaworks ở  
NYC.  
s. Facebook / Slack / Telegram / KIK / Apple Bots Launch: 2016.  
Bots ở khắp mọi nơi. Facebook thông báo một nền tảng để xây dựng bot  
cho Messenger, và hàng chục ngà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ư  
vậy. Sau đó trong năm, Apple mở iMessage cho các nhà phát triển bên thứ  
ba. Bots đã chính thức được tiếp cận gần hơn.  
t. Roko Labs Instabot: 2017.  
Roko Labs khởi chạy Instabot, một nền tảng để tạo chatbot của riêng bạn  
mà bạn có thể khởi chạy trên các ứng dụng di động, trang web và email hiện có.  
2.2.3. Cấu tạo chatbot.  
Cấu tạo cơ bản của Chatbot gồm có ba phần bao gồm: cơ sở dữ liệu, lớp ứng dụng,  
quyền truy cập vào các API và giao diện đồ họa người dùng. Nhờ những thành phần  
cơ bản đó mà nó có thể hoạt động được.  
- Cơ sở dữ liệu: Cơ sở dữ liệu lưu trữ các thông tin, dữ liệu và nội dung.  
- Tầng ứng dụng: Các giao thức của tầng ứng dụng thường được dùng để trao  
đổi dữ liệu giữa các chương trình chạy trên máy nguồn và máy đích. Tầng này  
đóng vai trò như cửa sổ dành cho hoạt động xử lý các trình ứng dụng, nó biểu  
diễn những dịch vụ hỗ trợ trực tiếp các ứng dụng người dùng, chẳng hạn  
như phần mềm chuyển tin, truy nhập cơ sở dữ liệu và email, v.v…  
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP  
9
CHƢƠNG 2: CỞ SỞ LÝ THUYẾT  
- Giao diện lập trình ứng dụng (API): là một giao diện mà một hệ thống máy tính  
hay ứng dụng cung cấp để cho phép các yêu cầu dịch vụ có thể được tạo ra từ  
các chương trình máy tính khác, và/hoặc cho phép dữ liệu có thể được trao đổi  
qua lại giữa chúng.  
2.2.4. Phân loại chatbot.  
Có 2 loại Chatbot chính:  
- Chatbot viết kịch bản (Scripted chatbot): Đây là những ChatBot có hành vi  
được xác định bởi các quy tắc. Tại mỗi bước trong cuộc trò chuyện, người dùng  
sẽ cần chọn các tùy chọn rõ ràng để xác định bước tiếp theo trong cuộc trò  
chuyện. Các cách tùy chọn được trình bày cho người dùng ở mỗi bước trong  
cuộc hội thoại, tức là liệu họ cần phản hồi bằng một văn bản, giọng nói hoặc  
cảm ứng thì sẽ phụ thuộc vào các tính năng của nền tảng trò chuyện mà người  
dùng đang sử dụng và thiết kế của Chatbot.  
- Chatbot thông minh (Intelligent Chatbot): Chatbot thông minh là Chatbot được  
xây dựng với các kỹ thuật nhân tạo trí thông minh. Trí tuệ nhân tạo (AI) cho  
phép chúng cải thiện linh hoạt hơn về đầu vào người dùng mà chúng có thể thu  
nhận. Chúng có thể thu nhận đầu vào dạng tự do dưới hình thức trình bày bằng  
văn bản hoặc giọng nói và cũng không giới hạn các dạng đầu vào khác nếu nó  
có ý nghĩa.Ví dụ: Khi bạn muốn mua quần áo, Bot sẽ tự đông hỏi bạn một danh  
sách câu hỏi về phong cách quần áo ưa thích của bạn và sẽ đưa ra mẫu gợi ý và  
giá của mặt hàng.  
2.2.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. Ta sẽ tương tác với Chatbot qua nền tảng tin nhắn. 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 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ử dụng nhiều hệ thống quét các từ khoá bên trong đầu vào, sau đó bot khởi  
động một hành động, kéo một câu trả lời với các từ khóa phù hợp nhất và trả lời thông  
tin từ một cơ sở dữ liệu / API, hoặc bàn giao cho con người. Nếu tình huống đó chưa  
xảy ra (không có trong dữ liệu), Chatbot sẽ bỏ qua nhưng sẽ đồng thời tự học để áp  
dụng cho các cuộc trò chuyện về sau.  
Một trong các yếu tố làm nên sức mạnh của Chatbot là khả năng tự học hỏi.  
Càng được sử dụng, tương tác với người dùng nhiều, nền tảng Chatbot càng “thông  
minh”. 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ể (đó được gọi là phương pháp máy học - Machine  
Learning). Chính điều này làm cho các nhà phát triển dễ dàng tạo các chương trình trò  
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP  
10  
CHƢƠNG 2: CỞ SỞ LÝ THUYẾT  
chuyện và tự động hoá các cuộc trò chuyện với người dùng. Để biết thêm chi tiết về  
các ý tưởng và khái niệm đằng sau Chatbot ta xem sơ đồ quá trình sau:  
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP  
11  
CHƢƠNG 2: CỞ SỞ LÝ THUYẾT  
Hình 2.2 Cách thức hoạt động của chatbots.  
2.2.6. Một số nền tảng hỗ trợ phát triển cho chatbot.  
- Dialogflow.  
- Wit.ai.  
- Watson Conversation Service.  
- Microsoft „s LUIS.  
- Google Natural Language API.  
- Amazon Lex.  
- ...  
2.2.7. Một số ứng dụng chatbot.  
- Giải trí: Các Chatbot giải trí trực tuyến tốt nhất dựa trên AI có thể là Mitsuku,  
Rose, Insomno Bot…người dùng có thể nói chuyện tương tác với chúng hàng  
giờ, nó trả lời câu hỏi của bạn theo cách nhân văn nhất và hiểu được tâm trạng  
của bạn với ngôn ngữ bạn đang sử dụng.  
- Thời tiết: Poncho là ChatBot được thiết kế để trở thành một chuyên gia thời tiết,  
ngoài dự báo thời tiết chúng còn gửi cảnh báo khi thời tiết xấu với sự chấp  
thuận của người dùng.  
- Từ thiện: Để nâng cao nhận thức của con người về cuộc khủng hoảng nước ở  
Ethiopia (dưới 50% dân số được sử dụng nước sạch), tổ chức từ thiện:  
Nước hợp tác với Lokai để tạo ra Yeshi. Yeshi là một ChatBot đại diện các cô  
gái trẻ ở Ethiopia, người phải đi bộ 2,5 giờ mỗi ngày để tìm nước sạch. Khi ai  
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP  
12  
CHƢƠNG 2: CỞ SỞ LÝ THUYẾT  
đó bắt đầu trò chuyện với bot, Yeshi sẽ gửi hình ảnh, video, clip âm thanh và  
bản đồ để tạo ra trải nghiệm cảm xúc sâu sắc giúp người dùng khám phá ra thực  
tế khắc nghiệt của người Ethiopia như Yeshi.  
- Nhà hàng và các ngành bán lẻ: Khách hàng được Chatbot chào đón và được  
cung cấp các tùy chọn menu như: chọn vị trí chổ ngồi, thanh toán và được  
thông báo khi nào họ có thể bắt đầu lấy thức ăn của họ.  
gồm quản lý thời gian, dịch vụ khách hàng và giảm chi phí nhân lực. Chúng có  
thể giúp khách hàng với các câu hỏi cơ bản và yêu cầu. Chúng có thể được lập  
trình để trò chuyện với khách bằng các ngôn ngữ khác nhau, làm cho các khách  
hàng nói chuyện bằng ngôn ngữ địa phương của mình dễ dàng hơn.  
- Y tế: Chatbot này sẽ hỏi về các triệu chứng, các thông số cơ thể và lịch sử y tế,  
sau đó biên soạn một danh sách các nguyên nhân gây ra hầu hết các triệu chứng  
và xếp hạng chúng theo thứ tự nghiêm trọng. Chatbot có thể hướng dẫn bệnh  
nhân điều trị các bệnh có thể được chữa khỏi mà không cần đến bác sĩ.  
- Hàng không: bạn có thể nhận tài liệu chuyến bay của mình qua Messenger, bao  
gồm xác nhận đặt vé, thông báo đăng ký, thẻ lên máy bay, và cập nhật trạng  
thái chuyến bay.  
- Nông nghiệp: Chatbots giúp ích cho việc tự động hóa các quy trình chiếu sáng  
(đóng mở đèn tự động), tưới tiêu, quản lý thời gian, cây trồng,...  
2.2.8. Xu hƣớng phát triển.  
Chatbot sẽ bùng nổ và sẽ là một hiện tượng mới trong tương lai gần. Việc tiếp  
thị, quảng bá sản phẩm của doanh nghiệp dựa trên chatbot sẽ dễ dàng hơn và tự nhiên  
hơn rất nhiều. Bên cạnh đó, người dùng cũng cảm thấy thú vị hơn, không còn cảm giác  
như đó là một phương thức quảng cáo nữa.  
Mặc dù chatbot không thể mang lại khả năng trải nghiệm toàn bộ ứng dụng  
nhưng nó có thể tạo ra cách tiếp cận mới hơn, linh hoạt hơn, thuận tiện hơn và đáp ứng  
yêu cầu nhanh hơn cho người dùng, đặc biệt là người dùng di động. Ví dụ, thay vì phải  
tải về và đăng ký một ứng dụng chuyên dụng nào đó, bạn chỉ cần gửi một đoạn văn  
bản đến "bot" và yêu cầu chúng hành động như mua vé xem phim, gọi taxi… hay đơn  
giản là đọc tin tức mới nhất thời điểm đó.  
Như vậy, trong tương lai gần, các dịch vụ định hướng và chatbot có thể hòa hợp  
với nhau nhằm nâng cao trải nghiệm người dùng. Và nó sẽ không “gây nên sự sợ hãi  
cho loài người” như các chuyên gia đã cảnh báo về mối đe dọa của trí tuệ nhân tạo  
(AI).  
Sự kết hợp giữa Chatbot với trí tuệ nhân tạo (AI) và các công nghệ tiên tiến  
khác sẽ là một xu hướng phát triển mạnh mẽ cho Chatbot trong tương lai như có thể  
phát triển chúng thành một nền tảng riêng như hệ điều hành.  
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP  
13  
Tải về để xem bản đầy đủ
pdf 70 trang yennguyen 25841 Free
Bạn đang xem 20 trang mẫu của tài liệu "Đồ án Xây dựng hệ thống Chatbots tự động", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdfdo_an_xay_dung_he_thong_chatbots_tu_dong.pdf