OpenViSTAI · Agents · Blockchain · Crypto
Menu
AI Developer Tools & SDKs

Dialog Nlu

Dialog Nlu is an Apache-2.0 TensorFlow 2 and Keras library that implements transformer-based dialogue natural-language-understanding models for joint intent classification and slot filling. It integrates Hugging Face Transformers, includes Snips data, and provides examples and scripts for training, evaluation, incremental training, prediction, and a simple Flask API.

Independent OpenViST project profile, based on linked sources.

Dialog Nlu — OpenViST project profile in AI Developer Tools & SDKs.
OpenViST project illustration. See the linked sources for product details.
Understand the project

Practical overview

When it fits

Use it when building or studying a dialogue NLU component and you want a TensorFlow/Keras implementation with transformer model options and documented training and evaluation workflows.

Who it is for

  • Developers adding intent classification and slot extraction to conversational applications.
  • Researchers comparing transformer-based dialogue NLU and model-compression approaches.

Documented uses

  • Classify the intent expressed in a user utterance.
  • Extract and tag structured slot values from conversational text.
  • Train, continue training, evaluate, save, reload, and use a joint NLU model for prediction.
  • Explore model pruning and smaller transformer-model approaches for dialogue NLU.
Before you choose

Requirements & limits

The public repository identifies the project as Apache-2.0 licensed and documents installation from Git with pip.

  • The documented stack is TensorFlow 2, Keras and Hugging Face Transformers.
  • The repository lists different transformer architectures, but layer-pruning support is not uniform: it is unavailable for ALBERT in the listed support table and not supported for XLNet.
  • Training examples expect utterances, slot tags and intent labels in separate files.
  • The repository includes Snips training, development and test data, described as 13,084, 700 and 700 utterances respectively.

Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.

Source-based practical guide

Install Dialog Nlu from its repository

Install the library using the repository's documented Git and pip steps.

Before you start

  • Git
  • Python with pip

Steps

  1. Clone the Dialog Nlu repository.

  2. Change into the dialog-nlu directory.

  3. Run pip install .

Expected outcome

The package is installed from the cloned repository.

Guide limitations

  • This covers installation only; it does not configure a model or run training.
Source-based practical guide

Train and evaluate a joint NLU model

Follow the documented example to read prepared data, train a transformer NLU model, and evaluate it.

Before you start

  • Dialog Nlu installed
  • Training, validation and test data in the documented three-file format: seq.in, seq.out and label
  • A Hugging Face model identifier such as distilbert-base-uncased

Steps

  1. Read training and validation datasets with the provided Goo-format Reader.

  2. Create a model with TransformerNLU.from_config using the selected pretrained model.

  3. Train it with the training and validation datasets.

  4. Read the test dataset and call evaluate to obtain slot and intent metrics.

Expected outcome

The example returns slot token and tag F1 scores, a slot classification report, and intent accuracy.

Guide limitations

  • The example assumes the data files and paths are prepared; it does not explain how to create or label a dataset.
  • Layer pruning is supported only for transformer-based NLU models, and support varies across architectures.
Evidence and transparency

Sources & review

Source record details
Source availability
Active
Sources checked
18 October 2026
Original website title
MahmoudWahdan/dialog-nlu · Official homepage title · retained in its source language