Snips Natural Language Understanding

Welcome to Snips NLU’s documentation.

Snips NLU is a Natural Language Understanding python library that allows to parse sentences written in natural language, and extract structured information.

It’s the library that powers the NLU engine used in the Snips Console that you can use to create awesome and private-by-design voice assistants.

Let’s look at the following example, to illustrate the main purpose of this lib:

"What will be the weather in paris at 9pm?"

Properly trained, the Snips NLU engine will be able to extract structured data such as:

   "intent": {
      "intentName": "searchWeatherForecast",
      "probability": 0.95
   "slots": [
         "value": "paris",
         "entity": "locality",
         "slotName": "forecastLocality"
         "value": {
            "kind": "InstantTime",
            "value": "2018-02-08 20:00:00 +00:00"
         "entity": "snips/datetime",
         "slotName": "forecastStartDatetime"


The exact output is a bit richer, the point here is to give a glimpse on what kind of information can be extracted.

This documentation is divided into different parts. It is recommended to start by the first two ones.

The Installation part will get you set up. Then, the Quickstart section will help you build a toy example.

After this, you can either start the Tutorial which will guide you through the steps to create your own NLU engine and start parsing sentences, or you can alternatively check the Key Concepts & Data Model to know more about the NLU concepts used in this lib.

If you want to dive into the codebase or customize some parts, you can use the API reference documentation or alternatively check the github repository.

Indices and tables