Chương 1 giới thiệu tổng quan về chatbot, lịch sử phát triển của chatbot, xử lý ngôn ngữ tự nhiên, giải thuật cơ bản về xử lý ngôn ngữ tự nhiên, bài toán chat bot gợi ý địa điểm ăn uống cùng các vấn đề liên quan. Trí tuệ nhân tạo Trí tuệ nhân tạo hay trí thông minh nhân tạo (Artificial intelligence – viết tắt là AI) là một ngành thuộc lĩnh vực khoa học máy tính (Computer science). Là trí tuệ do con người lập trình tạo nên với mục tiêu giúp máy tính có thể tự động hóa các hành vi thông minh như con người. Trí tuệ nhân tạo khác với việc lập trình logic trong các ngôn ngữ lập trình là ở việc ứng dụng các hệ thống học máy (machine learning) để mô phỏng trí tuệ của con người trong các xử lý mà con người làm tốt hơn máy tính.
Cụ thể, trí tuệ nhân tạo 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,… Tuy rằng trí thông minh nhân tạo có nghĩa rộng như là trí thông minh trong các tác phẩm khoa học viễn tưởng, nó là một trong những ngành trọng yếu của tin học. Trí thông minh nhân tạo liên quan đến cách cư xử, sự học hỏi và khả năng thích ứng thông minh của máy móc. Lịch sử hình thành và phát triển của chatbot Thuật ngữ “Chatbot” dường như chỉ mới được đưa vào bảng từ vựng cách đây vài năm, nhưng dự kiến sẽ có đến 80% doanh nghiệp toàn cầu sẽ sử dụng chúng vào năm 2020. Nhưng có rất ít người biết rằng Chatbot có một lịch sử phát triển rất lâu đời từ những thập niên 50 của thế kỷ trước.
11 Năm: 2022 Trần Trung Hiếu Khoa: CNTT Hình 1.1: Chatbot qua các thời kỳ Trong sự phát triển nhanh như vũ bão của làn sóng cách mạng công nghiệp 4.0, nhiều chương trình dựa trên trí thông minh nhân tạo (AI) được biểu hiện dưới nhiều dạng như hình ảnh, âm thanh và giọng nói. Bots cũng sẽ có thể làm được nhiều thứ như con người và có khả năng thay thế con người, chẳng hạn như bán hàng, thanh toán hóa đơn, chẩn đoán bệnh tật, quản lý tài chính và cuối cùng là thấu hiểu cảm giác của con người. Sự phát triển của Chatbot trong thế kỷ XX 1. Năm 1950: Các phép thử Turing Alan Turing viết báo cáo với tựa đề “Computing Machinery and Intelligence”, xây dựng các phép thử Turing.
Về cơ bản, Các phép thử Turing là một loạt các phép thử dựa trên việc phân tích câu trả lời của một “máy tính”. Các phép thử Turing được thực hiện để xác định xem một chương trình máy tính có thể phân biệt được máy tính với con người trong một cuộc trò chuyện chỉ có văn bản thuần túy hay không? 12 Năm: 2022 Trần Trung Hiếu Khoa: CNTT Hình 1.2: Các phép thử Turing Bằng cách gõ câu hỏi cho cả hai đối tượng thử nghiệm, người thẩm vấn sẽ cố gắng xác định đối tượng nào là máy tính và đối tượng nào là con người. Máy tính sẽ vượt qua Các phép thử Turing nếu người thẩm vấn không thể nói sự khác biệt giữa chủ thể con người và máy tính. Năm 1966: ELIZA – Chương trình trò chuyện đầu tiên được tạo ra Joseph Weizenbaum xuất bản chương trình ELIZA, được coi là một trong những chương trình Chatbots đầu tiên trên thế giới.
ELIZA đã đạt được những thành tích đáng kể và được coi là thành tựu đỉnh cao về trí thông minh nhân tạo vào thời điểm đó. Bằng cách nhận ra các từ và cụm từ chính từ đầu vào (Input) của người dùng và đưa những câu trả lời tương ứng bằng cách sử dụng các tập lệnh viết sẵn. 13 Năm: 2022 Trần Trung Hiếu Khoa: CNTT Hình 1.3: Eliza - Chương trình trò chuyện đầu tiên được tạo ra Một trong những kịch bản này có tên là DOCTOR, cho phép ELIZA đảm nhận vai trò như một nhà tâm lý học hay một bác sỹ tâm thần. Chatbot ELIZA có thể được cải thiện và nâng cấp từng bước bằng cách chỉnh sửa các kịch bản Chatbot của ELIZA.
Khái niệm kịch bản Chatbots cũng được hình thành từ thời điểm này. Năm 1972: Bác sĩ Kenneth Colby phát triển chatbot PARRY Kenneth Colby là một bác sỹ tâm thần, ông phát triển PARRY (còn được gọi là “ELIZA với thái độ khác thường”). Trong khi ELIZA được biết đến với vai trò là một bác sĩ tâm thần, PARRY lại đảm nhận vai trò của những bệnh nhân bị tâm thần phân liệt hoang tưởng. Các bác sĩ tâm thần khi tham gia thử nghiệm đã không thể xác định sự khác biệt giữa những cuộc hội thoại của PARRY và những cuộc hội thoại khác giữa các bệnh nhân tâm thần với nhau.
Năm 1988: Chatbot Jabberwacky Được phát triển vào những năm 1980 và phát hành trực tuyến vào năm 1997, chatbot Jabberwacky được thiết kế để “Mô phỏng trò chuyện của con người tự nhiên theo cách thú vị và hài hước“. Mục đích ban đầu của dự án Chatbot 14 Năm: 2022 Trần Trung Hiếu Khoa: CNTT Jabberwacky là tạo ra một trí tuệ nhân tạo có khả năng vượt qua Các phép thử Turing. Nó được thiết kế để bắt chước tương tác của con người và thực hiện các cuộc hội thoại với người dùng. Mục đích cuối cùng của chương trình là chuyển từ một hệ thống dựa trên văn bản sang toàn bộ hoạt động bằng giọng nói.
Tác giả của nó tin rằng nó có thể được kết hợp vào các vật thể xung quanh nhà như robot, các thiết bị thông minh,… Trong khi tất cả các chatbot trước đó dựa trên cơ sở dữ liệu tĩnh để trả lời và trò chuyện, Jabberwacky thu thập cụm từ được sử dụng bởi những người tham gia trò chuyện với nó. Nó tự thêm những câu trả lời vào cơ sở dữ liệu và tự động phát triển nội dung của riêng mình. Trong năm 2008, Jabberwacky đã phát hành một phiên bản mới và đổi tên thành Cleverbot.4: Dr SBAITSO Được tạo ra bởi Creative Labs vào đầu những năm 1990, Dr SBAITSO là từ viết tắt của Sound Blaster Artificial Intelligent Text to Speech Operator). SBAITSO “trò chuyện” với người dùng như thể nó là một nhà tâm lý học.
Mặc dù hầu hết các câu trả lời của nó đều là “WHY DO YOU FEEL THAT WAY?” nghĩa là “Bạn cảm thấy như thế nào?”. Thay vì bất kỳ loại tương tác phức tạp, khi 15 Năm: 2022 Trần Trung Hiếu Khoa: CNTT đối mặt với một cụm từ mà nó không thể hiểu được, nó thường trả lời là “THAT’S NOT MY PROBLEM” (Đó không phải là vấn đề của tôi). Năm 1995: ALICE ALICE được xây dựng trên cùng một kỹ thuật được sử dụng để tạo nên ELIZA. ALICE ban đầu được sáng tạo bởi Richard Wallace, ra đời vào ngày 23 tháng 11 năm 1995.
Chương trình được viết lại bằng ngôn ngữ Java vào năm 1998. ALICEBOT sử dụng một lược đồ XML có tên AIML (Artificial Intelligence Markup Language- Ngôn ngữ đánh dấu trí thông minh nhân tạo) để xác định các quy tắc trò chuyện heuristic. Tuy nhiên, nó lại không thể vượt qua Các phép thử Turing. Những bước tiến dài của Chatbot đầu thế kỷ XXI Trong thập kỷ đầu tiên của thế kỷ 21, đã có những đột phá trong lĩnh vực học máy và trí thông minh nhân tạo.
Điều đó trở thành những nền tảng cho những bước phát triển vượt bậc. Trong khi các Chatbot trước đó đã dựa vào nhận dạng mẫu, các Chatbot thế kỷ 21 hoạt động dựa trên các thuật toán và nền tảng điện toán đám mây, cho phép chúng thích ứng và “học” dựa trên tương tác của chúng với con người. Mặc dù có những tiến bộ như vậy nhưng các chuyên gia AI vẫn chưa thể phát triển một chatbot có thể tư duy và giao tiếp thực sự với con người. Thay vào đó, họ tập trung vào việc xây dựng chatbot cho các mục đích cụ thể, chủ yếu là các trợ lý ảo có khả năng truy cập dữ liệu và trả lời các câu hỏi.
Giá trị sử dụng của các trợ lý ảo đã khích lệ nhiều đại gia lớn trong lĩnh vực công nghệ đầu tư vào chatbot. Bắt đầu với IBM và theo sau là Apple, Google, Amazon, Microsoft và Facebook. Năm 2006: IBM Watson IBM Watson được tạo ra với mục tiêu vượt lên và chiến thắng các thí sinh tham dự cuộc thi Jeopardy! Với khả năng chạy hàng trăm thuật toán phân tích ngôn ngữ cùng một lúc, IBM Watson sở hữu một sự thông minh ngôn ngữ đáng 16 Năm: 2022 Trần Trung Hiếu Khoa: CNTT ngạc nhiên. IBM thiết lập cho Watson có quyền truy cập vào cơ sở dữ liệu khổng lồ về thông tin.
Watson có thể nhanh chóng truy cập 200 triệu trang dữ liệu, làm cho nó trở thành một máy trả lời câu hỏi lý tưởng (hoặc, trong trường hợp của Jeopardy, Watson trở thành máy tạo câu hỏi lý tưởng). Rõ ràng, một hệ thống có thể nhanh chóng lấy thông tin dựa trên đầu vào đàm thoại cũng có thể cung cấp nền tảng cho việc tạo các trợ lý ảo mạnh mẽ. Hiện nay, IBM Watson phục vụ như là “bộ não” cho nhiều chatbots hoạt động trên nhiều ngành công nghiệp và lĩnh vực trên khắp thế giới. Năm 2010-2016: Thời kỳ bùng nổ các trợ lý ảo Nửa đầu thập kỷ này chứng kiến sự bùng nổ của các trợ lý cá nhân ảo: Siri (2010), Google Now (2012), Alexa (2015), Cortana (2015) và Google Assistant (2016).
Với khả năng phân tích và xử lý ngôn ngữ tự nhiên, các trợ lý này kết nối với các dịch vụ web để trả lời các câu hỏi và đáp ứng các yêu cầu của người dùng. Gần đây, Google Home và Amazon Echo đã bắt đầu trở thành các tính năng phổ biến trong các ngôi nhà của người Mỹ. Google Assistant và Alexa là cơ sở để cho các thiết bị thông minh trong ngôi nhà tương tác với người dùng. Các thiết bị thông minh Smart Devices kết nối với nhau tạo thành hệ thống Smart Home, cho phép người dùng ra lệnh và điều khiển bằng giọng nói của họ.
Từ năm 2016 đến nay: Chatbot Messenger bùng nổ Từ sau hội nghị F8 năm 2016, Facebook – mạng xã hội lớn nhất thế giới giới thiệu Messenger Platform. Một nền tảng thân thiện hơn và cho phép bất kỳ ai cũng có thể tạo cho mình một Chatbot. Ngay sau đó, các ứng dụng chat khác như LINE, WhatsApp, Telegram hay Twitter cũng đưa ra các hỗ trợ hoặc các API cho phép người dùng tạo các Chatbot trên ứng dụng nhắn tin. Nhưng WeChat của Trung Quốc mới chính là kẻ đi tiên phong trong lĩnh vực này khi cho ra mắt Xiaoice – chatbot khá hoàn thiện từ năm 2013.