在 Copilot Studio 代理中使用变量
Microsoft Copilot Studio 支持您使用变量存储客户输入的重要信息,以供之后使用。 例如,您可以在名为 varName 的变量中保存客户的名称。 本变量可以插入到对话节点中,以为客户打造更个性化的体验,例如将其插入到消息节点中,以允许代理在对话继续时按名称处理客户。
变量可用于将客户动态传递到不同的对话路径。 还可以将它们作为输入参数馈送到工作流中。 例如,客户居住的城市可以存储在变量中。 执行工作流时,可以将变量作为输入参数传递,以确保天气服务获得正确的预测。
许多变量类型与代理中定义的现成可用的自定义实体相关联。 对于参考,可以使用 变量类型的完整列表 。
创建变量
当您将问题节点添加到主题时,将自动创建变量,并且可以在将用户回复另存为部分下进行编辑。 默认情况下,当插入问题节点时,将使用多选选项创建它。 但是,若要使用任何预生成实体或自定义实体,请在标识下选择它。
重命名变量
自动创建变量时,将提供非描述性的默认名称,例如 Var1、Var2 等。 如果需要,您可以通过选择变量,然后在变量属性窗格中输入新名称来重命名变量。 这将使以后需要它时更容易识别。
在主题之间传递变量
Microsoft Copilot Studio代理中的一个常见操作是从一个主题重定向到另一个主题,例如在收到问候后将某人发送到 Store Hours 主题。 重定向到另一主题时,您可以将值传递给目标主题中的变量。 您还可以将值传回原始主题中的变量。
当您已经获得主题所需的信息时,在主题之间传递变量特别有用。 用户将很高兴不必重复回答问题。 例如,如果您已经在问候语主题中捕获了用户的姓名,并且您知道该用户的姓名在您要重定向到的商店营业时间主题中使用,则在重定向到 Store Hours 主题时,您可以轻松地将该用户的姓名传递到该主题。
接收其他主题中的值
当您在主题中定义变量时(例如,通过插入问题节点),用户对该问题的回答将填充到与该问题关联的变量中。 既然您已经获得了该值,就没有理由再问这个问题了。 在这些情况下,您可以将该变量定义为接收其他主题中的值。
这意味着当另一个主题重定向到此主题时,它可以将一个值传递到此变量中,并跳过问题。 当用户与代理交谈时将获得无缝体验。
配置重定向节点时,您需要定义要在目标主题中填充什么变量。 指定要在目标主题中设置的变量后,您将指定将使用当前主题中的哪个值。 例如,在下图中,我们要重定向到一个名为位置的主题。 位置主题中的 UserCity 变量将设置为来自重定向主题的名为 Location 的文本变量。
有关从其他主题接收值的更多信息和分步说明,请参阅接收其他主题中的值。
将值返回到原始主题
当一个主题以其他方式提出问题或从操作中获取变量时,该变量可以返回到重定向到它的原始主题。
在这种情况下,该变量也成为原始主题的一部分,可以像任何其他变量一样使用。 这有助于您构建主题,以便代理获取的信息可在各主题间使用,从而减少对全局变量的需求。
有关详细信息和分步说明,请参阅将值返回到原始主题。
若要详细了解如何使用变量,请参阅 “使用变量”。
全局变量
默认情况下,变量的值只能在创建该变量的主题中使用。 例如,如果您在“查看天气”主题中创建变量 UserCity,则只能将其包含在“查看天气”主题中的消息节点等项目中。 这些变量称为 主题级 变量。 但是,可能在某些情况下,您会希望在多个主题间使用相同的值。 当对话涵盖多个主题时,代理可以记住变量上下文。
例如,欢迎主题可能会询问客户的姓名和电子邮件。 当对话转到另一个主题(例如预约预订主题)时,您可能会希望代理记住客户的姓名和电子邮件地址。
在 Microsoft Copilot Studio 中,这些变量称为 Global 变量。 它们可供代理中的任何主题访问。
默认情况下,全局变量仅在当前会话期间应用。 您可以指定应将哪些变量视为全局变量,以将其与主题级别变量区分开来。
定义全局变量
若要将变量定义为全局变量,请直接从节点中或在顶部菜单栏内的变量菜单中选择变量。 通常,您将导航到首先引用要使用的变量的问题节点。
在变量属性窗格中的使用情况下,选择全局(任何主题均可访问)。
注释
变量名称将附加一个前缀字符串 Global,以将其与主题级别变量区分开来。
例如,变量 UserName 现在显示为 Global.UserName。 当将主题变量转换为全局变量时,请确保该变量名称在所有主题中都是唯一的。 如果遇到名称冲突的情况,您需要重命名变量,然后才能保存更改。
使用全局变量
创建全局变量后,它可供所有主题使用。 使用消息或问题节点时,选择 {x} 按钮并导航到 “自定义 ”选项卡。这会显示当前主题中可用的所有变量的列表。 变量按字母顺序排序,并按其使用情况类型(即全局和主题)进行分组。
使用条件节点、工作流节点或工具节点时,还可以查看可用的全局变量。
管理全局变量
当您创建要在多个主题间使用的全局变量时,必须了解其应用位置。 您可以通过查看引用轻松查找变量的初始定义位置,并通过选择查看所有引用来识别使用它的其他主题。 在开发新代理或在复杂主题分支中管理多个变量时,此功能特别有用。
引用部分提供了两个主要选项:
引用:显示当前定义变量的位置。
查看所有引用:列出使用变量的所有主题和节点,允许您直接导航到每个引用的主题和节点。
从外部源设置全局变量的值
您可以将全局变量设置为使用外部源进行初始化。 这样代理可以在开始对话时了解某些上下文。
例如,一名客户从您的网站发起聊天。 如果该用户已登录到您的网站,则您已知道该客户的姓名。 通过在开始对话之前将该信息传递给代理,它可以与该客户进行更智能的对话,而无需再次询问他们的姓名。
您可以指定变量可从外部源获取其值。 打开 “变量属性 ”窗格,在“ 使用情况 ”部分中,选择 “外部源”可以设置值 框。
有关使用全局变量的详细信息,请参阅 “使用全局变量”。
接下来,我们将介绍系统主题。