在Power Automate的设计器中最大化使用Copilot的功能。

Power Automate 设计器中的 Copilot 帮助用户使用自然语言生成和修改流程。 本指南介绍了哪些方面目前效果良好、哪些方面不太理想,以及如何获得最佳结果。

Copilot今天可以执行的操作

Copilot 在您为其提供清晰、有范围的流程修改指导时,效果最佳。 它可以:

  • 向流添加操作:请使用Copilot在特定点插入特定操作。 它了解操作目录,并可以配置常见参数。
  • 修改现有操作:更改触发器计划、更新条件、交换连接器或调整操作设置。
  • 解释流的作用:选择流并要求Copilot逐步演练逻辑。 这对您继承自他人的流特别有用。
  • 建议后续步骤:添加触发器后,Copilot可以根据常见模式推荐逻辑下一个操作。
  • 简单表达式帮助:Copilot可以编写基本表达式,例如 formatDateTime()concat()、字符串操作和简单条件。 它能很好地处理单行代码。
  • 添加并行分支和错误处理:请 Copilot 添加一个并行分支,并使用配置运行条件设置来处理失败通知模式。
  • 生成作用域块:Copilot 可以使用作用域操作并配合“配置运行条件”,将操作封装在 try/catch 模式中。

Copilot尚无法执行的操作

提前了解限制可节省时间。 Copilot当前无法:

  • Debug 运行时错误:Copilot无权访问流的运行历史记录、错误日志或执行上下文。 它不知道特定运行失败的原因。
  • 读取数据:Copilot不会查询SharePoint列表、Dataverse 表、SQL 数据库或任何实时数据源。 它无法验证列名是否存在或值是否正确。
  • Fix 连接问题:过期的令牌、权限错误和网关问题不在Copilot的范围内。 这些要求手动重新身份验证或管理员操作。
  • 可靠地修改复杂的嵌套逻辑:深度嵌套条件、多个应用于 Each 级别或具有多个分支的 Switch 语句可能会产生意外的结果。 将这些请求分解为较小的请求。
  • 理解跨流依赖关系:如果流调用子流或依赖于另一个流的输出,Copilot会将每个流单独处理。
  • 生成复杂表达式:多函数嵌套表达式、XPath 查询或引用几个步骤中的动态内容的表达式通常不正确或不完整。

注释

这些限制是暂时性的。 产品团队正在积极致力于提供 Copilot 对运行历史记录和错误上下文的访问权限。

有效的提示模式

具体的单用途提示获得最佳结果。 以下是一些一贯有效的模式。

添加操作

  • “在”获取项“操作后添加条件,该操作检查状态列是否等于”已批准”。

  • “在审批步骤后添加发送电子邮件(V2)操作。 将“To”字段设置为 RequestorEmail 变量,并将主题设置为“你的请求已批准”。

修改现有步骤

  • “将触发器更改为每周一上午 9:00(太平洋时间上午 9:00)运行。

  • “更新条件,使用 OR 运算符同时检查‘优先级’字段是否为‘高’。”

说明流程

  • “说明这个流程如何分步执行。”

  • “当‘应用于每个’的条件为假时会发生什么?”

处理错误

  • “向 HTTP 操作添加错误处理。 如果失败,请向我发送一封包含错误详细信息的电子邮件,然后将流程标记为失败。

  • “将 SharePoint 操作整合在一个作用域中,并添加一个在失败时运行的并行作用域,用于向我们的 Teams 频道发送消息。”

表达式

  • “编写一个表达式,将今天的日期格式设置为 YYYY-MM-DD。

  • “创建从 FileName 字段获取文件扩展名的表达式。

效果不佳的提示模式

这些提示样式会产生不良结果。 避免它们。

太模糊了

“修复我的流。”

Copilot不知道发生了什么问题。 它看不到错误,“修复”可能意味着任何事情。 请具体告诉Copilot您想要修改的内容。

请求调试运行时错误

  • “为什么我的流昨天下午 3 点失败了?”

  • “调试此错误:”请求的操作无效。”

Copilot 无法访问设计器中的运行历史记录或错误日志,但可以通过“流运行”页面协助排查流运行问题。 在本文中了解有关 何时使用外部 AI 进行调试的详细信息。

在一条消息中输入多步骤说明

“在创建SharePoint项时添加触发器,然后获取项目详细信息,检查状态是否已获得批准,向经理发送电子邮件,等待审批,更新项目,然后发布到 Teams。

将此分解为单个请求。 提供一个说明,确认结果,然后提供下一个指令。 Copilot 能可靠地处理单个步骤,但在长链中会降低准确性。

询问您的特定数据

  • 我的 SharePoint 列表有哪些列?

  • “我的 Dataverse 联系人表中的电子邮件地址是否有效?”

Copilot无法查询数据源。 直接检查数据,然后告知Copilot要使用的确切字段名称。

何时使用外部 AI

对于某些任务,常规用途 AI 工具目前更有效。 这可能会随着Copilot获得更多背景信息而改变,但目前:

使用外部 AI 调试错误消息:复制失败运行中的完整错误消息并将其粘贴到Copilot、GitHub Copilot或其他工具中。 包括:

  • 错误消息和状态代码
  • 失败的操作类型(HTTP、SharePoint、SQL 和类似)
  • 预期会发生的情况

外部 AI 工具对 API 错误代码有广泛的了解,并且通常可以立即识别根本原因。

将外部 AI 用于复杂表达式:如果需要组合多个函数的嵌套表达式,外部 AI 工具通常会生成更准确的结果。 粘贴正在使用的字段并描述所需的输出。 然后将生成的表达式粘贴回Power Automate。

小窍门

了解如何在 适用于云流的 Expression 指南中使用现成表达式库。 本文介绍许多常见模式,无需 AI 工具。

使用外部 AI 提供流程设计建议:描述业务流程并请求体系结构建议。 外部工具可以建议父/子流、错误处理策略和重试逻辑等模式。

为特定于连接器的问题使用外部 AI:如果需要了解 HTTP 请求正文的确切 JSON 格式,或者SharePoint的 OData 筛选器语法,外部 AI 工具具有深入的参考知识。

注释

这不是对Copilot质量的反映。 这反映了作用域的问题。 Copilot针对上下文流程编辑进行了优化。 外部工具已针对广泛的知识检索进行优化。 同时使用两者。

有关更好的结果的提示

  1. 具体来说:命名操作、字段和值。 “添加一个条件以检查 Status 是否等于 Approved”优于“添加审批检查”。

  2. 每条消息一次请求:Copilot在处理专注且单一目的的指令时表现最佳。 添加操作,确认其正确无误,然后继续。

  3. 使用操作动词:“添加”、“更改”、“删除”、“解释”或“移动”这些动词可以用来开始您的提示。这些动词直接对应于Copilot可以执行的操作。

  4. 包含字段名称和值:不要让 Copilot 去猜测。 如果你知道该列被称为EmployeeEmail,请说明。

  5. 保存前请审核:保存前务必检查 Copilot 生成的内容。 打开它创建的操作并验证参数,尤其是动态内容引用。

  6. 迭代小步骤:渐进地构建流程。 添加触发器,验证其功能。 添加第一个操作,对其进行验证。 这可以及早捕获问题,并保持Copilot的上下文清晰。

  7. 使用Copilot解释功能进行验证:Copilot修改流后,请它解释流的作用。 将其描述与您的意图进行比较。 这在运行时错误发生之前会捕获误解。

  8. 在 Copilot 的重大编辑之前保存您的工作流程:如果 Copilot 产生不需要的更改,您可以恢复到上次保存的版本。 将保存视为检查点。

小窍门

如果Copilot产生了意外的结果,请撤销该结果,并尝试使用更具体的详细信息重新措辞您的请求。 更短、更集中的提示几乎总是比长时间的多部分指令工作更好。

注意:作者在 AI 的帮助下创建了本文。 了解更多信息