Conversational language understanding integration overview

You can integrate a conversational Language Understanding (CLU) model with a Copilot Studio agent. Conversational language understanding is a feature offered by Azure AI Language. It's a cloud-based service that applies machine-learning intelligence. You can use it to build a natural language understanding (NLU) component for a conversational application. Language service APIs are available, but not required, for you to integrate with Copilot Studio agents. Azure Language Studio provides natural language processing (NLP) features for analyzing conversational text.

For projects created with this capability, you can access intents and entities from the CLU model directly in Copilot Studio. You map CLU intents to trigger topics in the same way as native Copilot Studio trigger phrases. In Copilot Studio, entities imported from a CLU model appear on the Entities page and you can use them just like the other custom and prebuilt entities. You can add Question nodes in topics and select entities and intents from the imported CLU model. CLU entities are bound to equivalent Copilot Studio objects. You can specify a name, the data type, or the JSON structure of a custom data type, if desired, for each entity.

Note

For an existing agent that you want to take advantage of CLU integration, you must map the CLU model to the Copilot Studio agent. Then, you can update the agent's trigger phrases to bind each topic to a corresponding CLU intent. You can also manually manage the relationship between the CLU model and your agent.

The concepts discussed in this article help you understand how to integrate CLU models with Copilot Studio agents. For more information, see Get started with conversational language understanding integration.

CLU connectors

A connector is a wrapper around an API that allows Azure AI Language to talk to Copilot Studio agents. It provides a way for you to connect your accounts and apply a set of prebuilt actions and triggers to build your apps and workflows. For more information, see Azure Cognitive Service for Language in the Copilot Studio, Power Platform, and Azure Logic Apps connectors documentation.

Power Platform connectors allow Microsoft services to talk to the CLU API. For more information, see the Copilot Studio, Power Platform, and Azure Logic Apps connectors documentation. Although you can import any connector types, Copilot Studio doesn't currently validate connectors.

Connections in Copilot Studio

Connections are stored authentication credentials for a connector, such as OAuth credentials for the SharePoint connector. A connection reference is a solution component that contains a reference to a connection about a specific connector.

Copilot Studio connections are environment specific. When you import an agent, you must set up a connection for it. Power Platform offers a standard way of achieving this capability by way of a connection reference. Learn more in Use a connection reference in the Power Apps documentation.

External recognizers

CLU integration uses the OnRecognize trigger, which fires whenever the bot needs to recognize intents or entities. For example, when matching an utterance to a topic or evaluating input for a Question node (with or without interruption support).

External intents

CLU integration supports recognized external intents and entities through two system variables: System.Recognizer.IntentOptions (intents) and System.Recognizer.ExtractedEntities (entities). Use the IntentOptions variable in the following scenarios:

  • Reuse TopicId for the external intent ID
  • Reuse TriggerId for the external intent ID
  • Create a new property ExternalIntentId for the external intent ID
Property name Type Description
DisplayName String The display name for the recognized intent; localized in the current language and shown in the "Did you mean..." prompt (if applicable).
Score Number The recognizer score.
TopicId String The Dataverse schema name of the topic.
TriggerId String The unique ID of the trigger within the AdaptiveDialog topic.
ExternalIntentId String The intent ID from the external recognizer (for example, CLU category). Used to bind to a topic's ExternalIntent trigger.

For a complete list of Copilot Studio built-in variables, including system variables, see Variables overview.

Mix and match entity component types

CLU entities are relevant information extracted from NLU utterances. You can extract entities by using different methods. You can learn entities through context, mix and match entities from a list, or detect entities from a prebuilt recognized entity. Learn more in Component types in the Azure AI Language documentation.

Note

You can use Copilot Studio prebuilt entities along with CLU entities.