Enhancing productivity with Generative AI
As AI technology advances, it's providing organizations with multiple opportunities to provide more and better ways to enhance productivity and guide employees. One way this is done is with Generative AI. Copilot Studio allows you to leverage Generative answers in multiple ways. Once you are in Copilot studio, generative AI capabilities can be accessed by selecting Generative AI from the Settings menu.
With Copilot studio, you can use Generative AI to do the following:
Use generative answers as a fallback: Allows you to use generative answers as a fallback if your agent is unable to find a relevant answer to the user’s question.
Insert generative answers into Topics: Allows you to integrate Generative AI into your topics by using the generative answer node.
Use Copilot to create agents and topics: Copilot allows you to provide a brief description of the agent or topic that you want to create, and it will build it out for you.
Use generative answers as a fallback
In the past, if an agent was unable to determine a user's intent, it would ask them to rephrase their question. If the agent was unable to identify a topic after two prompts, it would escalate to a live agent.
With generative answers, Microsoft Copilot Studio allows your agent to find and present information from multiple sources, internal or external, without created topics. This allows you to use generative answers as primary information sources or as a fallback source when authored topics can't answer a user's query. As a result, this will dramatically reduce the time it takes to create and deploy a functional agent, removing the need to manually author multiple topics that might not address all customer questions.
Generative answers use knowledge sources as “grounding data”. Grounding data helps to provide more context. For example, when you use an internal data source as a knowledge source, the knowledge source is based on your data, therefore the information presented back to the user will be more relevant than generic information for a public facing site. There are multiple knowledge sources currently available with more being added all the time.
This article helps you get started, using generative answers as a fallback topic, when a user's intent can't be addressed by existing agent topics.
Generative answers can use these sources:
External resources:
Bing Web Search—doesn't require external configuration
Bing Custom Search—requires external configuration
Internal resources:
SharePoint (.aspx pages aren't supported)
OneDrive
Documents uploaded to Dataverse
Custom data (internal or external): supply your own source, such as a Power Automate Flow or from Skill.
To learn more about generative answers, see: Generative answers
Website & SharePoint URLs
To provide your agent with a wider range of knowledge, you can provide URLs to different websites and SharePoint sites. The URL is used to represent the scope of the content that will be used to generate responses. To maximize the amount of data your agent has access to, there are multiple things to consider.
URLs can have up to two levels of depth / sub paths indicated by a forward slash.
The following items, represent examples of valid URLs:
An example of an invalid URL would be:
While you're limited to up to two subdomains in the URL that doesn't necessarily mean that you're limited to two subdomains in your results. Any publicly viewable content in the URL you specify (including subdomains under a top-level domain) generates content for your agent. For example, If you were to enter www.fabrikam.com as your URL, data from www.fabrikam.com/engines/rotary, and www.fabrikam.com/engines/rotary/dual-shaft would be looked at to potentially be returned as results.
Another consideration is how to specify the domain. If you enter something like use www.fabrikam.com (the www exists), only content from the www will be returned. Content located on news.fabrikam.com (the www doesn't exist) isn't used, since news is a subdomain under the top-level domain fabrikam.com.
If instead, you were to enter fabrikam.com, then content on www.fabrikam.com and content from news.fabrikam.com is used, since they both sit under the top-level domain fabrikam.com.
Other items to consider include:
Social network & forum URLs: Your agent might generate nonsensical, irrelevant, or inappropriate answers if you use a forum or social network site as your URL. Therefore, community content on social networks often increases the risk of more answers being rejected.
Search engine URLs: Don't include URLs of search engines like bing.com, as they don't provide useful responses.
SharePoint: SharePoint URLs can be added.
- It’s recommended to omit https:// from the URL. Recognized SharePoint URLs will be from the sharepoint.com domain. SharePoint site URLs can't be more than two levels deep. Content from aspx files on SharePoint won't be used to generate answers.
For more information on URLs, see: Generative answers
Uploading documents
Another option you can use as a data source for generative answers is to upload your own documents for your agent. The documents will be used across your agent; however, you do have the ability to specify any nodes that shouldn’t be used in the uploaded documents.
Once uploaded, when an agent user asks a question, and the agent doesn't have a defined topic to use, the agent generates an answer from your uploaded documents. The agent uses generative AI to answer the user's question and provides an answer in a conversational style. Uploaded documents are stored securely in Dataverse. The number of documents you can upload is only limited by the available file storage for your Dataverse environment, and the maximum size per file is 512 MB.
Image, audio, video, and executable files aren't supported, see: Generative answers for a full list.
Note
Uploaded file content is available to anyone chatting with the agent, regardless of file permissions or access controls. To learn more about uploading documents, see: Generative answers
Orchestrate Agents with Generative AI
Traditionally, virtual agents relied heavily on predefined trigger phrases and hard-coded actions to navigate conversations. This often required users to phrase their requests in specific ways to elicit the desired response from the agent. With advancements in generative AI, agents can now dynamically determine the appropriate topics and content to communicate, leading to more natural and fluid interactions.
In Copilot Studio's Generative AI settings, you have enhanced control over how your agent interacts with users. Under the How should your agent interact with people? section, you can choose between two interaction modes:
Classic
The traditional approach to agent building, focusing on predefined triggers, topics, and actions.
Actions can only be invoked within a specific topic.
Topics are triggered only when a user's query matches a predefined topic trigger.
Generative (Preview)
A modern approach to conversation flows that leverages generative AI.
The agent autonomously decides which topics, actions, and knowledge to use when responding to user queries.
Enables more natural and context-aware interactions without the need for exact trigger phrases.
Using generative AI to determine how your agent responds can make the conversation more natural and fluid for the users.
When a user sends a message, your agent selects one or more actions or topics to prepare its response. Multiple factors determine the selection. The most important factor is the description of the topics and actions. Other factors include the name of a topic or actions, any input or output parameters, and their names and descriptions. Descriptions make it possible for your agent to be more accurate when it associates a user's intent with actions and topics.
In generative mode, an agent can select multiple actions or topics at once, to handle multi-intent queries. Once actions and topics are selected, the agent generates a plan that determines their execution order.
Important
Generative mode is currently in preview and may have limitations. It's recommended to test thoroughly before deploying in a production environment.
To learn more about the Generative mode, see: Orchestrate agents with generative AI
Content moderation
Content moderation under Generative AI in the settings menus is where you can define the relevancy of the answers that are being generated. You have three options to choose from.
High - More precise (default): Agent generates fewer answers, but the responses will be more relevant.
Medium - More balanced: Agent will generate more answers, but the responses might be less relevant.
Low - More creative: Agent will generate the most answers, but responses can have inaccuracies.
To learn more about content moderation, see: Generative answers
Use generative answers in all supported languages
When building agents, you're given the option to decide what primary language your agent should use, but what if the user doesn't speak that language?
With generative answer nodes, you have the ability to handle any user query that you may not have anticipated, such as handling a user speaking another language that is not configured in your topics.
Generative answers can use all languages otherwise supported by Copilot Studio, except for Chinese (Traditional). Go to the Supported Languages article for a list of the languages and their levels of support.
To set up a generative answers node for the use case of a user speaking another language, first enable Generative Orchestration in the agent's Overview page.
Next, navigate to the Topics page of your agent, select + Add a topic, and choose From blank.
Name the topic Other language (or something similar) and modify the trigger description to include the following:
This topic handles user queries that are in a language other than English.
Select the + sign below the trigger node and choose Advanced > Generative answers.
In the generative answers node, select Edit to pull up the Create generative answers properties window.
Next, input the following prompt into the text box below Content moderation level:
If the input language is anything other than English, respond with the following line 'Sorry, but I am only able to continue this conversation in English' in the language of the input language.
Now select the input value for the generative answers node. For this example, we'll be using the user's last sent message.
Choose LastMessage.Text under the System tab from the Select a variable menu.
Finally, add an End conversation topic management node to end the conversation after the generative answers node.
Now, when a user prompts the agent with a language other than English, the agent will inform the user they can only continue the conversation in English using the language the user originally prompted with.
Test this functionality in the Test your agent pane by prompting a greeting in a language other than English, like:
Hola
Notice the agent starts the conversation in English, but as soon as another language is introduced by a user, the Other Language topic is triggered, and the agent responds in the native language of the user.
With generative answer nodes, the possibilities are nearly endless when approaching multi-language problems. Though most languages are covered by generative answer nodes, a definitive list of all languages supported can be found in the following Supported Languages article.