使用经典聊天机器人作为技能

重要提示

继在生成式人工智能的重大投资和跨 Microsoft Copilot 的增强集成之后,Power Virtual Agents 功能和特性现已成为 Microsoft Copilot Studio 的一部分

在我们更新文档和培训内容时,一些文章和截图可能会参考 Power Virtual Agents。

备注

本文包含的信息仅适用于 Microsoft Copilot Studio 经典聊天机器人。 此功能在新 Microsoft Copilot Studio 体验中不可用。

当您将 Microsoft Copilot Studio 助手作为 Bot Framework 机器人的技能使用时,Bot Framework 机器人会确定用户所说的内容是否与 Microsoft Copilot Studio 助手的触发短语匹配。 如果有匹配项,Bot Framework 机器人会将对话传递给 Microsoft Copilot Studio 机器人。 Microsoft Copilot Studio 助手将提取任何实体并触发匹配主题。

您还可以将变量作为来自 Bot Framework Composer 的输入传递给 Microsoft Copilot Studio 技能主题,并使用它返回的输出

重要提示

您必须有试用或完整的 Microsoft Copilot Studio 许可证才能将 Microsoft Copilot Studio 机器人作为技能使用。 Teams Microsoft Copilot Studio 许可证不提供此功能。

要将 Microsoft Copilot Studio 助手设置为技能:

  1. 将 Bot Framework 机器人添加到 Microsoft Copilot Studio 助手的允许列表中
  2. 下载 Microsoft Copilot Studio 助手的技能清单
  3. 在 Bot Framework Composer 中使用下载的技能清单在机器人之间创建连接
  4. 使用 Bot Framework Emulator 确认机器人作为技能的工作情况

先决条件

将 Bot Framework 机器人添加到 Microsoft Copilot Studio 助手的允许列表中

将 Bot Framework 机器人的应用 ID 添加到要用作技能的 Microsoft Copilot Studio 助手的允许列表中。 机器人必须在同一个租户中。

  1. 在 Bot Framework Composer 中,打开将使用技能的机器人。 选择配置,然后选择开发资源。 复制 Microsoft 应用 ID 中的 ID。

    突出显示在哪里可以找到 Bot Framework 机器人的应用 ID 的屏幕截图。

  2. 在 Microsoft Copilot Studio 中,打开您想要用作技能的助手。

  3. 在导航菜单中,转到设置,然后选择安全性。 然后选择允许列表

    突出显示安全页面上的允许列表磁贴的屏幕截图。

  4. 选择添加允许的呼叫者

    突出显示管理允许列表面板顶部的添加允许的呼叫者按钮的屏幕截图。

  5. 粘贴您的 Bot Framework 机器人的应用 ID,然后选择下一步

    突出显示在哪里可以输入 Bot Framework 机器人的应用 ID 的屏幕截图。

    注意

    Microsoft Copilot Studio 助手不能作为其他 Microsoft Copilot Studio 助手的技能。 如果您尝试将属于 Power Virtual Agent 机器人的应用 ID 添加到允许列表,您将收到错误。 您只能为 Bot Framework 机器人添加应用 ID。

    Microsoft Copilot Studio 将验证 Bot Framework 机器人的应用 ID,确认它属于位于同一租户中的机器人。

  6. (可选)为您添加到允许列表的聊天机器人添加显示名称

    显示在允许列表中为机器人添加显示名称的位置的屏幕截图。

  7. 选择保存

如果您输入了显示名称,Bot Framework 机器人将以其显示名称显示,如果未输入,将以其应用 ID 显示。 任何时间要删除或进行编辑,选择机器人显示名称或应用 ID 右侧的图标。

管理允许列表面板的屏幕截图,显示允许的机器人的编辑和删除图标。

备注

添加到允许列表的 Bot Framework 机器人不会作为机器人内容的一部分导出

下载 Microsoft Copilot Studio 助手的助手技能清单

Bot Framework 机器人可以使用 Microsoft Copilot Studio 技能清单配置与生成清单的助手的连接。

所有 Microsoft Copilot Studio 助手都有技能清单。 这些是包括技能名称、界面和触发短语的 JSON 文件。

Bot Framework 机器人可以使用技能清单获知何时触发 Microsoft Copilot Studio 机器人(例如,响应用户对机器人所说的话)。

Microsoft Copilot Studio 技能清单遵循 Bot Framework 技能清单架构版本 2.2 的架构,由 intents.lumanifest.json 文件组成。

Bot Framework 机器人可以根据清单数据决定 Microsoft Copilot Studio 助手是否应处理用户的请求。 它将用户所说的一切传递给助手。 然后,Microsoft Copilot Studio 助手将用户所说的内容与 Microsoft Copilot Studio 主题进行匹配,提取填充槽所需的任何实体,并触发 Microsoft Copilot Studio 主题。

Microsoft Copilot Studio 技能清单会自动生成和更新。 Microsoft Copilot Studio 助手有两个技能清单:

  • 测试清单:允许 Bot Framework 机器人连接到 Microsoft Copilot Studio 助手的测试版本。 使用测试清单在发布之前验证技能的更改。

    • 测试清单可立即用于每个新创建的 Microsoft Copilot Studio 机器人。
    • 每次保存助手时,它都会自动更新以反映更改。
  • 已发布清单:允许 Bot Framework 机器人连接到 Microsoft Copilot Studio 助手的已发布版本。

    • 已发布清单仅可用于至少发布过一次的 Microsoft Copilot Studio 助手。
    • 每次发布助手时,它都会自动更新以反映更改。

备注

已发布清单对从未发布的 Microsoft Copilot Studio 助手不可用。

要生成您的机器人的已发布清单,请发布您的 Microsoft Copilot Studio 助手

这两个技能清单都将在管理允许列表面板上显示。

显示 Microsoft Copilot Studio 助手清单的管理允许列表面板的屏幕截图。

技能清单还会显示在助手的详细信息页面上。 在导航菜单中,选择设置,然后选择详细信息。 详细信息页面显示其他元数据,包括环境 ID租户 ID机器人应用 ID

详细信息页面的屏幕截图,突出显示 Microsoft Copilot Studio 助手清单的下载位置。

要下载清单,选择它。 它将下载为标记为 <机器人名称>_manifest(对于已发布清单)或标记为 <机器人名称>_test__manifest(对于测试清单)的 .zip 文件。

显示下载后两个 Microsoft Copilot Studio 清单的屏幕截图。

备注

技能清单不包括添加到 Microsoft Copilot Studio 助手的系统主题和 Composer 对话。 仅包括由助手作者创建的主题和作者添加到机器人的 Composer 意向触发器。

在 Composer 中连接到 Microsoft Copilot Studio 技能

使用 Microsoft Copilot Studio 技能清单在 Composer 中的 Bot Framework 机器人中创建技能连接。

  1. 在 Bot Framework Composer 项目中,选择添加,然后选择连接到技能

    Bot Framework Composer 的屏幕截图,显示如何将 Bot Framework 机器人连接到技能。

  2. 浏览到并选择 Microsoft Copilot Studio 清单 .zip 存档,然后选择下一步

    Composer 的屏幕截图,显示在何处选择 Microsoft Copilot Studio 技能的压缩存档。

  3. 在您的 Microsoft Copilot Studio 助手中选择要添加到 Bot Framework 机器人的主题或意向,然后选择下一步

    显示 Microsoft Copilot Studio 主题的选择的 Composer 的屏幕截图。

  4. 查看并编辑您的 Microsoft Copilot Studio 助手的触发短语,然后选择下一步

    Composer 的屏幕截图,显示在何处编辑选定主题的触发短语。

  5. 确保选择将业务流程协调程序用于多机器人项目,然后选择继续

    显示打开的业务流程协调程序的 Composer 的屏幕截图。

  6. 验证 Microsoft Copilot Studio 技能是否已正确添加到您的 Bot Framework 机器人,以及具有您的 Microsoft Copilot Studio 助手名称的新触发器是否出现在 Composer 中的项目中。

    添加 Microsoft Copilot Studio 技能后 Composer 的屏幕截图。

在技能清单中查找主题

使用事件在技能中触发 Microsoft Copilot Studio 主题。 要从 Composer 调用特定主题,通过技能清单中关联事件的名称引用主题。

  1. 选择连接到技能操作。

  2. 技能对话名称下,选择显示技能清单

    突出显示技能清单显示位置的 Composer 的屏幕截图。

  3. 在清单中查找活动。 此属性包含表示 Microsoft Copilot Studio 助手中可用主题的嵌套属性。

    突出显示活动属性的技能清单的屏幕截图。

  4. 找到您要调用的主题,查找它的 name 属性。 当 Microsoft Copilot Studio 技能接收具有此名称的事件时,会触发主题。

    在下面的示例中,事件活动名称为 dispatchTo_new_topic_87609dabd86049f7bc6507c6f7263aba_33d

    突出显示清单中的 Microsoft Copilot Studio 主题名称的屏幕截图。

调用 Microsoft Copilot Studio 技能主题

不依靠用户所说的内容触发 Microsoft Copilot Studio 技能主题,您可以直接调用主题。 您只能直接调用技能清单中列出的 Microsoft Copilot Studio 主题。

  1. 在 Composer 创作画布中,选择添加,然后选择访问外部资源,然后选择连接到技能

    突出显示如何连接到技能的 Composer 的屏幕截图。

  2. 技能对话名称列表中,选择您的 Microsoft Copilot Studio 助手。

    突出显示在何处选择您的 Microsoft Copilot Studio 助手的屏幕截图。

  3. 找到您要调用的 Microsoft Copilot Studio 机器人主题的事件活动名称。 复制该值,去掉引号,将其保存以在后续步骤中使用。

  4. 选择关闭

  5. 活动部分,选择显示代码

    突出显示在何处选择显示代码的屏幕截图。

  6. 键入或粘贴以下代码。 将 TOPIC_ACTIVITY_NAME 替换为您的主题的事件活动名称。 确保 name 属性中没有引号。

    [Activity
        type = event
        name = TOPIC_ACTIVITY_NAME
    ]
    

    突出显示在何处添加包含 Microsoft Copilot Studio 主题名称的活动事件代码的屏幕截图。

将输入变量传递给 Microsoft Copilot Studio 技能主题

Bot Framework Composer 可以将变量作为输入传递给 Microsoft Copilot Studio 技能主题。 要了解如何创建接受输入变量的 Microsoft Copilot Studio 主题,请参阅在主题之间传递变量

如果可以接收输入变量的 Microsoft Copilot Studio 主题在您的技能清单中列出,您可以将 Composer 变量传递给它。

  1. 在 Composer 创作画布中,选择添加,然后选择访问外部资源,然后选择连接到技能

    突出显示如何连接到技能的 Composer 的屏幕截图。

  2. 技能对话名称列表中,选择您的 Microsoft Copilot Studio 助手。

    突出显示在何处选择您的 Microsoft Copilot Studio 助手的屏幕截图。

  3. 找到您要调用的 Microsoft Copilot Studio 助手主题的事件活动名称。 复制该值,去掉引号,将其保存以在后续步骤中使用。

  4. 查找主题的 value 属性。 value 属性包含 $ref 属性。 复制该值并保存以在下一步中使用。

    警告

    如果 Microsoft Copilot Studio 主题没有输入,它将没有 value 属性。

    突出显示 value 属性的技能清单的屏幕截图。

  5. 找到 definitions 属性,然后查找与您在上一步中找到的 $ref 值匹配的嵌套属性。 注意 Microsoft Copilot Studio 主题输入的名称和类型。 您将在接下来的步骤中用到它们。

    技能清单的屏幕截图,突出显示在哪里可以找到 Microsoft Copilot Studio 主题的输入变量。

  6. 选择关闭

  7. 活动部分下,选择显示代码

    突出显示在何处选择显示代码的屏幕截图。

  8. 键入或粘贴以下代码。 替换以下值:

    1. TOPIC_ACTIVITY_NAME 替换为您的主题的事件活动名称。
    2. PVA_INPUT_VARIABLE 替换为您主题中的输入变量。
    3. COMPOSER_INPUT_VARIABLE 替换为将提供值的 Composer 变量。
    [Activity
        Type = event
        Name = TOPIC_ACTIVITY_NAME
        Value = ${addProperty(json("{}"), 'PVA_INPUT_VARIABLE', COMPOSER_INPUT_VARIABLE)}
    ]
    

    在下面的示例中,Composer 变量 dialog.storeLocation 向 Microsoft Copilot Studio 助手主题 dispatchTo_new_topic_127cdcdbbb4a480ea113c5101f309089_21a34f16 中的输入变量 pva_StoreLocation 提供值。

    突出显示在何处添加包含 Microsoft Copilot Studio 输入值的活动事件代码的屏幕截图。

接收 Microsoft Copilot Studio 技能主题的输出变量

可以在 Composer 中接收 Microsoft Copilot Studio 技能主题的输出。 要了解如何创建返回输出的 Microsoft Copilot Studio 主题,请参阅在主题之间传递变量

  1. 在 Composer 创作画布中,选择添加,然后选择访问外部资源,然后选择连接到技能

    突出显示如何连接到技能的 Composer 的屏幕截图。

  2. 技能对话名称列表中,选择您的 Microsoft Copilot Studio 助手。

    突出显示在何处选择您的 Microsoft Copilot Studio 助手的屏幕截图。

  3. 找到您要调用的 Microsoft Copilot Studio 机器人主题的事件活动名称。 复制该值,去掉引号,将其保存以在后续步骤中使用。

  4. 查找主题的 resultValue 属性。 resultValue 属性包含 $ref 属性。 复制该值并保存以在下一步中使用。

    警告

    如果 Microsoft Copilot Studio 主题没有输出,它将没有 resultValue 属性。

    突出显示 Microsoft Copilot Studio 主题的 resultValue 属性的技能清单的屏幕截图。

  5. 找到 definitions 属性,然后查找与您在上一步中找到的 $ref 值匹配的嵌套属性。 注意 Microsoft Copilot Studio 主题输出变量的名称和类型。 您将在接下来的步骤中用到它们。

    在以下示例中,Microsoft Copilot Studio 主题返回两个字符串类型的输出,pva_Statepva_Item

    技能清单的屏幕截图,突出显示在哪里可以找到 Microsoft Copilot Studio 主题的输出变量。

  6. 选择关闭

  7. 活动部分,选择显示代码

    突出显示在何处选择显示代码的屏幕截图。

  8. 键入或粘贴以下代码。 将 TOPIC_ACTIVITY_NAME 替换为您的主题的事件活动名称。 确保 name 属性中没有引号。

    [Activity
        type = event
        name = TOPIC_ACTIVITY_NAME
    ]
    

    突出显示在何处添加包含 Microsoft Copilot Studio 主题名称的活动事件代码的屏幕截图。

  9. 在代码区域下,将属性设置为 Composer 变量以接收和存储来自 Microsoft Copilot Studio 技能主题的输出值。

    突出显示将属性字段设置为 dialog.skillResult 的位置的屏幕截图。

  10. 在 Composer 创作画布中,选择添加,然后选择管理属性,然后选择设置属性

    突出显示在何处选择设置属性的屏幕截图。

  11. 属性设置为应该存储提取值的 Composer 值。 然后将设置为您存储主题输出的 Composer 变量。

    在以下示例中,dialog.skillResult.pvaStatedialog.skillResult.pvaItem 的输出值被提取到新的 Composer 变量 dialog.Statedialog.Item

    突出显示在 Composer 设置属性窗口中保存到 dialog.State 和 dialog.Item 的输出值的屏幕截图。

通过 Bot Framework 机器人测试作为技能的 Microsoft Copilot Studio 助手

使用 Bot Framework 模拟器测试您的 Bot Framework 机器人是否将 Microsoft Copilot Studio 助手作为技能正确调用。

重要提示

Bot Framework 机器人必须添加到 Microsoft Copilot Studio 助手的允许列表中,技能连接才能正常工作。

了解详情