Automating Customer Interactions with IBM Watson Conversation and Bluemix

by Ilya DrabeniaOctober 5, 2016
Virtual agents can significantly optimize the operations of customer service departments.

ibm-bluemix-watson-conversation-serviceTrained to answer frequently asked questions, chatbots can help organizations to automate a variety of customer interactions, engaging team members only in complex situations. In this post, we explain how to work with the Watson Conversation service in IBM Bluemix for creating chatbots.

 

Overview of Watson Conversation

You can easily find and create the Conversation service in the IBM Bluemix catalog. The service provides users with a special tool for training chatbots. In the Workspaces section, you can find the list of learned domains for your chatbots.

ibm-watson-conversation-dashboard

Watson Conversation dashboard

If you open a workspace, you will be able to see three tabs:

  • Intents. The list of learned and programmed actions.
  • Entities. The list of subjects that Watson will recognize during a conversation.
  • Dialog. The tool for modeling the schema of a dialog. It enables you to specify sequences of questions and typical answers on these questions.

ibm-watson-conversation-workspace

Intents in a sample Watson Conversation workspace

You can also export all your configurations to JSON files, as well as make requests to the Conversation service using the REST API provided by IBM Watson.

 

A sample chatbot

To better understand the capabilities of Conversation, let’s take a look at our five-minute “Hello, World” chatbot.

The goal was to train the chatbot to use a few sentences for turning lights on and off. To do this, we defined two intents: turn on and turn off. We also included a number of words that may be used as synonyms and need to be recognized in a user’s text.

ibm-watson-conversation-intents

Intents for our “Hello, World” chatbot

Then, we defined the light entity, specifying words that describe light in English.

After that, we provided Watson Conversation with the set of rules on how to answer questions that include the above intents and entity.

ibm-watson-conversation-dialogs

Sample dialog schema for the demo application

For debugging purposes, you can use the embedded chat, trying out different combinations of sentences and investigating how Watson Conversation responds to your requests.

ibm-watson-conversation-chat

Watson Conversation chat

When the model is ready, you can start testing it in your application. For this purpose, the service provides a special REST API.

ibm-watson-conversation-service

Testing the chatbot with the Watson Conversation REST API

You can find the Watson Conversation JSON model used in this tutorial.

 

Conclusions

We did not experience any difficulties when creating our demo chatbot with Watson Conversation. All the components—the API, services, and UI—seemed to be consistent and simple to use.

With the Bluemix services based on IBM Watson, it is now possible to automate domains that were not possible to automate before. In particular, the Conversation service allows you to create natural dialogs using virtual agents and bots, reducing the pressure on customer service teams.

 

Further reading

 


The tutorial is written by Ilya Drabenia, edited and published by Victoria Fedzkovich and Alex Khizhniak.