Tạo chatbot với Microsoft Bot Framework và Azure Service

Microsoft Bot Framework là một bộ công cụ phát triển bot do Microsoft tạo ra nhằm xây dựng các chatbot để sử dụng qua các kênh chat như facebook, tweet, slacks… Bộ công cụ bao gồm:

  • Bot Builder SDK
  • Bot Connector
  • Developer Portal
  • Bot Directory

Thông qua bộ công cụ, bạn có thể tạo ra một chatbot để thực hiện các đoạn hội thoại theo một hướng dẫn cụ thể hoặc theo hướng nature language (không hướng)

Cơ chế làm hoạt đông:

  • Bot được tạo ra trên 1 host( azure, local host…) bằng Bot Builder
  • Bot Connector được khởi tạo làm kênh liên lạc giữa bot và các kênh chat (Skype, facebook messenger, slacks..)
  • Bot thông qua connector để tiếp nhận, xử lý và trả lại message.

Xây dựng một chatbot đơn giản trên Azure Cloud

Yêu cầu:

  • Có kiến thức về Javascript và Nodejs hoặc C# .Net
  • Tài khoản Azure

Bạn cần truy cập vào https://portal.azure.com/ (Dùng tài khoản azure để đăng nhập). Nếu bạn chưa có tài khoản Azure có thể xem ở link trên.

Ấn vào New ( dấu +), chọn Intelligence + analytics, sau đó chọn Bot Service

Ở đây bạn cần điền vào App name (tên bot), nên lựa chọn tên bot có ý nghĩa 1 tí kiểu: “Retail bot” ..v.v

Resource Group: để dễ quản lý, nên đặt tên giống với tên bot.

Vị trí: tùy chọn, sau đó nhấn Create. Bạn nên chọn khu vực châu Á để tốc độ kết nối được nhanh nhất.

Sẽ mất một vài phút để App được deploy, sau đó có thể kiểm tra bằng cách nhập tên bot vào mục tìm kiếm

Mở App bằng cách click vào app service vừa tạo, tại đây cần phải có AppIdPassword. Cách tạo như bên dưới:

Nhấn vào create Microsoft App ID and password để tạo Id và password cho Bot

Sau khi ấn continue, password sẽ được tạo, cần lưu lại. Password này rất quan trọng, ông nào quên thì khỏi dùng luôn.

Giờ thì điền AppId + Password vào phần 2 như hình

Kéo xuống dưới, ta có phần tùy chỉnh cơ bản cho bot:

Ở trong bài hướng dẫn này, tôi sẽ dùng ngôn ngữ là nodeJS và template là Basic.

Sau khi chọn các tuỳ chỉnh cơ bản, nhấn create bot

Hệ thống sẽ khởi tạo bot theo các thông tin đã chọn

Sau khi thao tác được hoàn thành, cửa sổ quản lý source code và test emulator của bot sẽ hiện ra

Ta thấy trong code:

  • Var builder = require(‘botbuilder’) : yêu cầu thư viện botbuilder cho app
  • Bot Builder có 3 kênh được cung cấp: emulator, console connector và Chat Connector
  • Emulator, Console Connector chủ yếu dung để test và debug
  • Chat Connector dùng để giao tiếp qua các kênh chat thực sự: skype, slacks…
  • Ở đây chúng ta dùng Emulator để test bot.
  • Universal Bot: Class chính của bot, đảm nhận việc xử lý logic thông qua các kênh(connector) và gửi các hội thoại trả lời đi
  • Session là biến nhận biết phiên làm việc hiện thời của bot. Send là lệnh gửi trả message.
  • Ở sample này, tôi để cho bot trả lời đúng những gì mà user nhập.

Tiếp theo là tùy chỉnh các kênh kết nối, bot có thể được add ngay lập tức qua skype bằng cách ấn vào link như hình – ở đây tôi chọn skype, kì diệu thật:

Và cuối cùng Test thử bot trên Skype nào:

Như vậy là ta đã tạo được một chatbot đơn giản với BotBuilder SDK và NodeJS server deploy trên azure cloud.

 

Trần Hoàng Giang

Anh Trần Hoàng Giang là chuyên gia với hơn 6 năm kinh nghiệm trong lĩnh vực Mobility. Anh Giang từng là kiến trúc sư giải pháp cho các giải pháp Mobility cho tổ chức chính phủ tại Singapore, đặc biệt cho 1 trong những hãng chế tạo máy bay lớn nhất thế giới. Anh Giang hiện đang công tác tại FPT Software, chịu trách nhiệm chính trong việc tư vấn về cái giải pháp Enterprise Mobility. Đến với AzureVN.NET, anh Giang mong muốn được chia sẻ về Microsoft Azure Mobility, Cognitive Service

giangth has 9 posts and counting.See all posts by giangth

Leave a Reply

Your email address will not be published. Required fields are marked *