Automating Customer Interactions with IBM Watson Conversation and Bluemix
Trained 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.
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.
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.
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.
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.
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.
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
- Analyzing Customer Feedback Emotions with IBM Watson and Bluemix OpenWhisk
- Using Spark Streaming, Apache Kafka, and Object Storage for Stream Processing on Bluemix
- Data Stream Processing on IBM Bluemix: Streaming Analytics, Apache Spark, and BigInsights