将操作与自定义代理结合使用(预览版)
您可以通过添加一个或多个操作来扩展代理的功能。 您的代理使用操作通过生成编排 自动响应用户,或者您可以从主题中显式调用它们。
核心操作类型
如果您启用 生成式编排,您的代理可以自动选择最合适的操作或主题,或者跨知识搜索,以响应用户。
在经典模式(禁用生成编排)下,代理只能使用主题来响应用户。 但是,您仍然可以将代理设计为从 topic 中显式调用 action。
操作基于以下核心操作类型之一:
- 预生成连接器操作
- 自定义连接器操作
- Power Automate 云端流
- AI Builder 提示
- Bot Framework 技能
每个核心操作都有描述其用途的附加信息,允许代理使用生成式 AI 来生成问题。 需要这些问题来填写执行操作所需的输入。 因此,您不需要手动创建问题节点来收集所有需要的输入,例如流上的输入。 在运行时为您处理 Importing。
默认情况下,使用生成模式时,操作会将其信息返回给代理,以便代理可以生成用户查询的上下文回复。 Alternatively,您可以指示您的操作始终立即响应,生成消息或创作显式消息。
添加操作
通过在左侧导航窗格中选择 Agents(代理 )并从列表中选择您的代理来打开您的代理。
选择 操作 以查看代理的操作。
选择添加操作。
在 Choose an action(选择操作 )向导中,搜索要使用的操作并选择它。
显示的默认列表在您的环境中有 Power Automate 个可用的流和自定义连接器。 此列表包括常用的预生成连接器和 Bot Framework 技能代理。
重要提示
一些从 AI 插件创建的操作,比如动态提示和那些基于 Dataverse API 的操作,需要身份验证。
根据操作的不同,您的连接会自动配置,如示例所示。 否则,跟随向导的说明来配置连接。 成功配置连接后,选择下一步。
查看您的插件操作配置,并 根据需要进行更改 。
选择下一步。
选择 完成(Finish) 将操作添加到您的代理。
测试您的操作
如果启用了 生成式编排,则会自动调用您的操作以回复相关的用户查询。
Alternatively,则可以 从主题中显式调用操作。
您的代理根据名称和描述选择并运行您的操作。 您可以作者高质量的描述,使用活动地图查看您的代理从 操作 页面选择了哪些操作。
在这张截图中,您可以看到一个正在对天气操作进行测试:
对您的操作配置进行更改
有许多方法可以配置您的操作。 在操作向导的最后一步,称为查看并完成,您可以通过单击相应部分旁边的编辑来更改操作的配置。 从向导中的 Review inputs and outputs (查看输入和输出)屏幕,或从已包含在代理中的操作的详细信息页面中,您可以管理操作的输入和输出参数。
操作详细信息
您可以在此配置操作的详细信息,包括操作的模型显示名称和模型描述。 通常,名称和描述是根据您选择的操作预先填充的。
每个 输入的显示名称 和 Description 属性可帮助代理了解输入的用途,为用户生成适当的问题,并识别用户回复中的正确值。 例如,以下是 MSN Weather 连接器的位置输入参数的默认名称和描述。
- 名称:位置
- 描述:位置搜索查询。 有效输入包括城市、地区、州、国家/地区、地标、邮政编码、纬度和经度
当代理提示用户输入位置时,它会生成一个问题,例如: 您想查看天气的位置是什么?您可以输入城市、地区、州、国家/地区、标志或邮政编码。
您可以根据收集的输入将 Identify as(标识为 )选项更改为 特定实体类型,这可以帮助代理准确地从用户的回复中提取值。
输入
默认情况下,每个输入都设置为动态填充最佳选项。 代理尝试从可用上下文(例如,从用户的消息)中提取值。 如果没有找到合适的值,它会生成一个问题,要求用户输入一个值。 您可以用一个值覆盖输入,而不是询问用户。 要设置覆盖,对于 How will the 代理 fill this input?,选择Set as a value( 设置为值),然后输入所需的值。 该值可以是文字值、现有变量或 Power Fx 公式。
要在请求值或验证用户答案时控制代理的行为,您可以为输入配置 其他设置 。
输出
默认情况下,您的操作被配置为根据用户的查询和操作结果,自动为用户生成上下文回复。 例如,如果用户问,“伦敦现在的温度是多少?”,使用 GPT 生成上下文回复,例如“伦敦的当前温度是 9 摄氏度”。
或者,您可以选择为您的操作创建一个特定的回复。 与确认编辑器一样,您可以使用变量选择器从操作中插入对输出变量的引用,如下例所示。
从主题中调用操作
您可以从主题中显式调用操作,类似于调用其他操作类型,比如 Power Automate 流。 根据您的用例,您可以将流作为一个更广泛的主题的一部分,使用更多的节点。 或者,就像在天气的例子中,向主题添加一个操作节点可能就是您所需要的。
要从主题中调用操作:
在, Copilot Studio转到 要编辑的代理的 Topics(主题 )页面。
创建一个新主题,然后将其命名为获取天气。
添加以下触发短语:
- 会下雨吗
- 今日预测
- 获取天气
- 天气怎么样
选择添加节点(+),然后选择调用操作。 切换到插件操作(预览)选项卡,然后选择您之前创建的操作,获取天气预报。
您的插件操作(预览)节点现已添加到您的主题中。
选择保存。
从主题调用操作时覆盖输入
默认情况下,当您的操作运行时,您的代理会生成问题供用户填充所需的输入。 但是,您可能希望覆盖一个或多个输入,并提供一个显式值,而不是询问用户。 您可以在输入部分的插件操作配置中进行覆盖。 或者,您可以仅在从特定主题使用操作时覆盖值:
在节点上选择设置值,并选择您想要覆盖的输入。
对于输入,通过键入值、选择变量或使用公式来输入值。
现在,此输入已被覆盖,代理不会要求用户输入值。
为 AI 操作启用身份验证
一些操作,当基于 AI 操作创建时,需要身份验证才能正确运行,例如动态提示或其他调用 Dataverse API 的操作。
操作始终在最终用户上下文中代理的运行时中运行,除非启用身份验证,否则无法运行。 支持两种类型的身份验证方法:
转到连接器操作属性。
在 End user authentication(最终用户身份验证)下 ,选择代理作者 authentication (身份验证)。
在代理 test 窗格或所需的渠道中发布和测试体验。
使用具有最终用户凭据的流操作
流操作可以配置为使用最终用户凭据。 在支持的渠道中使用流程不需要在代理对话框中进行特殊配置,并且用户能够在 提供的体验中管理其与给定流程的连接 。
对基于库中插件的操作进行身份验证
当基于 AI 插件创建时,操作需要身份验证才能正确工作。 这在基于提示或其他调用 Dataverse API 的操作中最为常见。 基于插件的操作始终在用户上下文中运行,除非启用身份验证,否则无法运行。 支持两种类型的身份验证方法:
集成身份验证(Teams 和 Power Apps):如果要将代理发布到 Teams 频道,可以使用此身份验证方法。 此方法也适用于嵌入在使用 Power Platform PPAPI 标准构建的令牌的任何应用程序中的代理。
手动身份验证(第三方代理):此身份验证方法涉及 ID 连接的设置 Microsoft Entra 。
要创建手动身份验证连接:
设置一个 Microsoft Entra ID 应用程序。
为您的 代理设置手动身份验证 。
允许您的应用使用委托来代表用户获取令牌。 确保添加任何必要的范围。