Chatbots

8 Steps to a Better Chatbot

If building a chatbot seems like a daunting task, start with this simple 8-step checklist for building a bot. It’s not as complicated as you might think.

June 26, 2018

Even in digital terms, chatbots, or bots, are new. There aren’t a lot of here’s-how-you-do-it-right pieces out there.

We wrote this list to get you started on your first project. We’re assuming that you’re building a reasonably basic information-seeking bot (like a weather bot) or, more likely, a transactional bot that provides simple answers to straightforward questions:

Bot Build Checklist

1. Find a true use case

Predicting the weather is great, and it has value. There are lots of fun bots out there, too. If you want your mind blown, try Mitsuku. Dad Bot is pretty fun, too. But, unless you’re shooting for a Turing Award, bots that most frequently go viral identify a problem and solve it.

Work at a company that gets too many support calls? Write a proof-of-concept bot that helps customers find answers.

Cycling fan? Then you know how hard it is to stay up-to-date with lesser-known races. Write a bot that provides race updates.

Alternatively, create a bot that solves your own use case. Just have a genuine challenge to address. This can help you focus on UX and build your plan.
It doesn’t have to be the killer app. But it’s easier to build (and maintain) a bot when you’re genuinely excited about it.

2. Think about UX

Really think about UX. Don’t build in dead ends. Consider voice—very carefully. “Human” isn’t always the best way to go. Your users will know they’re not talking to a person. Don’t try to fool them.

For a great overview of bot UX concepts, check out “Designing for AI: Human-first vs AI-first approach to building a smart and fast bot,” by Elaine Lee.

3. Find Intents

In the bot world, an intent is the purpose for a question.

If I ask, “Show me the menu,” I may want pizza or I may want to see a dropdown menu in a piece of software.

More importantly, if I request a bouquet of roses, I may intend to make someone happy. A really smart bot will suggest a teddy bear, too.
All subtle things…and all very important.

For an in-depth exploration of intents, read “Chat Bots — Designing Intents and Entities for your NLP Models,” on Medium.

4. Build the decision tree

Your first bot probably won’t fully capitalize on AI. You may use a more limited form of AI, such as natural language processing (NLP), to interpret phrases but not to train a larger model, or you may build a very basic question-and-answer bot.

We’re also assuming that you’re new to chatbots and looking to get your feet wet. Decision trees require less expertise, although they take more time to create.

If you decide to use a decision tree, you’ll need to map it out carefully. Even the simplest bot has a complex conversational flow, and your bot’s utility depends on your thoroughness. Account for:

  • The many ways that users might ask a question.
  • Branches based on the question.
  • Keywords.
  • Responses to keywords.

Mind-mapping software is good for this. Some bot development platforms offer visual building tools. Use your favorite.

If you decide not to use a decision tree, you may consider writing conversational UI scripts. When creating scripts, it’s important that they aren’t merely conversational—they need to fulfill some goals, so make that your first step. After that, you’ll want to consider conducting user research to ensure the conversation is engaging. Once you have both of those in place, you can start writing the initial transcript form.

This may be the hardest step of creating your bot—or at least the most tedious. It’s why many developers go straight to AI. Your call.

5. Decide on the data

Somewhere, somehow, your bot needs to find answers. That means a data source, because you’re not going to be able to anticipate every answer.

Many of the chat development platforms include knowledge packages you can select and access. Examples are weather, news, and “wisdom.” (I’m not 100 percent sure who determines what is “wise,” so proceed with caution.)

If you’re getting fancier—and you are training a truly AI-driven chatbot—you may need to track down training data. But that’s beyond our discussion here.

6. Pick the platform

Now you can pick the platform. A few things to consider:

  • The data source. If one platform has the knowledge package you need, that’s a major plus.
  • se of use. Are you a code geek or a marketer looking to create a simple bot? Consider this carefully before getting started. If it’s not easy to use, you won’t give people the chance to even try using it.
  • Application. Will most users access this bot via mobile? Voice? Multiple devices? Some platforms are generalists. Others are specialized. Choose wisely.

I can’t provide a specific recommendation here. I can tell you there’s more to this decision than simply selecting the platform or framework that looks the easiest.

7. Test with other people

Get other people to use your bot. They’ll find new intents, phrasing, and keywords that baffle your bot. Observe and adjust!

8. Go do it

You’ve read the list. Now go create a bot. It’s the best way to learn.

Really.

No, seriously.

Go build a bot.

You’re still here?