Anatomy of a Chatbot Project

  • Author: m0ther
  • Topic: BOTS
  • Posted:
Share This

Chatbot projects aim to deliver measurably successful conversational experiences.

Creating compelling conversations takes more than simply porting features from your existing product. Designing these experiences involves a new set of challenges beyond web and mobile.

Done well, chatbots can automate significant parts of your business, lowering costs and improving customer satisfaction. But the vast majority of bots are poorly executed, often limited to a single, static use case and suffer poor retention rates. Beware of turnkey bot “templates,” while chatbots can benefit from standardized domain knowledge, any successful bot is the product of careful planning and solid execution.

Project Components

  • Platform options
  • Bot objectives and project planning
  • Interaction design
  • Conversation authoring and linguistics
  • Rich response development
  • Authentication
  • Session & data design
  • Fulfillment
  • Test and Quality Assurance
  • Deploy/publish
  • Conversational analytics
  • Continuous improvement with Machine Learning

NLU Platform Choices
Chatbots are powered in part by Natural Language Understanding platforms that map the user’s speech to intents that your bot can respond to. These platforms take in natural language, remove values from it, interface with your systems, and provide a response to the user. The best choice of NLU platform depends on your project, but for most it is either wit.ai (Facebook) or api.ai (Google). Api.ai has the advantage of easy, one-click integration with most major Western messaging platforms.

Bots
It is important to understand that NLU platforms are not bots. They don’t execute logic or push, instead they rely on webhooks to integrate with your bot functionality. We choose to host our bots on AWS Lambda, a serverless microservices platform that supports Python and Java.

Targeting Messaging Platforms
Chatbots live on the platforms that you integrate with and the different platforms offer different features for integration. Facebook is widely popular and has the most features, but if you were targeting teenagers, you might want to look at a platform such as Kik.

NLU Platforms

  • Api.AI (Google)
  • Wit.AI (Facebook)
  • LUIS (Microsoft)
  • Amazon Lex
  • IBM Watson

Chatbot Architecture with AWS Backend

Chatbot Objectives & Planning
New chatbots should have a clear purpose. For instance, do you want it to help users book service appointments or purchase products? Focusing on the bot’s goals at the outset focuses its design and functionality. While it may be tempting to try and create a bot that can do everything, put lower priority interactions in later phases.

Interaction Design
Chat requires a very different interaction model than that needed for traditional software applications. Although help prompts and some visual cues can be presented to users, chatbots rely on turn-based conversations that move through service contexts. This requires careful design to make sure users do not get lost or frustrated along the way.

Conversation Authoring & Linguistics
Chatbots are storytellers and they work best when they are supported by talented authors. And because chatbots have to understand the user’s natural language, a lot of thought goes into anticipating not only what users will say but also how they will say it, bringing skills into play that are not usually core to a web or mobile team.

Rich Response Development
Chatbots can respond on some platforms with media and interactive HTML content. These platforms can add value if the content is very focused around the core goals of the chatbot. However, introducing rich content risks confusing the user and leading them away from the primary conversation. More and more we are seeing features that allow chatbots to offer dialogue-based choices in addition to natural language.

Authentication
The importance of authentication depends on the chatbot use and type of messaging platform. Some messaging platforms give you the assumption of an authenticated user session and voice platforms are starting to be able to recognize distinct voices.

Session & Data Design
Chatbots generate a lot of data as well as relying on external sources of data. And they have a short term memory in their session. A robust and scalable data design is essential for project success.

Fulfillment
Whatever your bot does, it probably needs to talk to some external systems to do it! This can be a large part of a project’s scope, especially if it entails building the APIs in question.

Conversational Analytics
Traditional web analytics does not work for chatbots. Conversational Analytics requires fresh tools that help measure your bot’s health and KPIs such as conversion, engagement and retention. They also allow you to find, replay and analyze conversations.

Continuous improvement with Machine Learning
Most NLU platforms have some native support for Machine Learning and there is no limit to what can be added. A conversation is great training data if you can define outcomes at the start.
 

 

Need help planning and executing a successful chatbot project? Contact us!

PREV BLOG POST:

Google Assistant Actions

NEXT BLOG POST:

What is a Chatbot?