Natural Language Processing (NLP) is a field of computer science that deals with the interaction between computers and human language. It's a subfield of artificial intelligence that enables computers to understand and generate human language.

NLP is used in robotics to allow robots to interact with humans in a natural way. This can be done through speech recognition, natural language understanding, and natural language generation.

  • Speech recognition allows robots to understand human speech. This can be used for tasks such as following voice commands or providing information to users.

  • Natural language understanding allows robots to understand the meaning of human language. This can be used for tasks such as answering questions or following instructions.

  • Natural language generation allows robots to generate human language. This can be used for tasks such as providing information to users or engaging in conversations.

NLP is a powerful tool that can be used to make robots more intelligent and interactive.

Context creator

Before you start a conversation with Misty you need to define or create a context and give it a name. Using the context block you can add intents. You can consider intents as the main topics of your conversation. To add more intents you can use the gear icon.

The next stage is to give your intents a name using the name-sample block. Once you've decided the name you will need to write in keywords that are associated with that name so Misty can recognize the intent. So for example if you are creating an intent called 'humans', you will need to write in words that let Misty know how to identify it: round head; two eyes; two legs; language; pink skin, etc.

The context creation has to run before the conversation is designed. This is due to the fact that the contexts are a dropdown in the Blockly interface. Basically, you must run the context script, then refresh the page and the context will exist. Note: You shouldn't re-use context names as it can create a conflict, Misty won't know which one to use. However you are free to re-use intent names and keywords as these are contained to the context.

Conversation-State Block

This block contains the conversation that you will have with Misty. Each conversation has its own name and you can't use the same name in two conversations because Misty won't know which one is the correct one.

In the first text field you can write the name of your conversation. In the second text field, you can write which state block you want to run first. Typically the first state is a question or a greeting to get the conversation started.

State block

This is a fundamental block in NLP conversations. In the name field you can write the name of your state. You can see the state as the name you associate with that conversation. In the speak field, you can write what you want Misty to say when that state is triggered. In the context drop down you need to select the context of your conversation. By default, you will find the furhat.context.en.yes-no. In the action drop-own, you can select your favorite Misty action, you can f them in the Wizard tab. If you are in a noisy room, it can happen that Misty doesn't recognize what you said, in this case you will need write what she should say in the no match field. You can also define how many times she will repeat the text using the no match count field.

State transition block

If you are building a conversation with Misty you want her to go from one state to the other depending on the context that you are using. In the state field, you need to write the name of the state (for example: start). In the trigger field you need to write the intent that trigger a transition to the next state.

Start conversation

If there are several conversations in your program you may want to choose which conversation to start. You can use the start conversation block and input the name of the conversation that you written in the Conversation-State block.

Note: Just like with event blocks, when you are using NLP blocks you need to add a run until stopped block at the end of your program.

Create action

With this block, you can name and create your own action for the State block. As you can notice it has the same structure as Events blocks. In it, you can put all the movements or the blocks you want, including other NLP blocks and all what your imagination suggests to you. After you run it it will show up in your action drop-down in the State block.


With this block, you can select a specific intent from one of the contexts and insert it into speech blocks that utilize speech recognition.

Speak and listen context

With this block, you can program Misty to speak and listen to specific contexts, both default and customizable ones.

Last updated