可以通过添加 代码解释器 、 图像生成器 和知识源等功能来增强和自定义代理的知识,从而增强声明性代理的用户体验。 清单参考中的功能对象和智能 Microsoft 365 Copilot 副驾驶®中的“知识”部分提供了多个选项来解锁用户的功能。 本文介绍可添加到代理的知识源。
下表列出了可以使用 智能 Microsoft 365 Copilot 副驾驶® 或 Microsoft 365 代理工具包配置的功能和知识源,并指示用户是否需要智能 Microsoft 365 Copilot 副驾驶®许可证或按流量计费来访问具有该功能或知识源的代理。
| 功能或知识源 | Microsoft 365 Copilot | 代理工具包 | 需要许可证或按流量计费的使用情况? |
|---|---|---|---|
| 代码解释器 | ✅ | ✅ | 否 |
| 图像生成器 | ✅ | ✅ | 否 |
| Copilot 连接器 | ✅ | ✅ | 是 |
| SharePoint | ✅ | ✅ | 是 |
| OneDrive | ❌ | ✅ | 是 |
| 嵌入的文件内容 | ✅ | ❌ | 是 |
| Web 搜索 | ✅ | ✅ | 否 |
| 限定范围的 Web 搜索 | ✅ | ✅ | 否 |
| Dataverse | ❌ | ✅* | 是 |
| 电子邮件 | ✅ | ✅* | 是 (许可证仅) |
| 人员 | ✅ | ✅ | 是 (许可证仅) |
| Teams 消息 | ✅ | ✅* | 是 (许可证仅) |
| Teams 会议 | ✅ | ✅ | 是 (许可证仅) |
* 可用于确定知识范围的选项。
Copilot 连接器
智能 Microsoft 365 Copilot 副驾驶®连接器使你能够将组织数据作为地面信息添加到代理。 可以使用 Copilot 连接器将业务线数据引入到 Microsoft Graph 中,Copilot 可以将数据作为响应用户提示的地面信息进行推理。 有关详细信息,请参阅智能 Microsoft 365 Copilot 副驾驶®连接器概述。
有关如何将 Copilot 连接器作为知识添加到代理工具包中的代理清单的信息,请参阅 Copilot 连接器对象。
有关如何在 智能 Microsoft 365 Copilot 副驾驶® 中将 Copilot 连接器添加到代理的信息,请参阅 Copilot 连接器。
SharePoint 和 OneDrive
将代理配置为使用 OneDrive 和 SharePoint 内容作为知识时,Copilot 会搜索用户有权访问的 SharePoint 和 OneDrive 文件、文件夹或网站以获取基础信息。
有关如何在代理工具包中将 OneDrive 和 SharePoint 知识添加到代理清单的信息,请参阅 OneDrive 和 SharePoint 对象。
有关如何在 智能 Microsoft 365 Copilot 副驾驶® 中向代理添加 SharePoint 知识的信息,请参阅添加知识源。
Web 和范围 Web 搜索
Web 搜索使代理可以使用必应中的搜索索引来响应用户提示。 如果在代理中启用 Web 搜索,则可以让代理在其响应中返回任何 Web 数据。 还可以将 Web 搜索范围限定为最多四个公共网站。
重要
组织管理员可以禁用 Copilot 及其组织内所有代理的 Web 搜索。 如果管理员禁用 Web 搜索,启用了 Web 搜索的代理不会报告错误,也不会在其知识中包含 Web 搜索。 开发人员模式调试卡 指示如果代理启用了 Web 搜索,即使管理员禁用了 Web 搜索也是如此。 有关详细信息,请参阅管理Microsoft 365 管理中心中的智能 Microsoft 365 Copilot 副驾驶®方案。
添加 Web 和限定范围的 Web 搜索
如果使用 Agents Toolkit 和 Visual Studio Code 创建代理,若要启用 Web 搜索,请将 值添加到WebSearch清单文件中的 capabilities 属性。 如果要将 Web 搜索范围限定为特定网站,请添加 sites 属性并指定最多四个 URL,如以下示例所示。
注意
必须使用 1.2 版或更高版本的声明性代理清单架构,才能将作用域内 Web 搜索添加到代理。
{
"capabilities": [
{
"name": "WebSearch",
"sites": [
{
"url": "cnn.com"
}
]
}
]
}
如果使用 智能 Microsoft 365 Copilot 副驾驶® 创建代理,请在“配置”选项卡上的“知识”下列出要引用的网站 URL。
嵌入的文件内容
如果使用 智能 Microsoft 365 Copilot 副驾驶® 生成代理,可以直接从设备或云上传文件,以嵌入内容,供代理用作知识。 嵌入的文件内容存储在 SharePoint Embedded 中。 这些文件计入租户中的 OneDrive 和 SharePoint 容量。
注意
启用使用情况计费或具有智能 Microsoft 365 Copilot 副驾驶®许可证的用户可以使用文件上传功能。
有关嵌入文件的详细信息,请参阅 嵌入式文件内容。
Dataverse
Dataverse 知识允许代理以自然语言响应有关其 CRM 数据的用户查询或来自 Microsoft Dataverse 中的表的数据。 可以将 Dataverse 实例添加为知识源,并添加同义词和术语表,以帮助系统更好地解释表中的自定义数据。 有关详细信息,请参阅 添加 Dataverse 知识源。
注意
dataverse 知识目前在 智能 Microsoft 365 Copilot 副驾驶® 中不可用。
添加 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知识允许将代理范围限定为个人或共享邮箱,以及可选的特定邮箱文件夹。
添加电子邮件知识源
如果使用 智能 Microsoft 365 Copilot 副驾驶® 创建代理,请在“知识”部分中的“配置”选项卡上,选择“我的电子邮件”。
注意
使用 智能 Microsoft 365 Copilot 副驾驶® 时,当前无法将电子邮件范围限定为特定文件夹或共享邮箱。
如果使用 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 地址。
在 “group_mailboxes ”字段中,可以指定一个 array 字符串 (最多 25 个) ,其中包含共享邮箱的 SMTP 地址,或者Microsoft 365 个组,你希望代理的范围限定为 365 个组。
如果同时引用共享邮箱和文件夹,代理会将响应范围限定为共享邮箱中的文件夹。 如果仅引用文件夹,代理会将响应范围限定为个人邮箱中文件夹的内容。
如果不引用共享邮箱或文件夹,则代理搜索的范围不会限定为任何文件夹或邮箱,它会根据用户的查询返回所有电子邮件内容的结果。
人员
可以将代理置于人员数据中,以提供更个性化的上下文感知响应。 人员数据将有关个人 (的公共信息(如姓名、职位、技能和组织关系) )与用户关系、协作者和相关见解的个人视图相结合。 此知识源使代理能够:
- 查找用户和同事个人资料,包括报告结构和联系人详细信息。
- 确定组织内的领域专家和主要协作者。
- 根据用户的关系、过去的交互和首选项个性化响应。
- 提供针对特定团队或个人定制的建议和沟通技巧。
添加人员知识源
如果使用 Copilot Studio 创建代理,则默认为具有智能 Microsoft 365 Copilot 副驾驶®许可证的用户启用人员知识源。
如果使用 Agents Toolkit 和 Visual Studio Code 创建代理,若要启用人员知识,请将值添加到People代理清单文件中的 capabilities 属性,如以下示例所示。 仅声明基本People功能将允许代理仅对基本组织数据(例如配置文件卡中提供的数据)进行推理。 如果要在代理用户和组织中被引用的人员之间包括相关团队消息、电子邮件和文件等内容,请参阅 版本 1.6 以使用 include_related_content 属性。
{
"capabilities": [
{
"name":"People"
}
]
}
如果需要代理推理代理用户与) 被引用人员之间的相关内容 (,例如相关的团队消息、电子邮件和文件,则可以利用 include_related_content。 默认值为 false。
{
"capabilities": [
{
"name":"People",
"include_related_content": true
}
]
}
Teams 消息
可以将代理配置为使用 Teams 频道、会议聊天、群组聊天和 1:1 聊天作为知识源。 可以选择指定最多五个指向频道、组、1:1 或会议聊天的链接,以限定 Copilot 搜索的范围,也可以允许代理将用户的 Teams 内容(包括频道、会议以及个人聊天和群组聊天)用作知识源。
代理可以返回 Teams 消息中共享的文件的链接,但不能返回 Teams 频道中存储的文件的链接,除非代理也 OneDriveAndSharePoint 已启用。 有关如何优化 Copilot 的 SharePoint 内容的信息,请参阅 优化 SharePoint 内容检索。
添加 Teams 消息知识源
如果使用 智能 Microsoft 365 Copilot 副驾驶® 创建代理,请在“配置”选项卡上的“知识”部分选择搜索栏,然后选择“我的 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 中,转到聊天中的任何消息。
- 将鼠标悬停在邮件上,然后选择三个点 (...) 。
- 选择“复制链接”。
- 将链接粘贴到记事本或类似应用程序中。 链接类似于以下 URL:
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 聊天的深层链接。
Teams 会议
借助 Teams 会议知识,你可以将代理的范围限定为回答有关会议的问题,包括单个会议或会议系列。 例如,你的代理可以响应诸如“回顾昨天的会议并列出作项”或“我的会议中对 X 项目说了什么?”等查询。 此知识源可以选择性地限定为最多五次特定会议。 此知识源允许代理访问会议元数据 (主题、组织者、与会者和标题) 、脚本内容和会议聊天。
注意
引用会议系列仅限于该系列的最后 4 个实例。
添加会议知识源
如果使用 智能 Microsoft 365 Copilot 副驾驶® 创建代理,请在“配置”选项卡上的“知识”部分选择搜索栏,然后选择“我的 Teams 聊天和会议”。 智能 Microsoft 365 Copilot 副驾驶®即将推出范围到会议的功能。
如果使用 Agents Toolkit 和 Visual Studio Code 创建代理,若要启用会议知识,请将 值添加到Meetings代理清单文件中的 capabilities 属性,如以下示例所示。 如果要将代理范围限定为特定会议,请将会议的 UID 添加到 items_by_id 属性。 有关查找会议 ID 的说明,请参阅 获取会议的 ID。
注意
必须使用 1.6 版或更高版本的声明性代理清单架构来添加 Meetings 知识源。
{
"capabilities": [
{
"name":"Meetings",
"items_by_id": [
{
"id": "010000002300A00045B6C7890D12E0030000000040056F7GH890IJ01000000000000000020000000J3L45M6A7NO8PQ9R0S12TUV340XY5Z00",
"is_series": true
}
]
}
]
}