# Natural Language Understanding

In order to process and understand user speech, HyperSkill utilizes a variety of natural language understanding techniques. Depending on the user license, authors can create simulations using the following NLU engines:

<br>

* Key Phrase
* GPT
* Riva

<br>

The Key Phrase engine is a tool that helps identify certain phrases, called "intents", that the user may say. These intents are used to move the conversation forward in a simulation. The Key Phrase engine is available to all users and is typically used when there is not a lot of user data available. As more examples of what users might say are added, the Key Phrase engine becomes more accurate.

<br>

GPT is another tool that uses artificial intelligence to understand what users are saying. GPT is recommended for simulations with little data and can achieve high accuracy with only a few example utterances. However, using GPT can become costly if it is used too much. Therefore, access to GPT is only granted on a per-user basis and there is a limit on the amount of times GPT can be used in a given month. When the author of a simulation selects GPT as the NLU engine, they extend GPT access to any users experiencing the sim. When the experience user says or types something, this counts as one use of GPT. When the maximum number of uses allowed for the month is reached, HyperSkill switches from GPT to Key Phrase automatically. The GPT limit per month will depend on the license type used for HyperSkill.  For more information on how to access and use GPT, please contact the SimInsights team.

<br>

Riva is a speech engine created by Nvidia that allows the use of custom-trained neural network models in simulations. These models can achieve even higher accuracy than GPT but require a large amount of data to train. Because of this, we recommend using Riva only when enough data has been collected. If you want to use Riva, you can contact the SimInsights team for help.

<br>

To change the engine in use, you can enter a simulation in edit mode and click on the Settings tab, then scroll to the Natural Language Understanding section. You can only select models you have access to. For example, in the image below, only Key Phrase is selectable.

<figure><img src="/files/kDZk3XwrRSbKbW2ZCRMN" alt=""><figcaption></figcaption></figure>

<br>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.siminsights.com/ai/conversational-ai/helpful-terminology-for-conversational-ai/natural-language-understanding.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
