Mix concepts and tools review

To understand procedures described in different parts of the rest of this document, it helps to have some understandings of the Mix platform and Mix projects. This includes familiarity with Mix concepts and familiarity with Mix tools used create, build, and deploy resources from a Mix project.

If you are already familiar with the Mix platform in general, feel free to skip this section.

Projects

A Mix project is a working space used to author and bring together materials to build resources to support automated:

  • Speech recognition
  • Semantic interpretation
  • Conversational dialog flows

A project can be defined for one or more languages.

A project provides a space to define the sort of things people will say and talk about, and the things they will ask to do, in one specific subject domain. It also provides a space to define conversational flows that branch based on what people say within the same domain.

Mix tooling and project authoring

Mix provides multiple tools to help you create resources.

Authoring tools

Mix provides two web-based GUI authoring tools:

  • Mix.nlu is used to create domain-specific ontologies and sample sets that can be built into NLU models and DLMs
  • Mix.dialog is used to design and develop interactive conversational models

Administration tools

Mix also provides three administration toolsets:

Mix dashboard

The Mix dashboard is a web-based GUI tool used to:

Mix.api

Mix.api is a RESTful API that allows you to automate Mix dashboard operations as scripts.

Mix.cli

Alternatively, a command line utility, Mix.cli  , is available. This utility duplicates much of the functionality of Mix.api v4 as a command line application.

Builds and resources

From a project you can generate each of the following runtime resources using the Mix dashboard, Mix.api, or Mix.cli:

  • Domain language model (DLM): To extend a base language model to increase the probability of recognizing words in a specific domain. Note that this is referred to as an ASR model in the Mix UI.
  • Natural language understanding (NLU) model: To interpret text and identify intended actions from a set of action intents the model is trained on.
  • Dialog model: To route a human-machine dialog flow based on the intent inferred from spoken or written input of a user.

Building resources

NLU models and DLMs are built from project contents authored in or imported into Mix.nlu.

Dialog models are built from project contents authored in or imported into Mix.dialog and Mix.nlu.

Each of these types of resources, once deployed, can be accessed and used by an NLP application.

Mix can save multiple builds from the same project, containing different versions of each of the three types of model resources.

For self-hosted installations, whether Mix services or Speech Suite 11, model resources can be downloaded from Mix via the Mix dashboard, Mix.api, or Mix.cli, and deployed locally. To download resources via Mix.api or Mix.cli, it is necessary to authorize using Mix client id and secret.

Application configuration

An application configuration, or app config, is a configuration of specified versions of built model resources from the same Mix project, deployed to a specific environment. For example, an app config could specify NLU model version 1, DLM version 1, and Dialog model version 2 built from a CoffeeApp project.

Deploy app configuration

The app config is identified by a unique context tag.

An app config is associated with an application.

URN

A uniform resource name (URN) is used within the hosted Mix platform to specify and access a particular model resource within an app config. The URN includes the context tag for the app config and the type of model resource. Hosted Mix platform service APIs can reference these URNs at runtime to make use of the resources.

In self-hosted service installations, Mix resources may or may not be referenced by Mix URN, depending on the service and setup. Model resources are most often downloaded from the Mix platform, and deployed on a server locally.

Self-hosted Dialog service installations using Nuance Component configuration storage service (CCSS) can reference locally desployed model resources by Mix URN. Otherwise resources are accessed via local server URL.

Self-hosted Krypton and Speech Suite 11 installations will generally access locally deployed Mix resources via server URL instead.

Mix application

Within the Mix hosted platform, an application is defined as one or more app configs, each with a set of resources, deployed in an environment. These app configs can come from multiple Mix projects.

Within a Mix application, you can define a set of credentials to access Mix platform hosted resources within application app configs.

A Mix application is identified by an App id unique to the application.

Mix client applications

A hosted Mix application and its resources can be accessed by multiple client applications. To get access to hosted Mix resources, a client application must be authorized using OAuth credentials.

Mix client id and client secret

A client id and client secret for a client application can be generated in Mix tooling. A client application must use these credentials to obtain an authorization token. This authorization token then allows access to hosted Mix services and resources.

Self-hosted applications, whether Mix services or Speech Suite 11, will not make use of Mix authorization at runtime. However, to download model resources using either Mix.api or Mix.cli, Mix authorization will be required.