Build Great Chatbots, Fast

3 min read

Wisdom, thoughts and insights from another chatbot hackathon.

Last week, I was coach again at a chatbot hackathon. Chatbots have been around for a long time and I have blogged about tips and tricks for developing chatbots and resources many times. With COVID-19 transforming the world toward more digitalization and self-service, chatbot deployments grew significantly. In this post, I want to look back at the hackathon and share some wisdom for building great chatbots.

Up and running in no time

Independently of what chatbot service or toolkit is used, it is fairly simple to get started. Taking the IBM Watson Assistant service as an example, there are many tutorials with fully working code samples available to build a chatbot that reaches out to external data sources like database systems, Wikipedia, joke collections, current weather or market reports. Moreover, a deep integration with IBM Watson Discovery ("search skill") allows you to get answer recommendations from managed data collections. A chatbot is not just a simple text window anymore. The same bot can be easily integrated into messaging systems or hooked up to SIP-based phone systems:

Documentation on integrating Watson Assistant.

Documentation on integrating Watson Assistant.

Text, voice, mixed content? The channel rules!

The ease of creating a single chatbot for many communication channels causes some design challenges. These challenges should be known in advance, and they should be addressed before investing more time and resources:

  • Not all content suits all channels. An image is great for a web bot or in Facebook messenger or WhatsApp, but does not work well over the phone.
  • In general, chatbots should be prepared to handle chitchat, at least to some degree. Usually, people on a phone who are interacting with a voice bot want to "get business done." A lengthy introduction that a read can skip over/skim through works in text-based bots, but costs time on the phone. Often, shortcuts and channel-specific content design are the solution.
  • Most bot frameworks offer options users can pick instead of typing or saying their own input. Keep the list short and precise. They should not be a cognitive challenge, but rather should speed things up. And they might differ depending on the channel.
Clicking an option is faster than typing.

Clicking an option is faster than typing.

Language, Sprache, lengua, langue

Is a bot only offered in a single language, or does it cater to an international audience? Many bot frameworks, especially the cloud services, allow you to reach out to a translation service for processing the input and responses. The translation quality directly impacts results — twice. The translated input determines detected intents and entities; the translated responses may cause confusion.

To address the problem, it is possible to detect the input language and then switch to a language-specific bot. It means to develop a bot including its content per language. Another option is to configure domain-specific translation or have static content pre-translated.

Again, watch your language

When designing a bot, know your audience. The bot audience determines the language and slang. Are you addressing your business customers, old or young people, or the general population? Watch your language and style because even a bot represents your company or project. Bots can be annoying, but don't have to be.

Summary

The above is just a fraction of things to consider when designing (or hacking) chatbots. It is easy to get started, but it still takes some experience (try it and learn) to build great chatbots.

If you have feedback, suggestions, or questions about this post, please reach out to me on Twitter (@data_henrik) or LinkedIn

Be the first to hear about news, product updates, and innovation from IBM Cloud