Chatbots 101 – a basic guide to chatbots

The whole world seems to be talking about chatbots, but what exactly are they? Let’s take you through some of the basics.


What is a chatbot?

Chatbots are computer programs that use a variety of technologies to simulate human conversation in either message form or as a voice interface. Though designed primarily to interact with humans, chatbots can also communicate with each other in order to gather information.


There are two main forms of chatbot:


  • Rule-based: The most basic (and some may say frustrating) form of chatbots, they can only handle keywords or pre-programmed requests. They are usually coded using a simple flow diagram and cannot respond to or learn anything outside of this.
  • Contextual: At the other end of the spectrum, chatbots armed with artificial intelligence and natural language processing (we’ll talk about these a bit later) are able to develop a sense of what sentences mean and can maintain context as the conversation progresses. This means end users can go ‘off script’ and the chatbot will still respond to them in a natural way.

A guide to the technology behind the chatbot

Sophisticated chatbots consist of complex underlying technologies in order to interact seamlessly with humans. These include:


  • Artificial intelligence: The main driver of a chatbot’s ‘intelligence’ is artificial intelligence (AI), specifically neural networks. AI allows these bots to learn from experience and respond to inputs to perform human-like tasks. AI consists of many different more specific technologies which also contribute to chatbot function:
    • Machine learning: An automated system of analytical model building, it can learn from experiences through labelled training data. This allows bots to continuously improve and adapt their processes to get the best results.
    • Natural language processing: This is basically the analysis, comprehension and generation of human language by a machine. This includes both speech and text.

How does a chatbot work?

As you may expect from a technology this sophisticated, chatbots are quite complicated beasts, but there are some basic processes that are useful to understand.


In many ways chatbots are similar to most enterprise software – they consist of outputs, inputs, databases, APIs and a lot of code to make it all work together. The main point of specialisation for chatbots is the element of language processing. This adds a lot of intricacy to the application and creates the need for a more sophisticated central architecture. This architecture has two main components:


1. Conversation Model

This part of the chatbot is responsible for controlling the flow of the conversation. When we talk about conversational UX, we’re referring to the design of this part of the chatbot.


The conversation model may perform logic based on the conversation state, it may prompt the user for information, it may make calls out to APIs to fetch data for the customer or it could even temporarily hand the conversation over to a human agent.


2. Natural Language Processing

Natural Language Processing converts user’s speech or text into structured data which the Conversation Model can then understand and respond to. This consists of a few steps:


  1. Tokenisation: This separates a series of words into pieces or tokens that are linguistically representative, with a different value in the application.
  2. Sentiment Analysis:The process of inferring the emotion, attitude or polarity implicit in a given piece of text.
  3. Named Entity Recognition: This aspect looks for different categories of words and identifies key named information, e.g names or products.
  4. Intent Detection: The search for the grammatical significance in the user’s text to discover related phrases and determine core meaning. Also known as semantic parsing.

A quick history of chatbots

It’s taken a lot of development to get chatbots to the position they are today.


ELIZA

Largely recognised as the world’s first chatbot, ELIZA was developed in 1966 by Joseph Weizenbaum. It was principally designed to mimic a psychotherapist and was capable of answering basic questions and asking users to elaborate on their discussions. The program lacked any AI implementation so was unable to functionally understand the conversation in which it was participating. However, it received a lot of positive attention and effectively spurred the chatbot movement.


A.L.I.C.E

Directly inspired by its predecessor ELIZA, A.L.I.C.E stands for Artificial Linguistic Internet Computer Entity and officially went live in 1995. A.L.I.C.E used a specific programming language known as Artificial Intelligence Markup Language which contains a list of categories to discuss with the user. It can then choose the most appropriate response for that discussion.


SmarterChild

Smarterchild was the first chatbot designed for SMS platforms and launched in 2001. It was the first bot to achieve widespread adoption and was able to provide users with updates on the weather, news and film showings. It is reported to have chatted with over 30 million users on instant messenger and MSN.


Siri

Now a well-known name, SIRI is the personal assistant installed into Apple devices, originally designed to help users utilise the internet in more creative ways. Designed by SRI International Artificial Intelligence Center, it’s now a staple of the iOS device – capable of a dazzling array of activities from booking a table at a restaurant to transcribing your words into text. Siri utilises the latest natural language processing software to understand user requests and learning preferences.


How can chatbots help your business?

In the age of conversational marketing and digital interaction, chatbots can provide a number of services for business in all industries.


  • Customer service: Sophisticated chatbots can be utilised to provide your customers with ready information and help with everyday problems and tasks. This can help to reduce call centre costs.
  • Personalised, instant interaction: Chatbots equipped with machine learning are able to continuously improve their interactions. They can also use personal data collected from each chat experience to tailor their interactions to different customers preferences. This provides a more rewarding experience for your users.
  • Develop customer relationships: Having your brands chatbots available on social media platforms to aid your target audience in searches for anything from holiday destinations to the best insurance offerings, can help to build your brand awareness and develop relationships with potential customers.

If you are interested in learning more about the possibilities that chatbot technology could hold for your business, get in touch with the experts at Stackchat.