可以通过添加 代码解释器 、 图像生成器 和知识源等功能来增强和自定义代理的知识,从而增强声明性代理的用户体验。 清单参考中的功能对象和 Copilot Studio 代理生成器中的“知识”部分提供了多个选项来解锁用户的功能。 本文介绍可添加到代理的知识源。
下表列出了可以使用代理生成器或 Microsoft 365 代理工具包配置的功能和知识源, (Teams 工具包) 的演变,并指示用户是否需要智能 Microsoft 365 Copilot 副驾驶®许可证或按流量计费来访问具有该功能或知识源的代理。
功能或知识源 | 代理生成器 | 代理工具包 | 需要许可证或按流量计费的使用情况? |
---|---|---|---|
代码解释器 | ✅ | ✅ | 否 |
图像生成器 | ✅ | ✅ | 否 |
Copilot 连接器 | ✅ | ✅ | 是 |
SharePoint 和 OneDrive | ✅ | ✅ | 是 |
嵌入的文件内容 | ✅ | ❌ | 是 |
Web 搜索 | ✅ | ✅ | 否 |
限定范围的 Web 搜索 | ✅ | ✅ | 否 |
Dataverse | ❌ | ✅* | 是 |
电子邮件 | ✅ | ✅* | 是 (许可证仅) |
人员 | ❌ | ✅ | 是 (许可证仅) |
Teams 消息 | ✅ | ✅* | 是 (许可证仅) |
* 可用于确定知识范围的选项。
Copilot 连接器
智能 Microsoft 365 Copilot 副驾驶®连接器 (以前Microsoft Graph 连接器) 使你能够将组织数据作为地面信息添加到代理。 可以使用 Copilot 连接器将业务线数据引入到 Microsoft Graph 中,Copilot 可以将数据作为响应用户提示的地面信息进行推理。 有关详细信息,请参阅智能 Microsoft 365 Copilot 副驾驶®连接器概述。
有关如何将 Copilot 连接器作为知识添加到代理工具包中的代理清单的信息,请参阅 Copilot 连接器对象。
有关如何在 Copilot Studio 代理生成器中将 Copilot 连接器添加到代理的信息,请参阅 Copilot 连接器。
SharePoint 和 OneDrive
将代理配置为使用 OneDrive 和 SharePoint 内容作为知识时,Copilot 会搜索用户有权访问的 SharePoint 和 OneDrive 文件、文件夹或网站以获取基础信息。
有关如何在代理工具包中将 OneDrive 和 SharePoint 知识添加到代理清单的信息,请参阅 OneDrive 和 SharePoint 对象。
有关如何在 Copilot Studio 代理生成器中向代理启用 OneDrive 和 SharePoint 知识的信息,请参阅添加知识源。
Web 和范围 Web 搜索
Web 搜索使代理可以使用必应中的搜索索引来响应用户提示。 如果在代理中启用 Web 搜索,则可以让代理在其响应中返回任何 Web 数据。 还可以将 Web 搜索范围限定为最多四个公共网站。
添加 Web 和限定范围的 Web 搜索
如果使用 Agents Toolkit 和 Visual Studio Code 创建代理,若要启用 Web 搜索,请将 值添加到WebSearch
清单文件中的 capabilities 属性。 如果要将 Web 搜索范围限定为特定网站,请添加 sites 属性并指定最多四个 URL,如以下示例所示。
注意
必须使用 1.2 版或更高版本的声明性代理清单架构,才能将作用域内 Web 搜索添加到代理。
{
"capabilities": [
{
"name": "WebSearch",
"sites": [
{
"url": "cnn.com"
}
]
}
]
}
如果使用 Copilot Studio 代理生成器创建代理,请在“配置”选项卡上的“知识”下列出要引用的网站 URL。
嵌入的文件内容
如果使用 Copilot Studio 代理生成器来生成代理,则可以直接从设备或云上传文件,以嵌入内容以供代理用作知识。 嵌入的文件内容存储在 SharePoint Embedded 中。 这些文件计入租户中的 OneDrive 和 SharePoint 容量。
注意
启用按流量计费或具有智能 Microsoft 365 Copilot 副驾驶®许可证的用户可以使用文件上传功能。
有关嵌入文件的详细信息,请参阅 代理生成器中的嵌入文件内容。
Dataverse
Dataverse 知识允许代理以自然语言响应有关其 CRM 数据的用户查询或来自 Microsoft Dataverse 中的表的数据。 可以将 Dataverse 实例添加为知识源,并添加同义词和术语表,以帮助系统更好地解释表中的自定义数据。 有关详细信息,请参阅 添加 dataverse 知识源。
注意
Copilot Studio代理生成器中目前不提供 Dataverse 知识。
添加 Dataverse 知识
如果使用 Agents Toolkit 和 Visual Studio Code 创建代理,若要启用 Dataverse 知识,请将Dataverse
值添加到代理清单文件中的 capabilities 属性,如以下示例所示。
注意
必须使用 1.3 版或更高版本的声明性代理清单架构才能添加 Dataverse
知识。
{
"capabilities": [
{
"name": "Dataverse",
"knowledge_sources": [
{
"host_name": "organization.crm.dynamics.com",
"skill": "DVCopilotSkillName",
"tables": [
{
"table_name": "account"
},
{
"table_name": "opportunity"
}
]
}
]
}
]
}
电子邮件
Email知识允许将代理范围限定为个人或共享邮箱,以及可选的特定邮箱文件夹。
添加电子邮件知识源
如果使用 Copilot Studio 代理生成器来创建代理,请在“知识”部分中的“配置”选项卡上,选择“我的电子邮件”。
注意
使用代理生成器时,当前无法将电子邮件范围限定为特定文件夹或共享邮箱。
如果使用 Agents Toolkit 和 Visual Studio Code 创建代理,若要添加电子邮件知识,请将 值添加到Email
代理清单文件中的功能属性,如以下示例所示。 可以引用多个邮箱文件夹和一个共享文件夹。
注意
必须使用 1.3 版或更高版本的声明性代理清单架构才能添加 Email
知识。
{
"capabilities": [
{
"name": "Email",
"shared_mailbox": "sample@service.microsoft.com",
"folders": [
{
"folder_id": "inbox"
}
]
}
]
}
在 “folder_id ”字段中,可以引用已知的文件夹名称或文件夹 ID。 有关已知文件夹名称的列表,请参阅 mailFolder 资源类型。 若要获取文件夹 ID 的列表,请在 Graph 资源管理器中使用以下查询:
https://graph.microsoft.com/v1.0/me/mailFolders
在 “shared_mailbox ”字段中,使用共享邮箱的 SMTP 地址。
如果同时引用共享邮箱和文件夹,代理会将响应范围限定为共享邮箱中的文件夹。 如果仅引用文件夹,代理会将响应范围限定为个人邮箱中文件夹的内容。
如果未引用共享邮箱或文件夹,则代理搜索的范围不会限定为任何文件夹或邮箱,并且会根据用户的查询返回所有电子邮件内容的结果。
人员
人员知识允许你确定代理的范围,以回答有关组织中个人的问题。 例如,代理可以响应“如何实现联系人<>”或“列出人员的>直接下属<”等查询。 此知识源未限定范围。
注意
人员知识目前在 Copilot Studio 代理生成器中不可用。
添加人员知识源
如果使用 Agents Toolkit 和 Visual Studio Code 创建代理,若要启用人员知识,请将值添加到People
代理清单文件中的 capabilities 属性,如以下示例所示。
注意
必须使用 1.3 版或更高版本的声明性代理清单架构来添加 People
知识源。
{
"capabilities": [
{
"name":"People"
}
]
}
Teams 消息
可以将代理配置为使用 Teams 频道、会议聊天、群组聊天、1:1 聊天和团队作为知识源。 可以选择指定最多五个指向团队、频道、组、1:1 或会议聊天的链接,以限定 Copilot 搜索的范围,也可以允许代理将所有用户的 Teams 内容(包括频道、团队、会议以及个人聊天和群组聊天)用作知识源。
代理可以返回 Teams 消息中共享的文件的链接,但不能返回 Teams 频道中存储的文件的链接,除非代理也 OneDriveAndSharePoint
已启用。 有关如何优化 Copilot 的 SharePoint 内容的信息,请参阅 优化 SharePoint 内容检索。
添加 Teams 消息知识源
如果使用 Copilot Studio 代理生成器创建代理,请在“配置”选项卡上的“知识”部分中,单击搜索栏,然后选择“我的 Teams 从组、频道和会议聊天”。若要将代理范围限定为特定频道、会议或群组聊天,请在“聊天”选项卡上选择要添加为知识的聊天。
如果使用 Agents Toolkit 和 Visual Studio Code 来创建代理,若要启用 Teams 消息知识,请将 值添加到TeamsMessage
清单引用中的 capabilities 属性。 如果要将 Teams 知识的范围限定为最多五个 Teams 资源,请将链接添加到 urls 属性,如以下示例所示。
注意
必须使用 1.3 版或更高版本的声明性代理清单架构来添加 TeamsMessage
知识源。
{
"capabilities": [
{
"name": "TeamsMessages",
"urls": []
}
]
}
获取团队、频道或会议的 URL
若要获取 Teams 团队或频道的 URL,请选择团队或频道名称旁边的三个点 (...) ,然后选择 “获取团队链接 ”或“ 获取频道链接”。
若要获取 Teams 会议的 URL,请打开会议,选择“ 加入”旁边的箭头,然后选择“ 复制加入链接”。
获取组或 1:1 聊天的 URL
若要获取组或 1:1 聊天的 URL,需要包含 chatId 的深层链接。 深层链接采用以下格式: https://teams.microsoft.com/l/chat/<chatId>/conversations
。
chatId 值对于每个聊天都是不同的。
若要获取组或 1:1 聊天的 chatId 值,请执行以下作:
- 在 Microsoft Teams 中,转到聊天中的任何消息。
- 将鼠标悬停在邮件上,然后选择三个点 (...) 。
- 选择“复制链接”。
- 将链接粘贴到记事本或类似应用程序中。 链接将类似于以下内容:
https://teams.microsoft.com/l/chat/19:12ab3c4d-a123-12a3-a123-123ab12c12de_12a3bcd4-1234-1234-123a-1b2345c678d9@unq.gbl.spaces//1743033793614?context=%7B%22contextType%22%3A%22chat%22%7D
。 - 复制位于 和下一个
/
之间的chat/
URL 段。 段通常以19:
开头。 这是 chatId。 在前面的示例中, chatId 为19:12ab3c4d-a123-12a3-a123-123ab12c12de_12a3bcd4-1234-1234-123a-1b2345c678d9@unq.gbl.spaces
。 - 将 chatId 添加到深层链接。 例如:
https://teams.microsoft.com/l/chat/19:12ab3c4d-a123-12a3-a123-123ab12c12de_12a3bcd4-1234-1234-123a-1b2345c678d9@unq.gbl.spaces/conversations
。
有关详细信息,请参阅 Teams 聊天的深层链接。