Microsoft Copilot Studio - 自定义实体



实体是任何聊天机器人或智能助理(例如 Microsoft Copilot Studio)的基石。但什么是实体?实体是可以表示现实世界主题或对象的的信息单元,例如任何特定的颜色或样式、国家名称、洲、邮政编码、个人信息、电子邮件、日期和时间等。你需要理解的一点是,实体在 Microsoft Power Apps 中有所不同,它表示数据或表格。但在这里,在 Microsoft Copilot Studio 中,它与 Power Apps 中使用的术语完全不同且独立。

在这里,我们将了解实体如何对 Microsoft Copilot Studio 至关重要,以增加与聊天机器人的对话或提高上下文感知能力。我们将了解不同类型的实体、它们的类型、自定义实体及其测试。

什么是预构建实体?

现在,假设你正在创建一个从用户获取信息的个人聊天机器人。一些实体示例包括:

  • 用户名
  • 电子邮件
  • 位置
  • 护照号码
  • 税务号码
  • 医疗保险号码
  • 城市等。

为了捕获这些信息,你的聊天机器人需要理解用户提供的输入是否为电子邮件。它必须正确识别电子邮件模式。因此,这里出现了由 Copilot Studio 预定义的预构建实体,可以识别常见的类型数据,例如日期、电子邮件地址和数字。这些实体通过处理标准数据格式来节省时间,你无需手动配置。

What are Prebuilt Entities?

访问和使用预构建实体的步骤

按照以下步骤访问和使用预构建实体:

1. 导航到实体选项卡:

  • 登录 Microsoft Copilot Studio 并转到设置 > 实体。

2. 浏览预构建列表:

  • 你将看到一个预构建实体列表,例如日期、时间、电子邮件和电话号码。选择要在机器人对话中使用的实体。

3. 选择并实施:

  • 选择后,通过将其映射到机器人的提示来集成实体。例如,如果希望机器人捕获用户的电子邮件,请在对话流程中插入预构建的电子邮件实体。

4. 测试集成:

  • 实施实体后,使用测试聊天功能检查机器人是否正确捕获和处理数据。

让我们构建一些自定义实体

自定义实体允许你定义机器人需要识别的特定于域的数据。例如,在电子商务聊天机器人中,你可能需要为产品类别、品牌或商品 ID 创建自定义实体。

创建自定义实体的步骤

Steps to Create Custom Entities
  • 转到“实体”选项卡,然后在其中点击“创建新实体”按钮。
  • 根据希望其捕获的信息(例如,ProductID、CustomerName)命名自定义实体。选择实体类型,例如文本或数字。
  • 如果实体可以有多种变体(例如,产品可以通过不同的名称来引用),请列出其所有相关的同义词以提高识别准确性。
  • 定义自定义实体后,将其映射到相关的对话提示。例如,如果你创建了一个 ProductID 实体,请在机器人询问用户产品编号时使用它。
  • 进行最终测试,你需要检查实体在聊天机器人流程中的行为。如果机器人无法识别某些变体,请返回并调整同义词或通过提供新的测试用例修改数据类型。

此外,启用智能匹配功能后,你可以自由编写逻辑,而无需担心语法错误。

Smart Matching Feature

示例

假设你希望自定义实体在电子商务聊天机器人中捕获“ProductID”:

  • 名称 - ProductID
  • 类型 - 文本
  • 同义词 - 包括诸如“商品编号”、“SKU”或用户可能输入的简写术语等变体。

什么是封闭列表实体?

封闭列表实体表示一组预定义的可接受值。当希望将用户输入限制为特定值时,例如产品类别、区域或部门列表,这些实体特别有用。

创建封闭列表实体的步骤

创建新实体:

  • 在 Copilot Studio 中的“实体”选项卡中,点击“创建新实体”并选择“封闭列表”实体选项。
  • 为实体添加可接受的值,以及每个值的同义词或相关术语。例如,对于 ProductCategory 实体,你可能定义诸如电子产品、家具、服装等值。
  • 在要求用户从对话中的特定选项中进行选择时使用此实体。现在,机器人将期望输入与预定义列表值之一匹配。
  • 与机器人交互并提供封闭列表值的变体以确保正确识别。
What Are Closed List Entities?

示例

对于零售环境中的机器人,创建 ProductCategory 实体可能包括:

  • 电子产品(同义词:小工具、设备)
  • 服装(同义词:服装、可穿戴设备)
  • 杂货(同义词:食品、消耗品)

这将确保你不仅接受来自预定列表的输入,而且还能有效地处理同义词。

正则表达式实体如何工作?

正则表达式(正则表达式)实体允许识别更复杂的模式,例如字母数字代码或特定格式,例如订单号或邮政编码。它们非常适合捕获结构化输入。

创建正则表达式实体的步骤

创建一个新实体:

  • 点击“创建新实体”并选择“RegEx”作为实体类型。
  • 输入正则表达式模式。例如,要捕获一个 10 位订单号,请使用模式 \d{10}。此模式确保只有包含正好 10 位数字的输入。
  • 在预期结构化数据的提示中使用此正则表达式实体,例如订单 ID 或跟踪编号。
  • 在测试期间,输入有效和无效数据以确保机器人识别与正则表达式模式匹配的输入,同时拒绝不正确的格式。
Steps to Create Regex Entities

示例

对于订单跟踪机器人,你可以使用以下模式创建 OrderID 正则表达式实体:

  • 模式 - \d{10}(对于 10 位订单号)
  • 示例用户输入 - “我的订单号是 1234567890。”

为什么我们需要在对话中使用实体?

实体在集成到对话流程中时最为强大。因为整个聊天机器人都是基于实体和实体检测算法的,它必须自动识别用户的输入。

每次向 ChatGPT 或任何个人 Copilot 聊天机器人询问内容时,它们都将使用实体来理解所有内容。我们的任务是微调这些实体,以便我们可以为用户创建自定义输入。因此,允许机器人根据用户的输入动态响应。

将实体集成到对话中的步骤

  • 选择对话步骤 - 确定将在对话中使用实体的位置。例如,在询问电子邮件或产品 ID 时,请确保选择了正确的实体。
  • 添加实体 - 在对话编辑器中,从下拉列表中选择相关的实体(例如,电子邮件、ProductID)。这告诉机器人期望与该实体匹配的数据。
  • 槽位填充 - 启用槽位填充以确保只有在捕获必要实体后对话才会继续。
  • 测试对话流程 - 与机器人互动。

示例

询问产品查询的机器人可能具有以下对话:

  • 聊天机器人 - “请输入您的产品 ID。”
  • 用户 - “12345”
  • 聊天机器人 - (捕获 ProductID 实体并继续对话)。

什么是槽位填充?

槽位填充 是一种确保从用户那里收集特定数据的关键机制。如果没有必要的数据(或“槽位”),机器人将提示用户,直到提供信息。

步骤

  • 在对话流程中,指定哪些实体是必需的。例如,在继续进行订单查询之前,可能需要姓名、电子邮件和 ProductID。
  • 如果用户没有提供所需的数据,机器人将自动询问缺少的实体。
  • 确保只有在填充所有必需的槽位后,机器人才会继续。

示例

在客户支持场景中:

  • 聊天机器人 - “您的姓名是什么?”
  • 用户 - (跳过输入)
  • 聊天机器人 - “请提供您的姓名以继续。”

测试和验证实体

测试对于确保实体被你的机器人正确识别和处理至关重要。使用 Copilot Studio 中的内置测试工具来验证每个实体在对话流程中的性能。

测试实体的步骤

  • 使用 Copilot Studio 中的“测试聊天”功能来模拟对话,并查看机器人如何响应用户输入。
  • 使用各种输入测试机器人,以确保实体正在被准确捕获。根据需要调整实体配置。
  • 在部署机器人之前,在不同的场景中进行彻底的测试,以确保它能够正确处理用户输入。

通过了解这些不同类型的实体以及槽位填充,你可以确保你的 AI Microsoft Copilot Studio 制造的聊天机器人从用户那里捕获所有必要的数据,从而产生更流畅和引人入胜的对话。

广告