Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Overview of Orbita Answers

Excerpt
nameAnswers Description

One of the most common uses for chatbots and smart assistants is answering questions posed by end-users. “Where is the hospital located?” “How much is my co-pay?” “What are the early signs of breast cancer?”

To answer questions like these, a bot must do a few things:

  • Understand the question being asked

  • Access content with information related to the question

  • Find the right information in the content to answer the question

While Orbita supports

...

several different approaches for implementing a question-answering bot, in almost all cases the recommended approach is to use Orbita Answers.

Orbita Answers uses a fact-based approach to question-answering, which means that answers to questions are drawn from a structured knowledge base of information managed within Orbita. The knowledge base organizes information by facts. A fact is simply a structured content item containing information about a specific topic. A fact also has a set of questions associated with it.

To take an example, imagine a knowledge base of first aid information. The facts within this knowledge base might cover topics such as “influenza” and

...

“sunburn.” Within the topic of influenza, there might be multiple facts regarding treatment, symptoms, risk factors, etc.

A single fact about influenza treatment would have questions associated with it like:

  • How do you treat influenza?

  • How can you treat the flu?

  • treatment options for the flu?

Understanding the Knowledge Base

...

For example, continuing with the first aid example, a knowledge base containing facts about the flu and sunburn might look like:

Article

Questions

Topic

Relationship

Influenza symptoms include fever, chills, muscle aches, cough, congestion, runny nose, headaches, and fatigue.

  • What are the symptoms of the flu?

  • Do I have the flu?

  • What does the flu feel like?

Influenza

Symptoms

The flu is treated primarily with rest and fluid to let the body fight the infection on its own.

  • How do I treat the flu?

  • How can I treat the flu at home?

  • Can the flu be treated?

Influenza

Treatment

Take frequent cool baths or showers to help relieve the pain. Use a moisturizer that contains aloe vera or soy to help soothe sunburned skin.

  • How can you treat

a
  • sunburn?

  • How do you get rid of

a
  • sunburn?

  • What can you do about a sunburn?

Sunburn

Treatment

Table 1: Example table representing a knowledge base of first aid information

...

  • 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 – if someone is likely to ask about each concept separately, make it two topics. If they’ll they ask about two concepts in the question (e.g. Will , will I lose my appetite during cancer treatments?), it’s okay to have a topic with two concepts.

...

  • 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. For example, 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 the ways people refer to the concept conversationally.

...

The fact you are working on will be locked for other users to edit. Any other user that who tries to edit the locked fact will get a pop-up message and can choose to force edit the fact by clicking on Continue.

...

Adding a Topic

...

  1. Click on the Questions tab

  2. Enter in questions capturing the various ways someone might ask for information covered in the article. For example, if the article includes location information for a hospital, questions might include “Where is the hospital located?” “Where’s the hospital?”, etc.

  3. Click Save button

...

You can use slots/terms in these questions. For example, the user might ask one of the below questions with the same intent.

  • Where is the hospital located?

  • Where is the health center located?

  • Where is the health facility located?

You can club all these into one question using a common slot/term that contains all the variations of the word hospital as shown below.

...

This slot/term can be used in the questions.

  1. While adding questions use the “@” character. You will see a drop-down listing all the slots/terms.

    Image Added

  2. Select the slot/term.

    Image Added

Best Practices for creating Facts

It is a best practice to add less than 8 Relationships on a Fact to avoid a known performance issue.

If you have 8 or more Relationships to be added to the Fact, as a workaround, instead of adding all the Relationships to a single Fact, you could create two separate Facts, dividing the number of Relationships across them.

For example, instead of having one single Fact with 1 Topic + 8 Relationships, you could have two Facts, with 1 Topic + 4 Relationships each.

Managing a Knowledge Base in Orbita

...

Enabling this option creates an intent per fact, using the questions associated with the fact (on the Questions tab) to train the natural language processor. Enabling It is recommended to enable this option is recommended as it increases accuracy provided and provides sufficient and relevant questions are added to the question tab for each fact.

...

The new tab Intents will capture all the Auto-generated intents for each fact.

...

Refer, How do I create an intent? and How to use Annotations in Intents for more information on intents.

Setting a Primary Topic

In most cases, a knowledge base will be created to capture information on a specific topic. For example, imagine a knowledge base created to contain information about sleep & wellness. Topics in this knowledge base might include general information about sleep, or specific information about insomnia treatment.

...

By defining a fallback relationship, the fallback relationship will be used in cases where an end-user asks about a topic, without expressing a relationship in the question (e.g. “insomnia”, “COVID-19”, etc)

A general best practice is to create a relationship covering general information and to use it as a fallback relationship.

See also How do I set up and use Answers?

Related Articles

Filter by label (Content by label)
showLabelsfalse
max5
showSpacefalse
cqllabel = "answers"