A Chatbot on Every Platform!
Watson Conversation has been enhanced and rebranded to Watson Assistant during the draft of this post.
Hello, I’m back. Just kidding, I never left.
Actually, I’ve been busy with life and things as I move across the country and prep for a wedding. I’m pretty proud of what I’ve managed to accomplish so far this year without having a complete meltdown. It’s only MARCH.
I decided one evening while consuming far more YouTube than the average person should, that I needed a new in-depth blog. I’m sure you are curious what YouTube videos I was watching to inspire this, but I’ll let you in on a secret that after working hours I do whatever it takes to rot my brain through my eyeballs. This could mean watching beauty gurus, other people play video games, or even veterinarian surgical procedures.
My YouTube binging habits aside, I want to build a chatbot on popular frameworks and platforms. I recently had someone come up to me after one of my chatbot workshops and declared that Watson Conversation was much easier (as in more intuitive) to use than another I wont name. So now I’m curious. Aren’t you?
I’m not going to pin the frameworks or platforms against each other, but I am going to build a bot (maybe 2) on each platform and see where I get stuck, confused, bamboozled, or possibly even just give up. I want some NLP functionality built in and I want multiple language support in the event that I take up a new language or two in the near future.
Here’s the list, probably not in order:
- Dialogflow (formerly API.AI)
- Azure Bot Service / Bot Framework / LUIS
- Alexa Skill
- Wit.ai / Facebook Messenger
Now ideally, I want to be able to model a dialog backend to build my conversational chatbot and then have a REST API that lets me do whatever I want in whatever language I want to do it in. I know I’m biased (IBM pays me and I know the Watson Conversation service pretty well), I really want to see how I can move across the platforms. Is the terminology or jargon the same? Is the output of the model a consistent format for uploading and downloading? Are there any features for working as a team? Analytics dashboards for iterating? Does anything stand out or grab my attention? How many separate services do I need to have to go from build to deploy? Available SDKs?
Stay tuned. I’ll link below as I create them. I may even add to the list.
Have you built a chatbot before? What platform or framework did you use? Let me know in the comments. Or just leave a 👏 if this effort intrigues you.