05/09/2018, 14:44

Tôi đã xây dựng chatbot trong 2 giờ như thế nào ? Và đây là những gì tôi đã học được

Chúng ta dành khoảng 5 tiếng đồng hồ cho smartphone mỗi ngày (theo nghiên cứu từ Flurry). Thống kê này còn cho biết thêm một thông tin thú vị khác, khoảng 65% thời gian này được dành cho các hoạt động liên quan đến truyền thông như: mạng xã hội, nhắn tin, gửi email và gọi điện thoại. ...

Chúng ta dành khoảng 5 tiếng đồng hồ cho smartphone mỗi ngày (theo nghiên cứu từ Flurry). Thống kê này còn cho biết thêm một thông tin thú vị khác, khoảng 65% thời gian này được dành cho các hoạt động liên quan đến truyền thông như: mạng xã hội, nhắn tin, gửi email và gọi điện thoại. Con số chính xác là 3 giờ 15 phút, mỗi ngày.

Điều này sẽ khiến bạn suy nghĩ lại những quyết định của mình. Bạn có định khởi nghiệp bằng việc xây dựng ứng dụng dành cho thiết bị di động? Chắc chắn rằng bạn sẽ cạnh tranh với hàng triệu ứng dụng khác để có mặt trong top 35% ứng dụng nhận được sự quan tâm của người dùng. Và đặc biệt đừng quên các khoản chi phí phát sinh liên quan đến nó.

Hầu hết các chuyên gia tin rằng hướng phát triển của các ứng dụng là chatbot “sống” bên trong ứng dụng. Họ hiện đang mở rộng chức năng của các nền tảng lớn hơn như Facebook hoặc Telegram và người dùng không cần phải cài đặt một ứng dụng phụ trên điện thoại. Đây sẽ là điều có lợi cho cả hai bên. Ngoại trừ nhà phát triển. Có hai câu hỏi luôn tồn tại trong suy nghĩ tôi:

  • Xây dựng một bot là vô dụng nhìn từ góc độ kinh doanh
  • Xây dựng một bot thì tương đối khó từ góc độ kỹ thuật.

Để có được đáp án cho câu hỏi hóc búa này, tôi đã bắt đầu một số nghiên cứu. Tôi tự mình nghiên cứu khoảng một tháng, kết hợp trao đổi với các chuyên gia, lượm lặt các bộ tool và tổng hợp lại để cuối cùng xây dựng một bot trong khoảng 2 giờ. Cuộc hành trình này là nhiệm vụ của bản thân tôi để tìm ra đáp án cho 2 câu hỏi trên và có thêm động lực để thực hiện nó.

Cuộc hành trình bắt đầu

Khi tôi bắt đầu viết bài này, tôi không biết gì về bot. Tôi đã có kiến thức nền, sau quá trình làm việc với AI và biết cách làm việc với NLP. Phần lớn lý do khiến tôi bắt đầu nghiên cứu chatbots là để tìm hiểu thêm về những lỗ hổng trong kiến thức của tôi về lĩnh vực đặc biệt này.

Để hạn chế suy nghĩ bị trì trệ hãy luôn khiến tâm trí bạn hoạt động không ngừng nghỉ.

Mục tiêu của tôi bây giờ là nhằm giải thích giả thuyết đầu tiên của tôi về ngành công nghiệp chế tạo bot – rằng đó là một công việc không có doanh thu. Sau khi tìm hiểu đôi chút, tôi đã có thể tìm thấy Botlist – một bộ sưu tập số lượng lớn các bot. Trong khi tìm kiếm mục tiêu duy nhất của tôi là dự đoán và hợp lý hóa quyết định của nhà phát triển để chọn nền tảng bot trên nền tảng ứng dụng để giải quyết vấn đề của họ. Làm thế nào để khiến bot có thể tạo ra doanh thu?

Tôi đã được trao đổi với Mitsuku và tất nhiên đó là cuộc trò chuyện rất thú vị. Sau đó, vị tiến sĩ AI dường như đang có cách giải quyết tương đối tốt. Rightclick.io đã tốt hơn nhưng vẫn hơi chậm đối với tôi. Tìm hiểu qua rất nhiều bot, từ Hangman đến TVakis, chúng dường như khá hữu dụng trong cách tiếp cận của chúng. Dường như sự phát triển vẫn còn chưa ổn định và ý tưởng thì chưa phát triển. Phần tốt nhất là tôi đã có đủ ý tưởng để thực hiện chatbot của riêng tôi khi nhận thấy được những vấn đề mà họ đang cố gắng để giải quyết.

Đâu là con đường trong tương lai?

Ngành công nghiệp bot hiện đang ở giai đoạn khởi đầu và tất cả đều cạnh tranh để tìm ra ứng dụng “hit” kế tiếp làm cho chatbot trở thành xu hướng. Hiện tại chưa có ai thống trị được lĩnh vực chatbot. Đây vẫn còn là một sân chơi công bằng cho tất cả.

Tôi đã nói chuyện với rất nhiều người để tìm hiểu xem chúng tôi thực sự đang ở trong tương lai như thế nào. Theo ý kiến của các chuyên gia mà tôi đã trò chuyện thì tốn khoảng từ 2 đến 5 năm cho đến khi chúng tôi tìm thấy một ứng dụng thực sự có thể cạnh tranh với chatbot. Tuy nhiên công nghệ thì luôn phát triển, thậm chí những ứng dụng chatbot tốt nhất của ngày hôm nay có thể trở nên lỗi thời vì những thông báo mới hơn dến từ những nghiên cứu về AI và NLP.

Nó có nghĩa là nếu mọi chuyện diễn ra đúng theo giả thuyết thì bất cứ ai cũng có thể tạo ra ứng dụng “hit” tiềm năng. Ngay bây giờ, các chatbot tôi thực hiện, dường như có thể làm những điều khá đơn giản nhưng về bản chất thì chúng chỉ thay thế cho GUI. Hai điều mà tôi nhận thấy đặc biệt tốt đẹp là:

  • Nếu thực hiện một tác vụ nhiều hơn 2 bước trên giao diện người dùng, chatbot sẽ cung cấp trải nghiệm người dùng tốt hơn.
  • Các điểm trong giao diện người dùng, mà nhiệm vụ chỉ là một tìm kiếm đơn giản và khai thác, chatbot dường như là thừa thải. Tóm tắt:

Cho dù bạn viết một UI hoặc một chatbot, nó không quan trọng. Người dùng sẽ chỉ quan tâm đến giải pháp của bạn nếu chúng tiết kiệm được thời gian.

Quyết định xây dựng một chatbot thay vì một ứng dụng thực sự mang lại hiệu quả kinh doanh. Tiết kiệm thời gian trong dòng chảy UI. Phần tiếp theo trong chuyến hành trình của tôi là thực hiện một bot để xem làm thế nào thực sự phát triển.

Đào tạo bot

Việc xây dựng một chatbot giống như việc giải quyết một trò chơi ghép hình . Tôi chỉ cần tìm ra những mảnh phù hợp và những công cụ cần thiết để xây dựng nó. Trong khi tôi có một số câu đố tương đối khó, tôi vẫn còn chút nhầm lẫn về việc bắt đầu như thế nào. Tôi có một danh sách test gồm hai hạng mục.

  • Bot nên nói chuyện như một người thực sự: có nghĩa là nó phải hiểu được ngôn ngữ tự nhiên.
  • Bot có thể giải quyết một trường hợp phức tạp: có nghĩa là nó phải làm điều gì đó đòi hỏi nhiều hơn hai bước để làm trong giao diện người dùng.

Luôn giữ những tiêu chí này trong tâm trí, để xác định các chương trình này khó hay dễ xây dựng. Vì tôi là một newbie trong việc xử lý ngôn ngữ tự nhiên, tôi có thể hình dung ra hướng tiếp cận chúng một cách gián tiếp phù hợp cho hầu hết chúng ta.

Sau khi liệt kê qua một số vấn đề, cuối cùng tôi đã chọn làm một chatbot để tính chính xác các ngày từ chuỗi ngôn ngữ tự nhiên. Ví dụ: nó sẽ chấp nhận các đầu vào như “6 ngày kể từ bây giờ là ngày mấy?”, “Cho tôi 5 tuần sau tháng 9” và cho tôi ngày tôi tìm kiếm.

Một kiến trúc đơn giản cho một bot như thế này:

Theo hướng dẫn này, tôi đã có thể tạo ra một hệ thống phân loại ý định sử dụng NLP cơ bản và neural net dựa trên softmax trong chưa đầy 2 giờ (bao gồm cài đặt Tensorflow trên máy Windows). Sau khi ý định đã được xác định, chuỗi sẽ được phân tích cú pháp đầu vào cho tôi ngày tôi muốn. Tôi muốn thêm ngày đầu vào phân tích cú pháp và đưa cho tôi bằng module NLP nữa, nhưng bây giờ tôi sẽ cho nó hoạt động để chứng minh khái niệm.

Nhập vào bằng natural language Các kết quả. Quả là một chatbot kiệm lời

Thành thật mà nói, nó không khó. Với nền tảng Messenger của Facebook và nền tảng Bot của Telegram, các khả năng được cung cấp bởi api.ai, wit.ai và recast.ai – một số người trong các bạn có thể làm được việc đó nhanh hơn tôi.

Đó là một cách học gián tiếp. Tuy nhiên có điều gì ở đây?

Đó là một bài tập đơn giản để học hỏi cái gì đó một cách có phương pháp. Và sau đó phát triển một sản phẩm mô phỏng cho khái niệm. Tôi cảm thấy như vậy rất tốt.

Câu chuyện muối và tiêu

Làm một chatbot để sử dụng cho cá nhân đã giúp tôi khám phá khả năng của bản thân. Mọi người đang giải quyết rất nhiều vấn đề của họ với giao diện người dùng nhóm như đặt vé du lịch, khách sạn, vé xem phim, đặt hàng thực phẩm … Kinh nghiệm người dùng có thể được cải thiện bằng cách đưa vào giao diện người dùng bot. Thông tin về platform mới thực sự kích thích tôi. Đó là thời đại khi Facebooks và Whatsapps nổi lên.

Tôi tin vào một tương lai không xa, mọi thứ sẽ được thực hiện thông qua một bot tương tác như trong phim Her. Nó sẽ hiệu quả hơn, chỉ với một chạm trên màn hình điện thoại.

Trò chơi chatbot chắc chắn là một xu hướng mới nổi. Vẫn còn rất nhiều tranh cãi xung quanh việc nó có phải chỉ là trào lưu hay không?

Nhưng sau tất cả , những Bot tốt hơn vẫn đang được tạo ra mỗi ngày.

Techtalk Via hackernoon.com

0