In this post, we are going to see how to create a sample chatbot using Oracle Intelligent Bot Cloud Service (IBCS).Before developing the chatbot, we should understand the terminology.
- Intent: The entry point of any conversation or use case by describing the various actions that your bot helps its users complete. It enables bot to recognize user input because each intent has a set of typical user statements associated with it.
- Utterance: It is a typical statement or sample data for an Intent which helps to train the bot. Need to add a good pool of utterances to each intent which will decide to choose the Intent. It is not necessary to be exact string matching.
- Entity: It is to provide a context to enable your bot to complete a user request. It is a variable or parameter for an Intent or an important word in an input. It is a re-usable component.
- Dialog Flow: The dialog flow describes how your bot reacts as different intents are resolved. It defines what your bot says to its users, how it prompts them for input, and how it returns data. Think of the dialog flow as a flow chart that’s been transposed to a simple markdown language. In Bots, this markdown language is a version of YAML called OBotML.
- Custom Components: To put your bot’s intelligence to work, you need to add components and then create a dialog flow. At present, we have two types of components. One is System components which are available by default with the bot and the Other category is custom components which are developed in external systems, used in the bot to completed the flow for the user request.
- Channels: Enables user to connect to messaging clients like Facebook Messenger, WeChat or any other custom clients like mobile apps, web applications. Oracle IBCS provided client SDKs using which we can generate custom clients as well to interact with the bots.
Please find the above screenshot of an Oracle Intelligent Bot Cloud Service. All the components discussed above are pointed on the image.
This image is from a “Finacial Bot” where Balances, Send Money, Transactions etc are the list of intents. The statements like “Do I have enough balance?”, “How much do I have available?” etc are utterances for the Intent “Balances”, which means when the user gives any of these statements to the bot, then the bot will fetch the “Balance” intent.
You can also observe “Resource Bundle” on the image which is a new feature in the IBCS which helps to train the bot for multi-language support.
We will see how to develop our first bot using Oracle IBCS in the next article: Oracle Intelligent Bots: Getting Started with Chat bots – My First Chat Bot- Part 2