চ্যাটবট কি , কেন এবং কিভাবে বানাবেন?

Reyad Rahman
9 min readMay 12, 2017

--

প্রথমেই বলে রাখি এটা একটা বিশাল বড় টিউটোরিয়াল! আপনি যেহেতু এই লেখা টি পড়ছেন সেহেতু ফেসবুক মেসেঞ্জার বট সম্পর্কে আপনার কৌতূহল রয়েছে বলেই ধরে নিচ্ছি! তো সময় নিয়ে বসে পড়ুন, আর নিজে নিজেই আপনার জন্য বা আপনার কোম্পানির জন্য ফেসবুক মেসেঞ্জার বট বানিয়ে নিন । মূল লেখায় যাবার আগে দুটো ধন্যবাদ দিতে চাই । এই লেখা সম্ভব হত না যদি না মিডিয়াম বাংলা সাপোর্ট না করতো, এই লেখা আরো সম্ভব হত না যদি অভ্র’র মত ওপেন সোর্স বাংলা লেখা’র সফটওয়্যার না থাকতো । তাই মিডিয়াম এবং অভ্র কে বিশেষ ধন্যবাদ!🤗🤗🤗

তো শুরু করা যাক!

প্রথমে কিছু সাধারণ জ্ঞান দিয়ে নিই ! 😼😼😼

বট কি? 📳

বট ( English — Bot ) বা ফেসবুক মেসেঞ্জার বট হল কথা বলতে পারে এরকম একধরনের চ্যাট ইন্টারফেস , যেখানে আগে থেকেই বিভিন্ন তথ্যাদি দেয়া থাকে এবং আপনি খুব সহজেই এর মাধ্যমে তথ্যের আদান প্রদান, বিভিন্ন কাজ করিয়ে নেয়া ইত্যাদি কাজ সম্পন্ন করতে পারেন । মনে হবে যেন আপনি একজন মানুষের সাথেই কথা বলছেন, যদিও তা নয়! তবে বটের মধ্যে নানা রকম পার্থক্য রয়েছে । কিছু বট নিতান্তই সাধারণ যাদেরকে শুধুমাত্র কিছু কাজের জন্য বানানো হয়েছে তারা সেই নির্দিষ্ট কাজের বাইরে কিছু করতেও পারে না , শিখতেও পারে না । যেমন স্কোরবট — এই বটের মাধ্যমে আপনি খুব সহজেই খেলাধুলা’র নিত্যনতুন আপডেট পেতে পারেন, আপনার মেসেঞ্জার এ বসেই! কিন্তু এই বট নিজে নিজে কিছু শিখতে পারে না, যদি ও বা এর ফাংশন গুলো বেশ! আবার আর্টিফিশিয়াল ইন্টেলিজেন্স সমৃদ্ধ বট রয়েছে যেগুলো কে আপনি যত ব্যবহার করবেন সে তত শিখবে, তত ভালো ভাবে আপনার সাথে কথা বলবে, আপনার কাজ করে দিবে! যেমন আমাদের বাঘা বট!

Score Bot ScreenShot
Bagha Bot Image Processing - Artificial Intelligence Powered | Apps yet to be launched.

ফেসবুক এফ৮ কনফারেন্স — ফেসবুক এই বছর বট প্লাটফর্ম ২.০ ঘোষণা দিয়েছে । ভিডিও তে দেখুন ।

আরো কিছু চ্যাটবট এর উদাহরণ —

  • Weather bot. আবহাওয়া সম্পর্কে যখন যা জানতে চাইবেন তাই জানাবে !
  • Grocery bot. আপনাকে বিভিন্ন রকম গ্রোসারি পন্য কিনতে সাহায্য করবে মেসেঞ্জার এ বসেই ।
  • News bot. যখনই কোন কিছু ঘটুক , আপনি জেনে যাবেন মুহূর্তেই , মেসেঞ্জার এর ভিতর ।
  • Personal finance bot. আপনাকে মেসেঞ্জার এর ভিতর হিসাব নিকেশ করতে সাহায্য করবে ।
  • Scheduling bot. শিডিউল নিয়ে ঝামেলায় পড়েন ? এর জন্যেও রয়েছে চ্যাটবট
  • A bot that’s your friend. Xiaoice নামের এই চ্যাটবট এর নির্মাতা Microsoft, ভাবতে পারেন ২০ মিলিয়ন মানুষ এর সাথে কথা বলে প্রতি দিন!

চ্যাটবট এর সম্ভাবনা ? 😎😎😎💰💰💰

চ্যাটবট এর সম্ভাবনা প্রচুর । যেকোন কিছুর চ্যাটবট বানানো সম্ভব । শুধু মাত্র একটু খানি ইমাজিনেশন আর প্রোগ্রাম্মিং এ দক্ষ হলেই সম্ভব! মানুষ এখন সোশ্যাল নেটওয়ার্কিং সাইটে বেশি সময় ব্যয় করে না যত টা মেসেজিং এ করে! এই গ্রাফ টা দেখুন —

৪৫.৮ % মানুষ মেসেজিং করে বিজনেস / কোম্পানি’র সাথে যোগাযোগ করতে চায়, ইমেইল ব্যবহার করে নয়!

আমিও চ্যাটবট বানাতে চাই , কি করবো? 🙄🙄🙄

প্রথমত আপনাকে বুঝতে হবে আপনি ঠিক কোন উদ্দেশ্যে চ্যাটবট বানাতে চাচ্ছেন? এটা বের করে ফেলতে পারলে কাজ টা কিছু টা সহজ হয়ে যায় । তবে একটা ব্যাপার মনে রাখতে হবে, চ্যাটবট আর ওয়েবসাইট ডেভেলাপমেন্ট দুটো দুই রকম, তাই এদের মেকানিজম ও আলাদা । একটা ওয়েবসাইট একটা কোম্পানি কে রিপ্রেসেন্ট করে , আর চ্যাটবট আপনার কাস্টোমার সাপোর্ট এজেন্ট এর মত । সে যত বেশি স্মার্ট হবে , আপনার কাস্টোমার তার সাথে কথা বলতে তত বেশি উৎসাহিত বোধ করবে ।

তারপর আশে প্লাটফর্ম এর ব্যাপারটা । মোটুমোটি সব প্লাটফর্ম এর জন্য চ্যাটবট বানানো সম্ভব । তবে ফেসবুক মেসেঞ্জার , স্ল্যাক, টেলিগ্রাম, উইচ্যাট, টুইটার এগুলো হলো চ্যাটবট বানানো’র মেজর প্লাটফর্ম । আপনি কোন প্লাটফর্ম এর জন্য বানাবেন সেটা সম্পূর্ণ ভাবে আপনার কাস্টোমার কোথায় সবচেয়ে বেশি তার উপর নির্ভরশীল।

এরপর আশে প্রোগ্রাম্মিং এর ব্যাপারটা । আপনি যে প্রোগ্রাম্মিং ভাষায় দক্ষ সেটাতেই চ্যাটবট বানানো সম্ভব । নোড ( জাভাস্ক্রিপ্ট ), পাইথন, রুবি এই সকল ভাষার যেকোন একটা জানা থাকলেই হল । কোথায় হোস্ট করবেন সেটাও আপনার উপর নির্ভরশীল । হেরুকু ক্লাউড , গুগল অ্যাপ ইঞ্জিন , মাইক্রোসফট ক্লাউড, অ্যামাজন ওয়েব সার্ভিস এই ক্লাউড সার্ভিস গুলো চ্যাটবট ডেভেলাপমেন্ট এর জন্য বেশ জনপ্রিয় । যদি আমাকে সাজেশন দিতে বলেন তবে আমি বলবো ইজি ডেপ্লয়মেন্ট এর জন্য হেরুকু ক্লাউড জোশ । কিন্তু এর প্রধান সমস্যা হচ্ছে ফ্রী সার্ভার এ ২৪ ঘন্টা পর পর রিসেট দেয়া হয় । 🤔🤔🤔

ফলে আগের সব জমা হওয়া তথ্য ডাটাবেজ থেকে হারিয়ে যায় । ব্যাকআপ করে রাখা লাগে । 😑😑😑

সবচেয়ে ভালো হল অ্যামাজন ক্লাউড । কিন্তু এর কনফিগারেশন বেশ কঠিন । অভিজ্ঞ প্রোগ্রামার ছাড়া কনফিগার করতে গেলে বেশ অনেক টা সময় নষ্ট হয়ে যাবে । ☹️☹️☹️

তাই আমার সাজেশন থাকবে অভিজ্ঞ প্রোগ্রাম্মার এর সাহায্য নেয়া ।

কিন্তু আমি তো প্রোগ্রাম্মিং পারি না , বাজেট ও অত নাই, আমি কি করবো? 😫😫😫

আপনার জন্য রয়েছে চ্যাটবট বানানোর বেশ কিছু ফ্রি এবং ফ্রিমিয়াম প্লাটফরম যে গুলো ব্যবহার করে আপনি খুব সহজেই চ্যাটবট বানাতে পারবেন । এই ব্যাপারে নিচে বিস্তারিত বলা আছে!

চলুন তবে শুরু করা যাক আমাদের চ্যাটবট ডেভেলাপমেন্ট -

আমরা এখানে Claudia Bot Builder ব্যবহার করে একটি হ্যালো চ্যাটবট বানাবো । এরকম বট বিল্ডার আরো রয়েছে মার্কেট এ । তবে এটি তুলনামুলক সহজ । আমাদের বট ডেপ্লয় করা হবে অ্যামাজন ওয়েব সার্ভিস এ । আপনি জাভাস্ক্রিপ্ট পারলে খুব সহজেই এরকম চ্যাটবট বানাতে পারবেন । 😉

যা যা লাগবে -

  • Node.js 4.3.2
  • NPM
  • An AWS account with the permissions to create Lambda functions, API Gateway end-points and IAM roles.
  • Claudia.js 1.4.0 or later

কিভাবে Claudia.js ইন্সটল করবেন সেটি এই টিউটোরিয়াল এ দেখে নিন ।

ইন্সটল হয়ে গেলে আপনার ডেস্কটপ এ একটি ফোল্ডার তৈরি করুন ।

Git Bash (ইন্সটল থাকতে হবে) —

npm init

আপনার প্রজেক্ট ডিপেন্ডেন্সি তে claudia-bot-builder যুক্ত করতে নিচের মতো লিখুন —

npm install claudia-bot-builder -S

আমাদেরকে এরপর huh এক্সকিউজ জেনারেটর ব্যবহার করে কিছু ডায়নামিক কন্টেন্ট আমাদের চ্যাটবট এ যুক্ত করতে হবে । তাই ইন্সটল করুন —

npm install huh -S

আপনার ওই ফোল্ডার এ bot.js নামে একটা ফাইল তৈরি করুন এবং নিচের কোড কপি পেস্ট করুন —

var botBuilder = require(‘claudia-bot-builder’), excuse = require(‘huh’); module.exports = botBuilder(function (request) { return ‘Thanks for sending ‘ + request.text + ‘. Your message is very important to us, but ‘ + excuse.get(); });

ব্যস আমাদের প্রাথমিক কাজ শেষ । এখন ডেপ্লয়মেন্ট এর পালা ।

আমাদের git bash এ নিচের মত করে লিখুন । তার আগে অ্যামাজন ক্লাউড এ আপনার একটি একাউন্ট তৈরি করে নিবেন এবং সেখান থেকে প্রয়োজনীয় ক্রিডেনশিয়াল সংরক্ষণ করে রাখবেন ।

claudia create --region us-east-1 --api-module bot

Claudia নিজে থেকেই বাকি সব কাজ করে নিবে এবং আপনার জন্য একটি ওয়ার্কেবল ওয়েব হুক তৈরি করে দিবে যেটা আমাদের পরবর্তীতে কাজে দিবে ।

এখন আমাদের কে একটি ফেসবুক মেসেঞ্জার অ্যাপ বানাতে হবে । তার জন্য Facebook Messenger Getting Started Guide লিঙ্কে ক্লিক করুন । দেখবেন নিচের মত পেইজ এসেছে ।

ডান দিকে উপরে My App এ ক্লিক করে Create A New App এ ক্লিক করুন ।

Create App ID তে ক্লিক করে ক্যাপচা পুরণ করলে নিচের মত পেইজ আসবে ।

এরপর মেসেঞ্জার লেখাটি খুজে বের করুন এবং ডান পাশে Get Started Button এ ক্লিক করুন ।

পরের পেইজ এ এরকম করে আপনাকে একটি টোকেন জেনারেট করতে হবে । আপনি যেই পেইজ এর জন্য চ্যাটবট বানাচ্ছেন সেই পেইজ সিলেক্ট করলে একটি টোকেন জেনারেট হবে যেটি পরবর্তীতে চ্যাটবট ভেরিফিকেশন এ কাজে দিবে ।

এর নিচেই আপনি ওয়েব হুক অপশন পাবেন । সেটাপ ওয়েব হুক এ ক্লিক করুন ।

সেটাপ ওয়েব হুক এ ক্লিক করলে নিচের মত একটি পপ আপ আসবে ।

এই কল ব্যাক ইউআরল এর জন্য আমাদেরকে Git Bash এ নিচের মত করে লিখতে হবে ।

claudia update — configure-fb-bot

তখন ব্ল্যাক স্ক্রিন এ আমরা Webhook URL এবং ভেরিফিকেশন টোকেন পাবো ।

আমাদের ওয়েব হুক ইউআরএল টি দেখতে এরকম হবে , তবে একেক জন এর একেক রকম

https://0tu1az4tpj.execute-api.us-east-1.amazonaws.com/prod/hellobot

VERIFY_TOKEN = “abcxyz”;

সব কিছু সঠিক থাকলে আপনি একটি ওয়েলকাম স্ক্রিন পাবেন । অর্থাৎ আপনার বট আপনার সাথে কথা বলার জন্য প্রস্তুত ।

আপনার বট এর সাথে আপনি এখন আপনি কথা বলতে প্রস্তুত ।

তবে এটা একটা বেসিক ফাংশন বট । আপনি এখন সিদ্ধান্ত নিন কিভাবে এই চ্যাটবট কে আপনার ব্যবসার কাজে ব্যাবহার করবেন , এবং সে অনুযায়ী প্রয়োজনীয় কোড ব্যবহার করুন । আর্টিফিশিয়াল ইন্টেলিজেন্স ব্যাবহার করে আপনার চ্যাটবট কে আপনি আরো বেশি ইন্টার একটিভ করতে পারেন ।

এরপর প্রয়োজনীয় ফাংশন যুক্ত করা হলে আপনার চ্যাটবট টি কে সবার জন্য উন্মুক্ত করে দিতে চাইলে নিচের মত করে আপনাকে ফেসবুক এর নিকট সাবমিট করতে হবে ।

বাংলাদেশের বাইরে আপনি মেসেঞ্জার এ বসেই কেনাকাটা করতে পারবেন । ফেসবুক এখনো এই অপশন বাংলাদেশের জন্য চালু করে নি বিধায় আমাদের ইকমারস এ আমরা এরকম করে প্রোডাক্ট শো করতে পারি ইকমারস বট দিয়ে ।

Bagha AI — Artificial Chat bot in E commerce in Bangladesh

আহা! আমরা আমাদের প্রথম চ্যাটবট বানানো শেষ করেছি । একটু কঠিন ছিলো , তবে একবার অবস্থ্য হয়ে গেলে আপনি নিজে নিজেই যেকোন প্লাটফর্ম এর জন্য চ্যাটবট বানাতে পারবেন । তারপরও না পারলে আমরা টাইগার ডিজিটাল তোহ আছিই !

Tiger Digital — Your Uber For Digital Services!

এখন আসি কিভাবে বিনা প্রোগ্রাম্মিং এ চ্যাটবট বানানো যায় । এই ফ্রি প্লাটফর্ম গুলো’র বেশ কিছু সুবিধা ও অসুবিধা রয়েছে । তার আগে প্লাটফর্ম গুলো দেখে নিই ।

এই চ্যাটবট প্লাটফর্ম গুলো’র সুবিধা হল এরা বিনা প্রোগ্রাম্মিং এ আপনাকে যেকোন প্লাটফর্ম এর জন্য চ্যাটবট বানাতে দিবে ।

কিন্তু সবচেয়ে বড় অসুবিধা , মেসেজিং লিমিটেশন । আপনি সর্বনিম্ন ১০০০-৫০০০ মেসেজিং করতে পারবেন এক মাসে ফ্রি তে ( আপনি ৫০০/২৫০০ মেসেজ পাঠাতে পারবেন-আবার ৫০০/২৫০০ মেসেজ রিসিভ করতে পারবেন = ১০০০/৫০০০ মেসেজ ) । 🙄🙄🙄

কিছু কিছু প্লাটফর্ম অবশ্য ১ থেকে ১.৫ লাখ ম্যাসেজ বা বার্তা বিনামূল্যে আদান প্রদান করতে দেয় । তারপর আপনাকে মাসিক নির্দিষ্ট একটা ফি এর বিনিময়ে এই সার্ভিস নিতে হবে । কিছু কিছু প্লাটফর্ম বাংলা এবং বাংলিশ ও সাপোর্ট করে না । সেক্ষেত্রে নিজেদের প্রোগ্রাম্মিং করেই চ্যাটবট বানাতে হবে ।

চ্যাটবট সম্পর্কে ধারণা পেতে এই ইনফোগ্রাফিক টি দেখুন —

Chatbot Infographics — Tiger Digital

চ্যাটবট সম্পর্কে আরো বেশি জানতে —

এতোক্ষণ কষ্ট করে এই লেখা টি পড়ার জন্য ধন্যবাদ । ❤ ❤ ❤

আমি রিয়াদ রহমান , কাজ করি আর্টিফিশিয়াল ইন্টেলিজেন্স, ডাটা সায়েন্স নিয়ে । ফেইসবুক এ আমিলিঙ্কইডইন এ আমিটুইটার এ আমাকে টুইট করুন । আমার প্রতিষ্ঠান টাইগার ডিজিটাল আমাদের কাজ । আমাদের বাঘা প্রজেক্ট । আমাদের বাঘ.com এবং মুক্তিযুদ্ধ.com

Email : ireyadrahman@gmail.com

Corporate Inquiry : hello@tigerdigital.xyz, reyad@tigerdigital.xyz

--

--