How Copilot for Microsoft 365 can work with your external data

Copilot for Microsoft 365 Mechanics
26 Sept 202309:13

Summary

TLDRThe script discusses two methods to safely integrate external data into Microsoft 365 Copilot for AI-generated responses. The first is using Microsoft Graph connectors to pre-index data with Semantic Index for Copilot, enhancing the relevance of AI responses. The second involves managed plugins for real-time API data retrieval and optional data writing back. Both methods ensure security and privacy, and can be used together. An example demonstrates resolving a DNS issue by combining a Jira plugin and an intranet Graph connector. The script also explains how Semantic Index works on SharePoint and individual user data to improve search and response accuracy. Finally, it guides on setting up connectors and plugins for external data integration.

Takeaways

  • 🔌 Microsoft 365 Copilot can integrate external data sources to enhance AI-generated responses through two primary methods.
  • 📚 The first method uses Microsoft Graph connectors to pre-index read-only data for retrieval with prompts, ensuring relevant AI responses.
  • 🔧 The second method employs managed and trusted plugins for real-time API-based data retrieval, with optional data writing capabilities.
  • 🛡️ Both options adhere to Microsoft's security, compliance, and privacy standards, respecting organizational data boundaries.
  • 🔄 Demonstrated in the script, connectors and plugins can work together to respond to a single prompt, as shown with a help desk scenario.
  • 🔎 Semantic Index for Copilot works by default with internal Microsoft 365 data, correlating activity signals to retrieve relevant information.
  • 📈 Semantic Index operates on two levels: indexing information within SharePoint and creating a separate index for individual user documents and emails.
  • 📝 The dual approach of Semantic Index increases the relevancy of AI-generated results, tailoring them to the user's approved access to information.
  • 🔍 An example is given to compare SharePoint search results with and without Semantic Index, highlighting the improved search experience.
  • 🔗 To utilize Semantic Index with external data, Graph connectors can be used without changes, or new connections can be set up through the Microsoft 365 Admin Center.
  • 📜 Plugins offer a flexible way to retrieve data and perform actions without pre-indexing, with three types available: OpenAI plugins, Microsoft Teams message extensions, and Power Platform connectors.
  • 🛠️ Plugins are developed using a shared code base with similar packaging and components, and can be managed through the Microsoft 365 Admin Center for access control.

Q & A

  • What are the two primary options to safely bring external information into Microsoft 365 Copilot experiences?

    -The two primary options are using Microsoft Graph connectors to integrate data sources with Semantic Index for Copilot, which pre-indexes defined read-only information for retrieval, and using managed and trusted plugins such as OpenAI plugins, Microsoft Teams message extensions, and Power Platform connectors, which optimize for real-time API based data retrieval and can optionally write back data.

  • How does Semantic Index for Copilot work with Microsoft 365 Copilot?

    -Semantic Index for Copilot works by correlating activity signals with the Microsoft Graph to retrieve indexed information uniquely relevant to the user. It presents a combination of the user's prompt and the retrieved information to the large language model to generate an informed response.

  • What is the purpose of using Microsoft Graph connectors?

    -Microsoft Graph connectors are used to integrate external data sources with Semantic Index for Copilot, allowing for the pre-indexing of defined read-only information that can be used to drive the most relevant AI-generated responses.

  • What types of plugins can be used with Microsoft 365 Copilot?

    -The types of plugins that can be used with Microsoft 365 Copilot include OpenAI plugins, Microsoft Teams message extensions, and Power Platform connectors.

  • How do plugins differ from Microsoft Graph connectors in terms of data retrieval?

    -Plugins optimize for real-time API-based data retrieval without pre-indexing information, and they can also perform additional actions such as writing back data, depending on user permissions.

  • Can both Microsoft Graph connectors and plugins work together when responding to a single prompt?

    -Yes, both Microsoft Graph connectors and plugins can work together when responding to a single prompt, allowing for a more comprehensive and integrated response.

  • What is an example of how a help desk technician might use Microsoft 365 Copilot?

    -A help desk technician might use Microsoft 365 Copilot to respond to users facing an issue with DNS by submitting a prompt to find who's impacted and to write an email with instructions that reference an internal knowledge base article.

  • How does the Semantic Index improve the search experience across Microsoft 365?

    -Semantic Index improves the search experience by mapping semantic signals such as people relationships and recent activities surrounding the content the user has access to, helping to determine the intent of the search and formulate a more relevant answer.

  • What is the process for setting up a connection to external data using Microsoft Graph connectors?

    -To set up a connection to external data using Microsoft Graph connectors, you need to enable the service or start a trial from the Microsoft 365 Admin Center, and then add a connection. You can define the site, who can search the data source, and whether connector results are shown in search.

  • How can developers make plugins available in the Microsoft 365 environment?

    -Developers can make plugins available in the Microsoft 365 environment by choosing from existing plugins in the store or by uploading their own plugin packages directly in the Teams Admin Center from the Microsoft 365 Admin Center.

  • What is the role of the YAML file in the context of plugins?

    -The YAML file defines the API for connecting to the external data or service, as well as any actions it can take on behalf of the user. It also includes natural language descriptions of the API operations and responses, which are used by the LLM to assess what the plugin can do and help respond to a prompt.

Outlines

00:00

🔗 Integrating External Data with Microsoft 365 Copilot

The paragraph discusses two primary methods for safely incorporating external data into Microsoft 365 Copilot to enhance AI-generated responses. The first method involves using Microsoft Graph connectors to integrate data sources with Semantic Index for Copilot, which pre-indexes information for retrieval. The second method utilizes managed and trusted plugins, such as OpenAI plugins, Microsoft Teams message extensions, and Power Platform connectors, which optimize for real-time API-based data retrieval and can optionally write back data. Both options adhere to Microsoft's security, compliance, and privacy standards, and can work together in response to a single prompt. An example is provided where a help desk technician uses both a connector and a plugin to address a DNS issue, demonstrating how Copilot generates a response by pulling information from these sources and how plugins can present adaptive cards for more information and allow for actions like editing a Jira issue directly within Teams.

05:01

🛠️ Setting Up External Data Integration with Microsoft 365 Admin Center

This paragraph provides a step-by-step guide on setting up external data integration for Microsoft 365 Copilot. It starts by explaining that existing Graph connectors will work without changes, but if not set up, they need to be enabled from the Microsoft 365 Admin Center. The process involves adding a connection to external data sources, such as enterprise websites, with options to define the site, search permissions, and visibility in search results. Advanced settings allow for more granular configurations like meta tags and semantic property labels. Once configured, integrated results can be seen using SharePoint search. The paragraph then moves on to discuss plugins, explaining how they work by retrieving information in real-time without pre-indexing. It demonstrates a plugin's use by showing how Copilot uses it to find VPN-related tickets in a Jira system. The paragraph also covers the technical aspects of plugins, including their code structure, the use of YAML files for API definitions, and how they can be made available in the Microsoft 365 environment through the Admin Center. The summary concludes with a mention of where to learn more about these integration options.

Mindmap

Keywords

💡Microsoft 365

Microsoft 365 is a suite of productivity and collaboration tools offered by Microsoft, which includes services like email, online meetings, file storage, and collaboration tools. In the context of the video, it is the platform on which the Copilot experiences are built, and it is where external data is being integrated to enhance AI-generated responses.

💡Microsoft 365 Copilot

Microsoft 365 Copilot is a feature that integrates AI capabilities into the Microsoft 365 suite to assist users with tasks and provide intelligent insights. The video discusses how to bring external data into the Copilot experiences to improve the relevancy and usefulness of AI-generated results.

💡Microsoft Graph connectors

Microsoft Graph connectors are tools that allow integration of external data sources with Microsoft 365. They are used to pre-index information for retrieval with prompts, which helps in driving AI-generated responses. In the video, they are one of the two primary options discussed for safely bringing external information into Copilot experiences.

💡Semantic Index

Semantic Index is a feature that works with Microsoft 365 Copilot to index and retrieve information based on user activity and relevance. It operates on two levels: within SharePoint and for individual users' email and documents. The video explains how Semantic Index increases the relevancy of AI-generated results by correlating activity signals with the user's prompt.

💡Plugins

Plugins in the context of the video refer to managed and trusted extensions that can optimize real-time API-based data retrieval and optionally write back data. They are an alternative to pre-indexing information and can work alongside connectors. The video provides examples of different types of plugins, including OpenAI plugins, Microsoft Teams message extensions, and Power Platform connectors.

💡OpenAI plugins

OpenAI plugins are a type of plugin that allows for integration with external data sources and services. They enable real-time data retrieval and can perform actions on behalf of the user, as demonstrated in the video with the Jira system for issue tracking.

💡Microsoft Teams message extensions

Microsoft Teams message extensions are a type of plugin that can be used to extend the functionality of Microsoft Teams. They allow users to interact with external services directly from within Teams, as shown in the video where a help desk technician uses them to respond to users facing DNS issues.

💡Power Platform connectors

Power Platform connectors are part of the Microsoft Power Platform and allow for integration with various data sources and services. They enable users to retrieve and manipulate data in real-time, which is highlighted in the video as one of the plugin types that can be used with Microsoft 365 Copilot.

💡Jira

Jira is a popular issue tracking and project management tool. In the video, it is used as an example of an external system that can be integrated with Microsoft 365 Copilot using plugins. This allows users to retrieve and update information related to issues directly from within the Microsoft 365 environment.

💡Adaptive card

An adaptive card is a user interface component that can be used to display information and allow users to interact with it. In the video, it is mentioned as a feature of the plugin that presents more information about a Jira ticket and allows the user to take actions like editing an issue directly within Microsoft Teams.

Highlights

Microsoft 365 Copilot can integrate external data sources for AI-generated responses.

Two primary options for integrating external data: Microsoft Graph connectors and managed plugins.

Microsoft Graph connectors pre-index information for retrieval with prompts.

Plugins optimize for real-time API-based data retrieval and can write back data.

Both options adhere to Microsoft's security compliance and privacy standards.

Demonstration of using a connector and a plugin simultaneously in Microsoft Teams.

Semantic Index for Copilot correlates activity signals to retrieve relevant information.

Semantic Index works on SharePoint and individual user data for increased relevancy.

Comparison of SharePoint search results with and without Semantic Index.

How to use Semantic Index for external data with Graph connectors in Microsoft 365.

Plugins allow for direct real-time data retrieval and user permission-based actions.

Types of plugins: OpenAI plugins, Microsoft Teams message extensions, and Power Platform connectors.

Plugins use a shared code base and open API spec for cross-platform functionality.

Plugins can be made available in the Microsoft 365 environment through the Admin Center.

Control over who can access plugins and their underlying data is maintained by the admin.

Resource for more information on Microsoft 365 Copilot extensibility.

Transcripts

play00:00

(bright sound)

play00:02

- A lot of the information you work

play00:04

with today might sit outside of Microsoft 365 locations.

play00:08

So how can you safely bring that information

play00:10

into your Microsoft 365 Copilot experiences

play00:13

to ground generative AI results?

play00:16

There are two primary options.

play00:18

First, you can use Microsoft Graph connectors

play00:21

to integrate the data sources you want

play00:23

with Semantic Index for Copilot.

play00:25

This option pre-indexes defined read-only information used

play00:29

for retrieval with your prompts

play00:31

to drive the most relevant AI generated responses.

play00:34

The second option uses managed and trusted plugins

play00:37

which can be a few different types,

play00:38

including OpenAI plugins,

play00:40

Microsoft Teams message extensions,

play00:43

and Power Platform connectors.

play00:44

And with plugins instead of pre-indexing information,

play00:48

they optimize for real-time API based data retrieval

play00:51

and they can optionally even write back data.

play00:54

Both options follow Microsoft's

play00:56

comprehensive security compliance and privacy approach

play00:59

while respecting the boundaries that you define

play01:01

within your organization's data services.

play01:04

And both types can even work together when responding

play01:06

to a single prompt.

play01:08

In fact, let me show you an example using a connector

play01:11

and a plugin simultaneously.

play01:13

Let's say I'm a help desk technician

play01:15

in Microsoft Teams and I want to respond

play01:18

to all users facing an issue with DNS.

play01:20

I'll start by submitting a prompt

play01:22

to help me find who's impacted

play01:24

and to write an email

play01:25

for me that I can send them with instructions

play01:27

that reference our internal knowledge base article.

play01:30

Copilot has taken my prompt

play01:32

and is generating a response, in this case,

play01:35

by pulling in information from both a plugin configured

play01:38

for Jira which we're using for issue tracking,

play01:41

as well as a Graph connector for an intranet site

play01:44

which we're using as a knowledge base for our help desk.

play01:47

And it responds with a matching DNS related ticket

play01:50

along with the steps for flushing DNS

play01:53

and even an email it authored that I can use to respond

play01:56

to our user with the matching open ticket.

play01:58

You'll also see at the bottom

play02:00

of the response that both the plugin's Jira ticket

play02:02

and the connector's intranet KB article are referenced.

play02:06

Additionally, if I scroll up

play02:07

and click on the Jira ticket details, you'll see

play02:10

that my plugin also presents an adaptive card

play02:13

to show more information

play02:14

and it even allows me to take action.

play02:17

I'll hit "Edit issue" and right from within Teams,

play02:21

I can change the record in Jira, for example,

play02:23

if I sent the email

play02:24

to the user already and resolved the issue,

play02:27

I can update the ticket status from "To Do," to "Done."

play02:31

And by hitting "Save," it'll record that change

play02:33

to our Jira system.

play02:34

So we just saw how you can extend Microsoft 365 Copilot

play02:38

to external data sources coming

play02:40

into the Microsoft Graph using connectors

play02:42

and two-way integration using plugins.

play02:45

Next, let me show you what was going

play02:47

on behind the scenes and how each one works.

play02:49

The first option where we referenced our intranet article,

play02:52

leveraged Semantic Index for Copilot

play02:55

which works with Microsoft 365 Copilot

play02:57

by default over internal Microsoft 365 data.

play03:01

When you submit a prompt,

play03:03

Copilot brings in the Microsoft Graph

play03:06

with a Semantic Index to correlate activity signals,

play03:09

retrieving indexed information uniquely relevant to you.

play03:13

It presents the combination

play03:15

of your prompt with what was retrieved

play03:17

to the large language model

play03:18

to generate an informed response.

play03:21

Importantly, Semantic Index works on two levels.

play03:24

By default, it indexes information

play03:26

within SharePoint inside your organization's tenant.

play03:29

And second, each user also has their own separate index

play03:33

for email and their individual important documents

play03:36

like files shared with them, where they've commented

play03:39

or were at mentioned, and more.

play03:41

This two-pronged approach is what increases relevancy,

play03:45

allowing Microsoft 365 Copilot

play03:47

to orchestrate AI generated results that are unique

play03:51

to you as a user, again,

play03:53

based on your approved access to information.

play03:56

And a great way to demonstrate Semantic Index for real is

play03:58

by showing two sets of search results in SharePoint,

play04:02

one without leveraging the Semantic Index and one with it.

play04:05

Here we're searching on Project Melbourne Shiproom.

play04:08

Notice we have a typo.

play04:10

On the left, without the Semantic Index,

play04:13

you can see results are retrieved based

play04:15

on keywords and ranking as well as last modified date

play04:18

for relevance and a file summary for context

play04:21

but it's not the specific information we're looking for.

play04:25

Conversely, on the right with the Semantic Index,

play04:28

instead of a list of links,

play04:29

notice the informative answer right at the top.

play04:32

You can see that the index has mapped semantic signals such

play04:36

as people relationships

play04:37

and recent activities surrounding the content

play04:40

the user has access to,

play04:41

to help determine the intent

play04:43

of your search and formulate an answer.

play04:45

So you can see how Semantic Index

play04:47

improves the search experience across Microsoft 365

play04:51

and that includes Microsoft 365 Copilot.

play04:54

So how do you take advantage

play04:56

of Semantic Index for your external data,

play04:59

like we saw in our example?

play05:01

First, if you already use Graph connectors in Microsoft 365,

play05:05

they will work without any changes.

play05:07

If not, before you connect to external data,

play05:10

from the Microsoft 365 Admin Center,

play05:13

you do need to enable the service

play05:15

or start a trial and from there you can add a connection.

play05:19

There are options for enterprise websites

play05:21

and a few other common data sources listed here as well.

play05:25

For example, if I open ServiceNow,

play05:27

you'll see that there are three options

play05:29

for ticketing, knowledge base, and catalog, but in my case,

play05:33

I'll set up an enterprise website

play05:35

and this will show me a few simple options

play05:37

to define the site, who can search the data source,

play05:40

and whether connector results are shown in search.

play05:43

Then for even more options, I can go

play05:45

into advanced settings for more granular configuration

play05:48

with options to define meta tags, specific exclusions,

play05:52

semantic property labels, and customizations to the schema.

play05:56

And once you have a connection up and running,

play05:58

you'll be able to see integrated results

play06:00

using SharePoint search with the connected site.

play06:03

In this case, I'll just perform a simple keyword search

play06:06

for troubleshooting instructions and results are found

play06:09

in SharePoint locations as well as from the connected site.

play06:13

And here is the DNS article that was used as part

play06:16

of the retrieval process to respond

play06:17

to my prompt from before.

play06:19

Beyond Microsoft Graph connectors with Semantic Index,

play06:22

let's look at our second option

play06:24

for data retrieval with Copilot, using plugins.

play06:27

Again, starting with how they work.

play06:29

So with a plugin configured, when we submitted the prompt,

play06:32

Microsoft 365 Copilot leveraged that plugin

play06:36

to retrieve information directly from its source,

play06:39

again, in real time without pre-indexing the data.

play06:43

It was also able to perform additional actions on behalf

play06:46

of the user and with respect to their permissions,

play06:49

like changing the status of the ticket.

play06:51

This time, I'll demonstrate the plugin by itself

play06:54

without connection to our knowledge base.

play06:58

In Microsoft Teams, I'll write a new prompt

play07:00

to look up VPN related tickets in our Jira system

play07:03

and submit it.

play07:05

Then Copilot responds using that information

play07:07

and finds two tickets in the system related to VPN issues.

play07:12

And as I mentioned, plugins work without pre-indexing

play07:15

and there are three types.

play07:16

These can be OpenAI plugins,

play07:18

Microsoft Teams message extensions,

play07:20

and Power Platform connectors.

play07:23

Now I'll explain how plugins work

play07:25

with a short tour of their code.

play07:27

All three of these types of plugins are similar

play07:29

with similar packaging and components.

play07:32

This is an example of a Teams app manifest file

play07:35

that uses NuGet Package Manager to find app packages

play07:38

and their details.

play07:39

You can see that it refers to a YAML file.

play07:42

And in that file, is where the API is defined

play07:45

for connecting to the external data or service

play07:48

as well as any actions it can take on behalf of the user.

play07:52

Also note the natural language descriptions

play07:54

of the API get operation and its responses.

play07:57

These are used by the LLM

play07:58

to assess what the plugin can do

play08:00

to help respond to a prompt.

play08:02

And because these are portable components and can be used

play08:05

for OpenAI, Teams, and Power Platform, as a developer,

play08:09

you'll be able to maintain a single shared code base.

play08:13

Each will leverage the same underlying open API spec.

play08:16

Then to make plugins available

play08:18

in your Microsoft 365 environment,

play08:20

you'll do this from the Microsoft 365 Admin Center

play08:24

in the Integrated Apps page.

play08:26

Here you can choose from existing plugins

play08:29

from the store, just like you would get other apps today.

play08:32

You can also upload your own plugin packages directly

play08:35

in the Teams Admin Center.

play08:38

Either way you add the plugin, you're in control

play08:40

of who can access the plugin and its underlying data.

play08:45

So those are the two main options available to you

play08:47

for safely bringing in data external to Microsoft 365

play08:50

into your Microsoft 365 Copilot experiences

play08:54

to ground generative AI results.

play08:57

To learn more, check out aka.ms/CopilotExtensibility

play09:01

and keep following Microsoft Mechanics

play09:03

for the latest in tech updates, thanks for watching.

play09:06

(bright sound)

Rate This

5.0 / 5 (0 votes)

Related Tags
Microsoft 365CopilotAI IntegrationData SecuritySemantic IndexMicrosoft GraphPluginsAPI RetrievalKnowledge BaseJira System