Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents
excludeRelated

Introduction

Question answering is the most common use case in conversational applications. Orbita Answers is a system that uses a highly interconnected database that stores, processes and queries connections efficientlya fact-based AI approach to answering questions from information modeled in a knowledge graph.

Orbita Answers builds an answer to a question based on the structure and context of the question. A question has two parts: a topic and a relationship.

Topic. The subject of what is being asked.Relationship. An attribute of a A topic is a word or phrase (most likely be a noun, noun phrase, proper noun, or compound noun). Example: Cafeteria, Sunburn

Relationship. An attribute of a topic.

Let’s take an example:

...

  • A topic often has synonyms that people use to refer to the same thing, such as a Café, Cafeteria, or Restaurant.
    A relationship also often has synonyms. such as nearby, close, or in this building synonym is a word or a phrase that means exactly or nearly the same as the topic (most likely be a noun, noun phrase, proper noun, or compound noun).

  • A relationship also often has synonyms. such as nearby, close, or in this building; if the relationship is Hours, then synonyms may be open and hours.

...

  1. Create a new Knowledge Base into which you would like to import the Data.
    Click the vertical ellipses Note: Do not create two knowledge bases with the same name. This will create conflicts while deploying the project to Alexa/Dialogflow.

  2. Click the vertical ellipses button against the Knowledge Base.

  3. Select Import from the drop-down menu.

  4. In the Import dialog box, drop your .csv file in the area provided or click on the area provided to open the Operating System’s navigation window and select the .csv file.

  5. Make sure the .csv file is uploaded successfully and click UPLOAD.

...

Info

Click Learn more about CSV data to know how to construct/format the file.

Refer How to do I create a .csv file for Answers? to create your own .csv file.

...

Give a name to your Knowledge Base (Note that creating two knowledge bases with the same name will create conflicts while deploying the project to Alexa/Dialogflow.). You can create your own content schema and assign it to your knowledge base to have custom fields in the Facts screen. You can select a content schema from the dropdown list if already created, else select default for the multimodal content editor.

...

  1. In the Settings screen, select the Relationship tab and click (plus) icon.

  2. Enter the Relationship name and click ADD.

  3. In On the Relationship creation page, you can add synonyms to the Relationship name.

...

If you have many facts referencing the location and hours for the cafeteria, you can use tokens in the facts to save time and energy. If the information changes, you need only change the value of the token in the Content area. For more information, see https://orbita.atlassian.net/wiki/spaces/OCS/pages/7472042/How+to+use+Tokens?search_id=817eb9dd-9271-48cb-8c3e-543628f79456

Questions

In Answers, you can You can configure default fact content for a topic if no relationship is found.
You have to use the Any relationship from the dropdown while creating the fact content.

...

Questions

In Answers, you can test questions with the providers of your choice.

...

All the topics and relationships will be stored as slots in Orbita. Identifying the slots from a given utterance is the key for Answers to work effectively. Though the regular NLPs identify the slots from the utterance, sometimes they fail to extract all the slots values/entities you require.

We recommend using the Orbita NLP node with the Answers Manager node, in Experience Designer, to yield better results from Answers.

...

  1. Lists

  2. NLP node

Best Practices

How to model new content for Orbita Answers?

By constructing lists of topics and relationships, you can build a robust database of questions and answers for your patients.

Make a list of topics such as the Internet, Cafeteria, Gift shop, Influenza, Black Eye, and so on for all the subjects that are related to your situation.

Using a spreadsheet will make it easier to build and organize your database.

  1. Define the relationships for each topic. For example, a cafeteria may have a relationship to its Hours of operation and its Location.

  2. Define the questions that arise from a topic and relationship. For example, What are the hours of operation for the cafeteria? and Where is the cafeteria located?

  3. Define the facts that contain the answers to the topic - relationship pair. For example, the question can be When is cafe open? (Cafeteria - Hours). The answer would be The cafeteria is open from 5 AM to 11 PM.

The following image shows a spreadsheet of topics, relationships, questions, and corresponding answers. The first topic, Internet, has three relationships: Connect and Available. From these two relationships and one topic, five questions are generated with five answers.

...

Best practices for designing synonyms

If someone can refer to any of your topics or relationships by other names, you should list them. You can add them to your spreadsheet so that you can add the synonyms while adding the topics or relationships to the database.

Many topics have synonyms. For example, a cafeteria might be referred to as a cafe, restaurant, bistro, Grill, Eatery, Lunchroom, a place to eat or other synonyms.
Make your synonym list robust to ensure the best natural voice recognition and responses.Best practices and tips for authoring a knowledge base of facts to power a conversational question-answer experience using Orbita Answers.

Best practices for creating a Knowledge base

  • For each Knowledge base, three slots and one intent will be autogenerated

    • Slots

      1. <Knowledge base name>_TOPICS

      2. <Knowledge base name>_RELATIONSHIP

      3. <Knowledge base name>_INTERROGATIVE
        The below screenshot captures the autogenerated slots for the Knowledge base named FAQ.

        Image Added
    • Intents

      1. OA<Knowledge base name>INTENT
        The below screenshot captures the autogenerated intent for the Knowledge base named FAQ.

        Image Added
  • Ensure the knowledge base name is unique and doesn't match with the names from other modules such as Taxonomy.

Best practices for creating Topics

  • A topic is a word or phrase (most likely be a noun, noun phrase, proper noun, or compound noun).
    Example: Sunburn

  • A topic name doesn’t necessarily need to be a word in a dictionary. It could be a business name, brand name, product name, etc.

  • A topic name should be the singular form of the noun (e.g. Chemical Burn vs Chemical Burns). Orbita handles lexemes (burns, burning, burned, etc.)

  • There are cases where a topic might be a verb (e.g. Eat) and should be the dictionary form of the word (e.g. Eat, rather than eats, eating, ate. This form is also called the lemma form).

  • A topic can be an acronym (e.g. COPD). When specifying an acronym, use single letters with no spaces.

  • A topic may contain multiple concepts (e.g. Cancer and Hunger) but generally should focus on a single concept (e.g. Cancer, Hunger). A best practice is to think about the questions people will ask about your knowledge base – if someone is likely to ask about each concept separately, make it two topics. If they’ll ask about two concepts in the question (e.g. Will I lose my appetite during cancer treatments?), it’s okay to have a topic with two concepts.

Best practices for adding synonyms

  • A synonym is a word or phrase that means exactly or nearly the same as the topic (most likely be a noun, noun phrase, proper noun, or compound noun).

  • A synonym should be the singular form of the noun (e.g. Chemical Burn vs Chemical Burns). Orbita handles lexemes (burns, burning, burned, etc.)

  • A synonym should reflect the way people express topics conversationally and will not necessarily be a synonym that exists in a dictionary for your topic (e.g. severe allergic reaction or covered in hives may be synonyms for the topic anaphylaxis). Research ways people refer to concepts conversationally by looking at web search logs, call center logs, talking with customer support, etc.

  • A synonym should consider the question someone might ask about the topic. E.g. Assume a knowledge base of First Aid content, where a topic/relationship is Anaphylaxis/Causes. Consider the question What causes severe hives? ”severe hives” would be a synonym for Anaphylaxis

  • A synonym name doesn’t necessarily need to be a word in a dictionary. It could be a business name, brand name, product name, etc.

  • A synonym name can be an acronym. When specifying an acronym, use single letters with no spaces (e.g. COPD)

  • A good synonym reflects ways people refer to the concept conversationally.

Best practices for Facts

  • A fact should contain a topic and can have one or more relationships but the fact should not be a duplicate in terms of topic and relationships mapped to it.

How to model new content for Orbita Answers?

By constructing lists of topics and relationships, you can build a robust database of questions and answers for your patients.

Make a list of topics such as the Internet, Cafeteria, Gift shop, Influenza, Black Eye, and so on for all the subjects that are related to your situation.

Using a spreadsheet will make it easier to build and organize your database.

If people refer to any of your topics or relationships by other names, you should list them on your spreadsheet so that you can add the synonyms while adding the topics or relationships to the database.

Most topics have synonyms. For example, a cafeteria might be referred to as a cafe, restaurant, bistro, Grill, Eatery, Lunchroom, a place to eat or other synonyms.
Make your synonym list robust to ensure the best natural voice recognition and responses.

  1. Define the relationships for each topic. For example, a cafeteria may have a relationship to its Hours of operation and its Location.

  2. Define the questions that arise from a topic and relationship. For example, What are the hours of operation for the cafeteria? and Where is the cafeteria located?

  3. Define the facts that contain the answers to the topic - relationship pair. For example, the question can be When is cafe open? (Cafeteria - Hours). The answer would be The cafeteria is open from 5 AM to 11 PM.

The following image shows a spreadsheet of topics, relationships, questions, and corresponding answers. The first topic, Internet, has three relationships: Connect and Available. From these two relationships and one topic, five questions are generated with five answers.

...

Appendix

Knowledge Base. Complex structured information stored and used by Orbita Answers.

...