Microsoft Copilot Studio - 自定义实体

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

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

什么是预建实体?

现在,假设您正在制作一个从用户那里获取信息的个人聊天机器人。一些实体示例是

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

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

什么是预建实体?

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

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

1. 导航到"实体"选项卡 −

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

2. 浏览预建列表 −

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

3. 选择并实施 −

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

4. 测试集成 −

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

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

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

创建自定义实体的步骤

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

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

Smart Matching Feature

示例

假设您希望自定义实体在电子商务聊天机器人中捕获"ProductID" −

  • 名称 − ProductID
  • 类型 − 文本
  • 同义词 −包括"商品编号"、"SKU"等变体,甚至是用户可能输入的简写术语。

什么是封闭列表实体?

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

创建封闭列表实体的步骤

创建新实体 −

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

示例

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

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

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

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

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

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

创建新实体 −

  • 单击"创建新实体"并选择"RegEx"作为实体类型。
  • 输入正则表达式模式。例如,要捕获 10 位订单号,请使用模式 \d{10}。此模式可确保仅输入恰好 10 位数字。
  • 在需要结构化数据的提示中使用此正则表达式实体,例如订单 ID 或跟踪号。
  • 在测试期间,输入有效和无效数据,以确保机器人识别与正则表达式模式匹配的输入,同时拒绝不正确的格式。
创建正则表达式实体的步骤

示例

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

  • 模式 − \d{10}(表示 10 位订单号)
  • 用户输入示例 − "我的订单号是 1234567890。"

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

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

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

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

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

示例

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

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

什么是槽填充?

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

步骤

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

示例

在客户支持场景中 −

  • 聊天机器人 − "你叫什么名字?"
  • 用户 −(跳过输入)
  • 聊天机器人 − "请提供您的姓名以继续。

测试和验证实体

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

测试实体的步骤

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

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