Getting started with dialog
In this short tutorial, we help you use a dialog to build your first conversation.
A dialog uses natural language processing and machine learning technologies to understand user questions and requests, and respond to them with answers that are authored by you.
Add intents from a content catalog
The Intents page is where you start to train your assistant. In this tutorial, you add training data that was built by IBM to your skill. Prebuilt intents are available from the content catalog. You give your assistant access to the General content catalog so your dialog can greet users and end conversations with them.
-
Click Content Catalog.
-
Find General in the list, and then click Add content.
-
Open the Intents tab to review the intents and associated example utterances that were added to your training data. You can recognize them because each intent name begins with the prefix
#General_
. You will add the#General_Greetings
and#General_Ending
intents to your dialog in the next step.
You successfully started to build your training data by adding prebuilt content from IBM.
Build a dialog
A dialog defines the flow of your conversation in the form of a logic tree. It matches intents (what users say) to responses (what your virtual assistant says back). Each node of the tree has a condition that triggers it, based on user input.
We'll create a simple dialog that handles greeting and ending intents, each with a single node.
Adding a start node
-
Click Dialog.
The following two dialog nodes are created for you automatically:
- Welcome: Contains a greeting that is displayed to your users when they first engage with the assistant.
- Anything else: Contains phrases that are used to reply to users when their input is not recognized.
-
Click the Welcome node to open it in the edit view.
-
Replace the default response with the text
Welcome to the tutorial!
. -
Click to close the edit view.
You created a dialog node that is triggered by the welcome
condition. (welcome
is a special condition that functions like an intent, but does not begin with a #
.) It is triggered when a new conversation
starts. Your node specifies that when a new conversation starts, the system responds with the welcome message that you add to the response section of this first node.
Testing the start node
You can test your dialog at any time to verify the dialog.
- Click Try it to open the Try it out pane. You should see your welcome message.
Adding nodes to handle intents
Now add nodes between the Welcome
node and the Anything else
node that handle our intents.
-
Click Add node.
-
In the node name field, type
Greet customers
. -
In the If assistant recognizes field of this node, start to type
#General_Greetings
. Then, select the#General_Greetings
option. -
Add the response text,
Good day to you!
-
Click to close the edit view.
-
Click Add node to create a peer node.
-
Name the peer node
Say goodbye
and specify#General_Ending
in the If assistant recognizes field. -
Add
OK. See you later.
as the response text. -
Click to close the edit view.
Testing intent recognition
You built a simple dialog to recognize and respond to both greeting and ending inputs. Let's see how well it works.
-
Click Try it to open the "Try it out" pane.
-
In the text field, type
Hello
and then press Enter. The output indicates that the#General_Greetings
intent was recognized, and the appropriate response (Good day to you.
) is displayed. -
Try the following input:
bye
howdy
see ya
good morning
sayonara
watsonx Assistant can recognize your intents even when your input doesn't exactly match the examples that you included. The dialog uses intents to identify the purpose of the user's input regardless of the precise wording used, and then responds in the way you specify.
Result of building a dialog
That's it. You created a simple conversation with two intents and a dialog to recognize them.
Next steps
This tutorial is built around a simple example. For a real application, you need to define some more interesting intents, some entities, and a more complex dialog that uses them both. When you have a polished version of the assistant, you can integrate it with websites or channels, such as Slack, that your customers already use. As traffic increases between the assistant and your customers, you can use the tools that are provided in the Analytics page to analyze real conversations, and identify areas for improvement.