JSON 输出

默认情况下,提示将生成文本作为响应。 对于许多用例,文本可能很方便;但是,如果响应具有几个需要单独标识的元素,则可以限制文本选项。

使用 JSON 输出的好处

JSON 输出允许为提示响应而不是文本生成 JSON 结构。 通过 JSON,可以使用代理、云流或应用中的多个元素更轻松地处理响应。

下面是 JSON 输出可能实现的用例示例:

  • 显示结构化内容,如项目计划或产品信息。
  • 从发票、采购订单、交付表单等文本中提取数据。
  • 识别来自文本源的对象属性,例如电子邮件或 Dataverse 数据。
  • 从文本中获取多个类别或情绪。

使用 JSON 输出创建提示

本部分介绍如何选择 JSON 作为输出并编辑 JSON 格式。

选择 JSON 作为输出

若要更改提示响应的呈现方式,请选择 JSON 作为右上角的输出。

“使用 JSON 提示”页上的选择的屏幕截图。

编辑 JSON 格式

若要查看或编辑 JSON 格式,请选择 输出:JSON 左侧的设置图标。

输出设置的屏幕截图。

默认格式为自动检测。 此格式意味着每次测试时,提示关联的格式都会被更新为测试时检测到的格式。 当你迭代提示说明并想要了解响应格式的演变时,此格式非常方便。

自动检测格式的屏幕截图。

如果更新 JSON 示例,格式将变为 “自定义 ”,如果再次测试提示,则永远不会更新。 当不希望提示调整以影响格式或需要遵循特定格式时,此格式很方便。

可以通过选择 “返回到自动检测 ”图标还原为自动检测模式。

“返回自动检测到”图标的屏幕截图。

若要测试和保存提示,请执行以下步骤:

  1. 若要确认新修改的示例,请选择 “应用”。
  2. 若要使用新格式检查提示响应的呈现方式,请选择“ 测试”。
  3. 完成修改后,选择“ 保存自定义”。 如果跳过此步骤,所做的更改将丢失。

保存提示时,将锁定最新的 自动检测 格式或定义的 自定义 格式。 这意味着,当你在代理、云流或应用中使用提示时,将使用保存的格式-它不会有所不同。

随时可以通过选择 </>来检查从 JSON 示例生成的 JSON 架构。 当前无法修改此架构。

在 Power Automate 中使用带有 JSON 输出的提示

本部分指导你创建以下云流:

带有提示的云流的屏幕截图

  1. 创建使用 图像或文档 作为输入来处理发票的提示。

    向提示添加文本、图像或文档输入中了解详细信息。

    发票处理提示的屏幕截图。

  2. 通过提供以下 JSON 示例更新 JSON 格式:

    自定义 JSON 格式的屏幕截图。

  3. 使用 新电子邮件到达 触发器创建云流。 若要处理特定电子邮件,请确保设置筛选器。

    触发器入门中了解详细信息。

  4. 添加 “运行提示 ”作,然后选择在第一步中创建的提示。

  5. 发票 输入中,添加来自触发器操作的电子邮件附件。

    云流中的提示参数的屏幕截图。

  6. 添加发送邮件操作。

  7. 编辑电子邮件正文,以包含提示提取的元素和 JSON 输出。

    显示 JSON 字段的电子邮件正文的屏幕截图。

FAQ

无法生成 JSON

测试提示时可能会遇到以下错误: 无法生成 JSON。编辑提示说明,然后重试。

此错误可能是因为模型将 JSON 输出与元数据信息括起来,以防止成功验证所需的 JSON 格式。 若要解决此问题,请尝试将以下说明添加到提示: 不要在答案中包含 JSON markdown

自动检测模式下未返回任何 JSON

选择激活了自动检测模式的 测试提示 后,可能不会返回任何 JSON。 这可能是因为提示指令与返回 JSON 的系统指令相矛盾。 可以通过更改提示指令并再次测试来解决此问题。

JSON 格式在提示运行时未更新

在自动检测模式下检测到的最新 JSON 格式或自定义模式下定义的最新 JSON 格式在提示保存时进行记录。 此记录的 JSON 格式在提示运行时应用,确保响应格式的一致性,即使对提示的动态输入发生更改也是如此。

局限性

  • 无法修改 JSON 架构。
  • 不支持在没有字段键的情况下定义 JSON 格式。
    示例: ["abc", "def"] 不受支持,但 [{"Field1": "abc"}, {"Field1": "def"}] 受支持。

视频:提示生成器:提示生成器中的 JSON 输出