A recent Oracle blog, written by Frank Nimphius, explored how to integrate frequently asked questions (FAQs) with Q&A intents and framework in Oracle Digital Assistant. Creating a bot to provide answers to frequently asked questions (FAQs) is a popular first chatbot project. The expectation is that the chatbot will reduce the number of calls needing to be handled by a human and that it will increase the number of service requests that can be processed within a given time. Chatbots that answer questions certainly live up to that expectation, but they are not very engaging and certainly could do more.
Imagine the following conversation for a pasta-ordering bot:
“Do you deliver pasta?”
“Sure, we do.”
“Great, I’d like to order pasta then.”
Building a bot that answers frequently asked questions benefits an organization, but the benefits increase if the bots also handle follow-up actions such as taking orders. Here’s another example:
“When does my cable network subscription expire?”
“Your subscription expires on Monday, February 3, 2020.”
“Do you offer a discount for early subscription renewals?”
“We offer a 7% discount for renewals signed 3 months before the end of a contract.”
“Great. I’d like to renew my subscription.”
The frequently asked question in the example above—the second question—refers to the general conditions for receiving a discount when renewing a subscription. The other two user interactions are user-specific tasks that require back-end service access.
The example also demonstrates that frequently asked questions provide the most value if they are integrated into a chatbot that also knows how to handle follow-up actions and can query back-end systems for user-specific information.
Q&A Intents and Framework in Oracle Digital Assistant
As of version 19.4.1, Oracle Digital Assistant provides two options for implementing frequently asked questions in Oracle Digital Assistant skills: Q&A intents and Q&A framework.
Q&A Intents
These intents are created and treated as regular user intents and get resolved by the same natural-language-processing (NLP) model. Whereas regular intents initiate a user conversation defined in the skill dialog flow, Q&A intents return a predefined bot response message. Q&A intent messages are read from resource bundles, so organizations stay in control of the wording and the tone even for foreign languages. A typical use case for Q&A intents works with quick and short questions that should resolve to a single answer given with a high degree of certainty.
Q&A Framework
This framework processes user messages in parallel with the NLP intent model, using Elasticsearch to resolve answers to questions. To train the Q&A framework, developers upload comma-separated-value (CSV) documents that contain answers as well as one or more questions for each answer. Use cases for the Q&A framework include verbose questions that may sometimes have different answers and FAQs that need to consider a context.
For example, the following question to a bank bot may return different answers, depending on the membership of the bank’s customer: “Can I have a second card for my wife?”
The answer for a gold card member could be, “Gold cardholders can receive a second card for a family member. The spending limit of this card is $1,000 per day and $5,000 per month, but the limit can be changed on request.”
Whereas the answer for regular card members could be, “Regular credit cards cannot be shared. To share credit card accounts, a gold card membership is needed.”
This use case can be easily implemented with the Q&A framework because a skill’s dialog flow is involved, but this result is harder to achieve with Q&A intents.
The two Q&A implementations are not mutually exclusive and thus can be used in combination within a single skill to integrate FAQs in Oracle Digital Assistant. For the sake of clarity, the hands-on instructions in this article use different skills for each Q&A approach.
Getting Started with Oracle Digital Assistant
Below are the prerequisites for following along with the hands-on steps in this article to integrate FAQs in Oracle Digital Assistant:
- You need a trial or paid instance of Oracle Digital Assistant 19.4.1 or later. You can sign up for a free trial at cloud.oracle.com.
- You need to download and extract (unzip) the resources for this hands-on exercise to your computer.
Follow these initial steps to start the service and import the bots:
- Start Oracle Digital Assistant in a browser by typing
https://<your cloud URL>/botsui/
into the URL field. - Click the hamburger icon at the upper left.
- Choose Development and then Skills.
- Close the menu by clicking the hamburger icon
- Click Import Skill, and navigate to the location to which you extracted the downloaded resources for this article.
- Open the starterSkills folder, select the OraMagFinance(1.2).zip file, and click Open.
- Again click Import Skill, select the OraMagPasta(2.6).zip file, and click Open.
To learn more about Oracle Digital Assistant and to get a more in-depth look at Q&A intents and Q&A framework, check out the Oracle blog and additional resources attached below.