Lessons learned from building a commercial open-source bot development platform
livablesoftware.com
livablesoftware.com
This seems to be a generic problem with chatbot companies. I have yet to find one with a bot intelligent enough to answer basic questions about the chatbot product. Most chatbots are about as smart as "press 1 to pay bill, press 2 to return product..." with a weak natural language system on top. A basic web site is more useful.
It's true the one in our home page is a bot to illustrate a simple scenario with some of the features that Xatkit includes (if you ask the bot for a demo)
Hi there.
I can help you get up to speed with a REST API
Just give me the URL of the OpenAPI definition of your API
> What is an example of an OpenAPI definition?
Loading the API from . Please wait...
Oops, I couldn't parse your definition
Here is the error message:
no protocol: Xatkit
What do you recommend that can hold an interesting conversation?Clearly, in the above example, you didn't provide what the bot was expecting and since the bot is a research prototype, it had not enough training to identify that you were not providing an API file but asking a clarification question.
No, the bot owner should the dashboard to realize that a user (you) asked this question that made the bot failed and should prepare a new version of the bot that can answer it
In chatbot systems, the machinery doesn't do very much. It's anticipating almost all possible user responses that makes the thing work, if it does. All the engine really does is take the user's question and match it to some big FAQ file someone put in. Plus there's some kind of phone-tree like path to guide users through whatever the chatbot wants them to go. (Not where the user wants to go.)
In game development, this is called The Dev Team Thinks of Everything.[1]
[1] https://tvtropes.org/pmwiki/pmwiki.php/Main/DevelopersForesi...
I'd be interested to hear your take on this. The dozen or so prominent bot startups that popped up over the last 5 years nearly all ended with acquihires. Even Facebook, who once thought they could create an uberbot to do literally anything, have all but abandoned their bot aspirations.
Then Xatkit aims to be a very flexible platform that helps you create chatbots on top of any platform you need, more than a concrete solution for a specific set of technologies. For instance, most current solutions are tied to a specific NLU Engine (being DialogFlow, IBM Watson or whatever). Xatkit tries to abstract from the concrete engine and let you define the bot in a more abstract way and deploy the bot on any of them based on your deployment preferences.
(this doesn't mean Xatkit provides right now all the connectors you may want, it just means that the architecture of Xatkit was especially designed with this goal in mind, it's open source so it's possible for you to create whatever you need)
How can chatbots ever mimic human interaction, without experiencing human-ness?
We parse incredibly complex dailog exceptions every day because "we made that mistake yesterday" (or "... when we were 5").
As a business, when you have customers asking the same question over and over (shipping questions, where is my order etc), it makes sense for a bot to handle that, and have your staff handle other more specific issues such as refunds, payment issues, or any other questions that the bot wasn't able to handle, or if the customer specifically hits the 'I want to talk to someone' button
My guess is the "bots" you've dealt with are dead-end bots that don't offer a way to speak to an actual person and are meant to make it as difficult as possible for you to actually reach someone. That's unfortunate - maybe it's a business decision (a poor one), or the chatbot just doesn't work very well and doesn't have a way to escalate.
Chatbots have gotten so much flak because a bunch of them try to use as much AI as possible to answer every possible question and businesses think chatbots makes needing an actual human support team unnecessary, which unfortunately is not the case.
And agree with you, being on development of a chat solution over the last two years I've realize that the AI sucks big time for chatbots no matter how hard we try they will never have the human touch. that's why I have avoided the NLP integration as much as I can. This lack of human touch is the reality of any chatbot that does NLP, sentiments analisis, etc.. they simply fail. I have tried xatkit and I could not establish a proper dialog either.
In that sense I've implemented in chaskiq some sort of path selector / decisional steps that you can compose for further routing assignment to human agents, and that works very well.
Also, for small companies, it may be the only option as they cannot be available 24/7.
In my experience, most tech-savvy people do not want to call or chat. They only resort to those options when they can't find a way to do what they need to on a company's website. There is another group that wants to talk to a real person regardless, but they usually prefer to call. I'm not aware of any group that wants, or has their needs best met, by talking to a chat-bot.
Have plenty of experience helping companies set up chat bots properly, and watching customers actually talk to bots and have their questions answered by bots. There are always some people that would automatically escalate to human support every time and not bother with the bot, but there's also a fairly large percentage of people who would go through with the bot.
Can we also dispense with the second-hand reassurances that "someone" would disagree, and replace it with first-hand testimony from someone who actually prefers the chat bot to chatting with a person?
Effective chatbots tend to triage requests and point users to further information, rather than fully solving the issue on their own.