Photo by Joshua Kraus on Unsplash

Oracle Digital Assistant, Quick Reply Intents, Knowledge Documents & QnA

What Is the Oracle Approach & What Can We Learn From It?

Cobus Greyling
7 min readJun 7, 2022

--

Introduction

In this post I’m focussing on Oracle Digital Assistant’s (ODA) approach to Question And Answer, and also Knowledge Bases. Recently I did a post on the ODA in general and how far it has come during the last two years. You will find the previous two posts at the end of this article.

As seen below, when creating a skill in Oracle Digital Assistant, there is an option to develop the dialog flow in YAML or Visually. But ODA follows an approach to question answering which is lightweight and does not involve any dialog mode complexities; both visual and YAML.

When creating a skill in Oracle Digital Assistant, there is an option to develop the dialog flow in YAML or Visually.

In a way it reminds of a single dialog turn voice interface, in the sense that as many as possible questions are answered in a simple fashion without involvement of other conversational framework elements.

ODA Question & Answer Implementations

ODA uses the following three approaches:

1️⃣ Intents With Imbedded Answers

  1. This is a contained approach where the Q&A is encapsulated within the intent.
  2. The user utterance is assigned to an intent, and the response is imbedded within the intent.
  3. This can be seen as an example where the lines between intents, dialog flow and bot messages are blurred.
  4. The overhead of segmenting the functionality and breaking it up between intents, dialog flow sections and bot messages is negated.
  5. This implementation can be seen as quick reply intents.

2️⃣ Knowledge Documents

  1. Knowledge documents can be seen as an extension of number one; Intents With Imbedded Answers.
  2. Knowledge Documents can also be seen as an intent discovery tool, by which a PDF or URL can be submitted, and in rapid fashion have the document segmented into intents.
  3. These generated intents have a question, answer and generated utterance.
  4. Document formatting can be improved to yield better results.
  5. The format of documents are very restrictive by limiting it to two types.
  6. Knowledge documents should be seen as a bulk form of automation in recognising intents, creating intents and more specifically quick reply intents.

3️⃣ Q&A

  1. The Q&A portion of the ODA framework is more traditional in the sense of chatbot knowledge bases.
  2. A CSV file is uploaded from which question, answers and categories are derived.
  3. The format of the CSV is very prescriptive and deviation is not accommodated.
  4. The categories can have sub-categories, or nested categories.
  5. The CSV file format is not conflated or technical in nature and straight forward to create from a technical perspective.
  6. In future functionality, this feature can be handy in building intents and sub or nested intents.
  7. Multiple Q&A instances can be created within one encapsulated Q&A module.
  8. These three steps in Question And Answer allows for scaling as seen below.
A quick reply intent implementation can grow in functionality and complexity and demand Knowledge Documents to be leveraged, which in turn can necessitate an Q&A implementation.

A seen above, a quick reply intent implementation can grow in functionality and complexity and demand Knowledge Documents to be leveraged, which in turn can necessitate an Q&A implementation.

Intents With Imbedded Answers

Quick Reply Intents

As seen below, within the HourAsk intent, an answer can be defined which will be presented to the user in the instance where this intent is hit.

Notice the Enable Intent toggle on the top right, where the intent can be switched on or off. Also notice the translation or multiple language option button.

Within the HourAsk intent, an answer can be defined which will be presented to the user in the instance where this intent is hit.

The intent can be tested after training, there is no activity seen on the Conversation flow portion of the testing interface, which is accurate. And the defined response is returned and the intent serviced.

To some degree this reminds of AWS Lex V2, where intents can be leveraged without any dialog flow development.

The intent can be tested after training, there is not activity on the Conversation flow portion of the testing interface, which is accurate. And the defined response is returned and the intent serviced.

Different languages can be defined within the intent, but an external translation service API needs to be defined.

Different languages can be defined within the intent, but an external translation service API needs to be defined.

Knowledge Documents

The knowledge Document functionality is easily accessible from the vertical navigation pane.

The knowledge document is easily accessible from the vertical navigation pane.

The Knowledge Document instance needs a name, Language and the source. For the demo I selected a URL. Or a PDF can be dragged and dropped.

The Knowledge Document instance needs a name, Language and the source. For the demo I selected a URL. Or a PDF can be dragged and dropped.

Below, the URL and the language defined.

The URL and the language are defined.

Uploading the document is fast, the source type is given with the status and language.

Uploading the document is fast, the source type is given with the status and language.

The exciting part is when the processing is done and successful, and the intents can be reviewed.

The exciting part is whens the processing is done and successful, the intents can be reviewed.

Below, the intent names, the question and answer, with Generated Utterances. This example is particularly messy due to the nature of the document.

As users become familiar with the interface, document formatting can be improved and hosted on a URL for consumption as a knowledge document.

The intent names, the question and answer, with Generated Utterances.

The intent can be edited in terms of:

  1. Intent name,
  2. Question,
  3. Answer,
  4. Generated Utterances.

The generated utterances has a Large Language Model feel to it, and it will be interesting to know how this is performed under the hood.

The intent can edited as seen above.

The intent submitted and incorporated into the skill…

The intent submitted as an entity to the skill.

Finally, the implementation of the knowledge document can be tested…

Testing he implementation of the knowledge document

Q&A

Below, the CSV file used for creating the Q&A module. As seen below, the format is simple. There is a measure of cleanup required on the file as certain punctuation and syntax break the upload process.

The CSV file used for creating the Q&A module. As seen below, the format is simple. There is a measure of cleanup required on the file as certain punctuation and syntax break the upload process.

The upload can be examined and edits can be made to each individual line. This measure of visual inspection is of great value in ensuring the integrity of the Q&A module.

The upload can be examined and edits can be made to each individual line. This measure of visual inspection is of great value in ensuring the integrity of the Q&A module.

The Q&A routing configuration includes additional request verbs, expansions on those verbs, sentence prefixes and question verb prefixes.

The Q&A routing configuration includes additional request verbs, expansions on those verbs, sentence prefixes and question verb prefixes.

Conclusion

Oracle Digital Assistant has grown much over the last two years, with enhancements to intents in terms of…

  • Functionality is being added to intents, richer management and tweaking of intents.
  • Functionality is also being added to entities, blurring the lines between intents, entities, dialog flow and messages.
  • Intents & Entities seem to be coupled, which leads to improved accuracy.
  • Intents are linked to sections of flow, also aligning with Gartner leaders best practice.

The implementation of Large Language Models in the form of autocompletion and intent utterance examples are indeed exciting.

However, it does feel that the product is not as cohesive and the different elements as tightly coupled as environments like Kore AI or Cognigy. This is especially the case looking at IBM Watson Assistant.

--

--

Cobus Greyling

I explore and write about all things at the intersection of AI & language; LLMs/NLP/NLU, Chat/Voicebots, CCAI. www.cobusgreyling.com