Share via


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 Cognitive Service for 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), and 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 existing agents that you want to take advantage of CLU integration, you must map the CLU model to Copilot Studio, 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 Copilot Studio.

Key concepts

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 the Azure Cognitive Service to talk to Copilot Studio. It provides a way for users to connect their accounts and apply a set of prebuilt actions and triggers to build their 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 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

A connection is a stored authentication credential for a connector, for example 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 need to set up a connection for it. We offer a standard way of achieving this capability in Power Platform by way of a Connection reference. For more information, see Connection references in solutions - Power Apps.

External recognizers

CLU integration supports specific external recognizers. The OnRecognize trigger fires in the following scenarios:

  • When a topic is triggered: LanguageUnderstandingReason.TriggerTopic

  • When a question node doesn't support interruptions and requires an answer: LanguageUnderstandingReason.AnswerQuestion

  • When a question node supports interruptions and requires an answer: LanguageUnderstandingReason.AnswerQuestionWithInterruptions

External intents

CLU integration supports recognized external intents that utilize the System.Recognizer.IntentOptions system variable in the following scenarios:

  • Reuse TopicId for the external intent ID
  • Reuse TriggerId for the external intent ID
  • Create a new property IntentId for the external intent ID
  • Use system variables that support the reason for triggering the recognizer
Property name Type Description
DisplayName String The display name for the recognized intent; localized in the current language and to be 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

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

Mix and match entity component types

CLU entities are relevant information extracted from NLU utterances. Entities can be extracted using different methods. They can be learned through context, mixed and matched from a list, or detected from a prebuilt recognized entity. For more information, see Component types, in the Azure AI Language documentation.

Note

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