Four key takeaways after 6 months working in the market of chatbots

Jorge Peñalva
Building Lang.ai
Published in
9 min readMar 23, 2017

--

Six months ago we took our technology one step further. We realized that we had a competitive advantage with our semantic engine and decided to start using our core AI to build other products. One of the products that we started working on is chatbots using our semantic AI to develop the technology behind the bot.

During these six months we have had the opportunity of working on real projects, speaking with many companies, investors and researchers and I thought it’d be good to share our experience and what we have seen, mostly in the Spanish and Latin American markets. These are my four key takeaways after these six months:

1. Everyone has a chatbot and the industry is lost

You see the word in every website. Every technology provider seems to offer a chatbot, no matter what their scope is. If it’s a banking app, then they sell a banking chatbot; if they are a text analytics provider, then they offer chatbots as you can use their API to build one. Microsoft, IBM and Facebook all have platforms to build chatbots, and there are end-to-end products that are also sold as chatbots. For example, Medwhat, a virtual medical assistant that comes as a cellphone app, or Julie Desk, a personal assistant which integrates with your email to schedule meeting.

Thousands of startups have raised 140 million dollars in funding since 2010 to build chatbots. There is even a website where you can track every bot company being funded. But what is a chatbot then? And what is behind all this revolution?

Let’s start with the basics — what is a chatbot?

For us, a chatbot is a system that understands language and has intelligence about a certain context in a way that it can interact with the user to solve a problem. There are three key points in the definition: it has to understand language (which doesn’t come from scripted definitions of text), it needs to have intelligence about a context (just speaking is not enough, it needs to have certain knowledge) and it needs to solve a problem (as we are a B2B company sustained by our solutions to our clients’ needs)

So then, trying to sell a deep-tech product to business people (not always tech-savvy), everyone is using the word chatbot. “They already offered me a chatbot”, “X is doing a chatbot with Y” is what you may have heard. Marketing campaigns are all over the place because everyone wants to see what’s happening with chatbots. And we should be professionals and spot the difference between a chatbot and a bot. Maybe a bot chats with two predefined responses, but that’s not a real chatbot, any good engineer can build something like that in a matter of days.

2. Everyone wants a chatbot but few take the time to define what the goal is

Nowadays most of the companies are just building chatbots because they say: “I have heard that my competition is building a chatbot and this is the next big thing, so let’s build one”.

We consider three types of chatbots, I hope it can help you understand how your organization could potentially benefit from them and see if they can help you meet your goals. This is not a standard, it’s just a division that I found reasonable:

Conversational chatbot

One would say: “every chatbot should be conversational”. This is technically true, but the difference is that the output of this chatbot is a response for the interaction. For example, a customer-service chatbot. In a customer-service chatbot, you don’t have to act (at least at the beginning). You need to give an accurate response to the client.

You could need this bot if there are customer-service processes where:

  • You have enough volume so that the bot can be worth the investment
  • You want your customer service to be working 24/7 at least in certain areas
  • You want to reduce response time

Transactional chatbot

Your goal is to create a new process your clients can benefit from, by automating with a chatbot in a process where you currently have a standard interface or other means.

For example, a client that buys airline tickets with the mobile app might be able to buy tickets with a bot if the bot is able to understand the context. This is where many people confuse a chatbot with just a “simple” bot. Is the following a chatbot or “just” a script?

User: Buy tickets

Bot: I have tickets from Madrid or Barcelona

User: Madrid

Bot: I have tickets to Barcelona, Paris or London

User: Paris

Bot: Which dates?

User: February 26th to February 27th

Bot: OK, February 26th, I have tickets for the 5pm flight

One could argue if we can define this bot as a chatbot. It definitely chats, but is it really a chat or “just” a guided script with orders? Is it useful to have a script like this or would the user prefer an interface?

That’s where we have to be careful and it depends on the context and the intelligence of the chatbot. I wouldn’t specifically call this a chatbot as it doesn’t fully understand language context for this use case. It follows a script but the user could speak in a different way, not finding the bot useful, and thus resulting in a terrible user experience.

Transactional chatbots can be very precise when limited to a certain context. A transactional chatbot can be useful for:

  • Any process where the user needs to do an action
  • Doing it by voice or text may improve user experience

Informational chatbot

Your goal is that you can ask general questions to the bot to inform the user about a certain topic. A fully-informational chatbot holds information about anything, much like you could ask Wikipedia about any topic. An informational chatbot can be used to guide the user to a certain knowledge, as a new way of “content marketing”. Somehow, you are informing a user about a context and you choose the topics that you cover.

For instance, a chatbot that understands about banking can explain how a pension plan works and a user can benefit from that information. The user may ask many questions about this and the chatbot should be able to reply about that certain context.

These bots can be useful as instead of searching for a certain answer on different websites, you can ask an expert about a certain topic. This is one of the most complex use cases because:

  • Questions may be asked in many forms — why, how, when….
  • Which leads to complex answers that you need to generate in a natural language way
  • You need to save past information that the user has asked about, so that there is no repetition
  • You need to include broad knowledge about many different topics which results in a large semantic database where the AI has to search for your answer

3. Pricing is not defined. What do I charge for? How? When?

A few months back, as a new chatbot provider in the chatbot infrastructure, we had to ask ourselves this question. How much do we charge for this? We had a pricing defined for our NLU API, but how much do you charge for a machine that does the work of a human or that creates a new process that didn’t exist before?

We started with three guidelines:

  • It shouldn’t be more than the cost of someone doing the same job
  • It should scale with the number of interactions as you are saving more time and money
  • It should be more expensive than our NLU API as it’s a higher-level layer
  • It should be similar to what other competitors are charging for similar services

Not big constraints, right? Now include in the equation that the pricing of some of the competition is being defined too. Check this screenshot of IBM pricing: 10,100 answers of their virtual agent solution is 500USD cheaper than just 10,000 answers.

1750 USD/month for 10,000 answers VS 1260 USD/month for 10,100 answers

So basically, we decided to start with a pricing that makes sense in terms of the number of interactions, so that anyone can use it even for lower interactions, paying a smaller fee. Does that work for every use case? No, of course not. You may generate much more value for a certain client. That’s why we included a setup (1 to 3 months) in order to understand the specifics of the client. We are also doing 1-week free pilots so that we can demonstrate the base technology to our clients with some of their data, which proves that our engine works and allows us to compete against big brands like Microsoft and IBM.

Also, as we are a startup, we are just being transparent about our pricing too. I honestly told one of our clients: “Nobody is doing this bot application. I don’t know what to charge for it, but let’s invest in the POC together. Let’s see the results and what’s a reasonable price for you once we have the results”.

4. Technology is moving fast

In any case, up to this point in the article, it seems that the picture is not very positive. And it may be true. I think that there is a lot of work to be done in terms of product and user experience. New interfaces need to be built for the world of chatbots.

But there is a good side to this. I really believe in the technology behind chatbots, NLU and SLU. If you read papers published by Microsoft, Google, Facebook, Baidu, etc., then you’ll realize technology is moving really fast. Even Microsoft and Google are collaborating on some research, as you can see in a paper like this one on SLU (Spoken Language Understanding). Microsoft research link, Google research link.

Development of fast-computation systems like GPUs will enable Machine Learning algorithms to understand language in ways we can’t think of now. RNNs (recurrent neural networks) and other techniques have allowed translation and SLU to work as they never had before. So, we will get there rather sooner than later. See some interesting research papers we have found in our team at the bottom of the article.

The problem is that the technology is not always production-ready in systems that clients are seeing or using and that a chatbot without good technology can result in the worst user experience. We need to be cautious while technology keeps developing and clients should focus on building the pillars for a good language understanding infrastructure.

As a final recommendation, this would be my plan in order to build a chatbot:

  • Think about processes that you can automate with conversational chatbots or new processes that you can build to improve the user experience and differentiate from competition. Define them, prioritize them
  • If there are few simple processes that can be automated with a script, just hire someone to build the script using any framework or look for specific chatbot providers that are “selling that script”
  • If there is more complexity and many use cases you can think of, and you need language understanding, partner with someone that has or proves to be able to build technology to understand your industry as a whole. Don’t think just in a specific use case as even if someone has a script that solves one problem, if the technology isn’t good, it is not going to scale properly to other use cases without language understanding. **

Disclaimer — As I have mentioned before, we are partnering with banks, insurance companies and retailers to build chatbots through language AI and NLU. Our technology is language agnostic and our goal as a company is to get machines to be able to understand language and conversation as a whole, extracting intelligence from it. If you are interested in hearing more, just contact me, and now that you know, please don’t benefit from our pricing transparency!

Bibliography

[1] Tur, G., Deng, L., Hakkani-Tür, D., & He, X. (2012, March). Towards deeper understanding: Deep convex networks for semantic utterance classification. In Acoustics, Speech and Signal Processing (ICASSP), 2012 IEEE International Conference on (pp. 5045–5048). IEEE

[2] Vinyals, O., & Le, Q. (2015). A neural conversational model. arXiv preprint arXiv:1506.05869.

[3] Sordoni, A., Galley, M., Auli, M., Brockett, C., Ji, Y., Mitchell, M., … & Dolan, B. (2015). A neural network approach to context-sensitive generation of conversational responses. arXiv preprint arXiv:1506.06714.

[4] Serban, I. V., Sordoni, A., Bengio, Y., Courville, A., & Pineau, J. (2015). Building end-to-end dialogue systems using generative hierarchical neural network models. arXiv preprint arXiv:1507.04808.

[5] Yao, K., Zweig, G., & Peng, B. (2015). Attention with intention for a neural network conversation model. arXiv preprint arXiv:1510.08565.

[6] Shang, L., Lu, Z., & Li, H. (2015). Neural responding machine for short-text conversation. arXiv preprint arXiv:1503.02364.

[7] Mou, L., Yan, R., Li, G., Zhang, L., & Jin, Z. (2015). Backward and Forward Language Modeling for Constrained Sentence Generation. arXiv preprint arXiv:1512.06612.

Worth reading?

Then it might be worth recommending. Give some claps to spread it! 👏

Check the other articles in our Building Lang.ai publication. We write about Machine Learning, Software Development, and our Company Culture..

--

--

CEO http://lang.ai. Helping support and analytics teams build categories to classify their data in a visual no-code way, which enables automation.