在 Bot Framework 机器人中使用经典聊天机器人作为技能

备注

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

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

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

重要提示

您必须拥有 试用版 或完整 Copilot Studio 许可证才能使用经典聊天机器人作为技能。 此功能不适用于 Teams Copilot Studio 许可证

要将经典聊天机器人设置为技能,请执行以下操作:

  1. Bot Framework 将机器人添加到经典聊天机器人的允许列表中。

  2. 下载经典聊天机器人的技能清单。

  3. 在 Composer 中使用 Bot Framework 下载的技能清单在机器人之间创建连接。

  4. Bot Framework 使用 Emulator 确认机器人作为技能工作。

先决条件

将您的 Bot Framework 机器人添加到经典聊天机器人的允许列表中

Bot Framework 将机器人的应用程序 ID 添加到要用作技能的经典聊天机器人的允许列表中。 机器人必须在同一个租户中。

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

  2. 在其中 Copilot Studio,打开要用作技能的经典聊天机器人。

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

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

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

    注意

    经典聊天机器人不能充当其他经典聊天机器人的技能。 如果您尝试将属于 Power Virtual Agent 机器人的应用 ID 添加到允许列表,您将收到错误。 您只能为 Bot Framework 机器人添加应用 ID。

    Copilot Studio Bot Framework 验证机器人的 App ID 并确认它属于同一租户中的机器人。

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

  7. 选择保存

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

备注

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

下载经典聊天机器人的经典聊天机器人技能清单

Bot Framework 机器人可以使用 A Copilot Studio 技能清单配置与生成清单的经典聊天机器人的连接。

所有经典聊天机器人都有技能清单。 这些是包括技能名称、界面和触发短语的 JSON 文件。

Bot Framework 机器人可以使用技能清单来了解何时扳机键经典聊天机器人(例如,回复用户对它说的话)。

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

Bot Framework 机器人可以根据清单数据决定经典聊天机器人应该处理用户的请求。 它将用户所说的一切都传递给经典聊天机器人。 然后,经典聊天机器人匹配用户对主题所说的 内容,提取插槽填充 Copilot Studio 所需的任何实体,并触发主题。 Copilot Studio

Copilot Studio 自动生成和更新技能清单。 经典聊天机器人有两个技能清单:

  • 测试清单:允许 Bot Framework 机器人连接到经典聊天机器人的测试版本。 使用测试清单在发布之前验证技能的更改。

    • 测试清单可立即用于每个新创建的经典聊天机器人。
    • 它会自动更新,以反映您 每次保存 经典聊天机器人时所做的更改。
  • 已发布的清单:允许 Bot Framework 机器人连接到经典聊天机器人的已发布版本。

    • 已发布的清单仅适用于至少已发布一次的经典聊天机器人。
    • 它会自动更新,以反映您 每次发布代理 时所做的更改。

备注

Published 清单 不适用于从未发布过的经典聊天机器人。

要生成机器人的 Published 清单,请 发布经典聊天机器人

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

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

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

备注

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

连接到 Copilot Studio Composer 中的技能

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

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

  2. 浏览并选择 Copilot Studio manifest .zip 存档,然后单击选择 Next

  3. 选择经典聊天机器人中要添加到 Bot Framework 机器人的主题或意图,然后单击选择 Next

  4. 查看并编辑经典聊天机器人的扳机键短语,然后选择 Next(下一步)。

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

  6. 验证技能是否已 Copilot Studio 正确添加到您的 Bot Framework 机器人中,以及 Composer 的项目中是否显示具有经典聊天机器人名称的新扳机键。

在技能清单中查找主题

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

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

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

  3. 在清单中查找活动。 此属性包含表示经典聊天机器人中可用主题的嵌套属性。

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

    在此示例中,事件活动名称为 dispatchTo_new_topic_87609dabd86049f7bc6507c6f7263aba_33d

调用 a Copilot Studio 技能主题

您可以直接调用它,而不是依赖用户对扳机键 a Copilot Studio 技能主题所说的话。 您只能直接调用 Copilot Studio 技能清单中列出的主题。

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

  2. 在“ 技能对话框名称 ”列表中,选择您的经典聊天机器人。

  3. 查找要调用的经典式聊天机器人主题 的事件活动名称。 复制该值,去掉引号,将其保存以在后续步骤中使用。

  4. 选择关闭

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

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

    [Activity
        type = event
        name = TOPIC_ACTIVITY_NAME
    ]
    

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

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

Copilot Studio 如果您的技能清单中列出了可以接收输入变量的主题,则可以向其传递 Composer 变量。

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

  2. 在“ 技能对话框名称 ”列表中,选择您的经典聊天机器人。

  3. 查找要调用的经典式聊天机器人主题 的事件活动名称。 复制该值,去掉引号,将其保存以在后续步骤中使用。

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

    警告

    如果 a Copilot Studio 主题没有输入,则它不会有 value 属性。

  5. 找到 definitions 属性,然后查找与您在上一步中找到的 $ref 值匹配的嵌套属性。 记下主题输入的名称 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 为经典聊天机器人主题 pva_StoreLocation 中的 input 变量 dispatchTo_new_topic_127cdcdbbb4a480ea113c5101f309089_21a34f16提供值。

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

可以在 Composer 中接收来自 a Copilot Studio 技能主题的输出。 要了解如何创建 Copilot Studio 返回输出的主题,请参阅 使用变量

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

  2. 在“ 技能对话框名称 ”列表中,选择您的经典聊天机器人。

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

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

    警告

    如果 a Copilot Studio 主题没有 outputs,则它不会有 resultValue 属性。

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

    在此示例中,the Copilot Studio 主题返回 String 类型的两个输出, pva_Statepva_Item

  6. 选择关闭

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

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

    [Activity
        type = event
        name = TOPIC_ACTIVITY_NAME
    ]
    
  9. 在代码区域下,将 Property(属性 设置为 Composer 变量,以接收和存储来自 Copilot Studio 技能主题的输出值。

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

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

    在此示例中,dialog.skillResult.pvaState dialog.skillResult.pvaItem 的输出 值被提取到新的 Composer 变量 dialog 中。状态对话。项

使用 a Bot Framework 将您的经典聊天机器人作为技能进行测试机器人

Bot Framework 使用 Emulator 测试您的 Bot Framework 机器人是否正确地将经典聊天机器人作为技能调用。

重要提示

必须 Bot Framework 将您的机器人添加到经典聊天机器人的允许列表中,技能连接才能正常工作。

了解详情