

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# Bedrock 数据自动化功能的工作原理
<a name="bda-how-it-works"></a>

利用 Bedrock 数据自动化（BDA）功能，您可以根据对特定数据类型（文档、图像、视频或音频）的处理需求来配置输出。BDA 可以生成标准输出或自定义输出。以下是一些用于理解 BDA 工作原理的关键概念。如果您是新用户，请首先了解有关标准输出的信息。
+ 标准输出 – 将没有其他信息的文件发送到 BDA 会返回默认的标准输出，其中包含根据数据类型通常所必需的信息。示例包括音频转录、视频场景摘要和文档摘要。要根据您的使用案例进行微调，您可以使用项目修改这些输出。有关更多信息，请参阅 [Bedrock 数据自动化功能中的标准输出](bda-standard-output.md)。
+ 自定义输出 – 仅适用于文档、音频和图像。选择自定义输出可准确地定义要使用蓝图提取的信息。蓝图包含您要从文件中检索的所需字段列表。每个字段代表为了满足您的特定使用案例而需要提取的一条信息。您可以创建自己的蓝图，也可以从 BDA 蓝图目录中选择预定义的蓝图。有关更多信息，请参阅 [自定义输出和蓝图](bda-custom-output-idp.md)。
+ 项目 – 项目是一种 BDA 资源，供您用来修改和整理输出配置。每个项目可以包含适用于文档、图像、视频和音频的标准输出配置，以及适用于文档、音频和图像的自定义输出蓝图。`InvokeDataAutomationAsync` API 调用中引用了项目，用来指示 BDA 如何处理文件。有关项目及其使用案例的更多信息，请参阅 [Bedrock 数据自动化功能项目](bda-projects.md)。

# Bedrock 数据自动化功能项目
<a name="bda-projects"></a>

使用 Amazon Bedrock 数据自动化（BDA）功能处理文件的一种方法是创建项目。项目是标准输出和自定义输出配置的组合。项目中必须要有标准输出，自定义输出是可选的。当您使用项目 ARN 调用 `InvokeDataAutomationAsync` API 时，将使用在该项目中定义的配置设置自动处理文件，然后根据项目的配置生成输出。

您可以向项目指定 `LIVE` 或 `DEVELOPMENT` 阶段。每个阶段都是项目的独特且可变的版本。这意味着您可以在 `DEVELOPMENT` 阶段进行编辑或测试，然后使用 `LIVE` 阶段处理客户请求。`DEVELOPMENT` 项目无法在控制台中访问，必须通过 API 来更改和调用。

一个项目允许您将单个资源用于多种文件类型。例如，使用项目名称 ABC 发送到 BDA 的音频文件，将使用项目 ABC 的音频标准输出配置进行处理。使用项目名称 ABC 发送到 BDA 的文档，将使用项目 ABC 的文档标准输出配置进行处理。

在设置标准输出时，项目为您提供了更大的灵活性。每个标准输出都有自己的一组可配置选项，例如转录或摘要，在项目中，您可以更改这些选项来更好地适应自己的使用案例。您还可以为文档、音频和图像使用蓝图配置项目，来定义自定义输出。项目在配置了生成自定义输出之后，仍将自动生成标准输出。

以下部分介绍了几个使用项目的示例。

## 使用具有标准输出的项目
<a name="bda-standard-example"></a>

我们假想一个使用案例，在这个案例中，您只希望提取完整音频和视频文件的转录摘要。采用默认设置，当您向 BDA 发送音频和视频文件时，您会收到转录摘要以及完整的转录、场景级别的摘要、检测到的文本和其他信息。对于此使用案例，您不想花费额外的时间和资源来收集不需要的信息。因此，在此使用案例中，您可以配置标准输出项目，来仅启用针对音频和视频文件的摘要功能。

要使用 API 或控制台进行此配置，请创建一个项目并修改音频和视频的标准输出设置。对于视频，启用**完整视频摘要**，但要确保禁用其他提取（例如，完整音频转录、场景摘要、内容审核等）。对音频重复此配置。对项目进行配置以仅生成摘要后，保存项目并记下该项目的 Amazon 资源名称（ARN）。此 ARN 可用于 `InvokeDataAutomationAsync` 操作来大规模处理您的文件。您只需将音频或视频文件传递给 BDA 并指定此项目 ARN，就可以只收到每个文件的摘要输出。请注意，在本示例中，没有对文档或图像执行任何配置。这意味着，如果您使用该项目 ARN 将图像或文档传递给 BDA，就会收到这些文件的默认标准输出。

## 使用具有自定义输出和标准输出的项目
<a name="bda-mixed-example"></a>

对于此使用案例，假设您要为文档和音频文件生成标准输出摘要，还要从文档中提取自定义字段。创建项目后，请为音频配置标准输出来启用**完整音频摘要**，并确保未启用其他提取。对文档重复此标准输出配置。然后，您可以通过添加新蓝图或 BDA 全局目录中现有的蓝图来为文档配置自定义输出。使用此项目 ARN 传递给 BDA 的文档将生成标准输出（完整文档摘要）和蓝图输出（所定义的自定义字段）。使用此项目 ARN 传递给 BDA 的音频文件将生成完整摘要。

处理文档时，您可能需要为传递给项目的不同类型的文档使用多个蓝图。一个项目最多可以附加 40 个文档蓝图。BDA 会自动将您的文档与项目中配置的相应蓝图进行匹配，并使用该蓝图生成自定义输出。此外，您可能需要批量传递文档。如果您传递的一个文件中包含多个文档，可以在创建项目时选择拆分文档。如果您选择这样做，BDA 会扫描文件，然后根据上下文将其拆分为单独的文档。随后将这些单独的文档匹配到正确的蓝图来进行处理。

目前，图像仅支持每个项目一个蓝图定义。对于图像文件类型 JPG 和 PNG，根据其内容，可能会被作为图像或扫描文档进行处理。我们建议您在处理文档的自定义输出时，为图像创建自定义蓝图，这样 BDA 就可以针对包含文本的图像文件提供您需要的输出。

音频文件也仅支持每个项目一个蓝图定义。

# 在使用项目时拆分文档
<a name="bda-document-splitting"></a>

Amazon Bedrock 使用 Amazon Bedrock API 时，数据自动化 (BDA) 支持拆分文档。启用拆分后，BDA 可以获取包含多个逻辑文档的 PDF，然后将其拆分为单独的文档以便处理。

拆分完成后，所拆分文档的每个片段将独立处理。这意味着输入文档可以包含不同的文档类型。例如，如果您有一个 PDF 文件，其中包含 3 份银行对账单和 1 份 W2，则拆分功能会尝试将文件分为 4 个单独的文档，然后分别进行处理。

BDA 自动拆分支持最多 3000 页文件，支持的单个文档最多为 20 页。

默认情况下，拆分文档的选项处于关闭状态，但在使用 API 时可以将其启用。以下示例创建启用了拆分器的项目。省略号表示为项目提供的其他蓝图。

```
   response = client.create_data_automation_project(
    projectName=project_name,
    projectDescription="Provide a project description",
    projectStage='LIVE',
    standardOutputConfiguration=output_config,
    customOutputConfiguration={
    'blueprints': [
        {
        'blueprintArn': Blueprint ARN,
        'blueprintStage': 'LIVE'
        },
        ...
        ]
        },
         overrideConfiguration={'document': {'splitter': {'state': 'ENABLED'}}}
)
```

启用拆分过程的部分在 overrideConfiguration 行中。此行设置拆分器，让您可在同一个文件中传递多个文档。

文档按照其中的语义边界进行拆分。

文档拆分与蓝图应用独立进行，拆分后的文档将与最接近的蓝图匹配。有关 BDA 如何匹配蓝图的更多信息，请参阅[了解蓝图匹配](#bda-blueprint-matching)。

## 了解蓝图匹配
<a name="bda-blueprint-matching"></a>

蓝图匹配基于以下要素：
+  蓝图名称 
+  蓝图描述 
+  蓝图字段 

处理文档时，您可以提供多个蓝图来进行匹配。这样便可以使用合适的蓝图处理不同的文档类型。 IDs 在调用数据自动化 API 时，您可以提供多个蓝图，BDA 会尝试将每个文档与最合适的蓝图进行匹配。这样便能在单个批次中处理混合文档类型。当文档可能会有不同类型的文件（例如银行对账单、发票、护照）时，这很有用。

如果由于文档格式差异很大或者需要专用提示而需要单独的蓝图时，为每种文档类型创建一个蓝图有助于进行匹配。有关创建有用蓝图的更多信息，请参阅[创建蓝图的最佳实践](#bda-blueprint-best-practices)。

## 创建蓝图的最佳实践
<a name="bda-blueprint-best-practices"></a>

 要想充分发挥蓝图的作用，请遵循以下最佳实践：
+ 蓝图的名称和描述要明确而详细，这样有助于进行匹配 
+ 提供多个相关的蓝图，以便让 BDA 选择最佳匹配。为差异很大的文档格式创建单独的蓝图 
+ 如果你需要最高的精度，可以考虑为每个 vendor/document 来源创建专门的蓝图
+ 不要在一个项目中包含两个相同类型的蓝图（例如两个 W2 蓝图）。在处理文档时会使用来自文档本身和蓝图的信息，一个项目中包含多个相同类型的蓝图会导致性能下降。

利用文档拆分和多个蓝图匹配，BDA 可以更灵活地处理不同的文档集，同时对每个文档应用最合适的提取逻辑。

# 禁用模态和路由文件类型
<a name="bda-routing-enablement"></a>

默认情况下，BDA 中的项目按照文件类型将其分类到不同的语义模态，来处理支持的文件类型。在创建或编辑项目时，您可以修改要处理的模态以及将哪些文件类型发送到哪些模态。在这一部分中，我们将介绍如何启用和禁用不同的模态、将文件路由到特定模态以及 BDA 的默认路由过程。

## 禁用模态处理
<a name="bda-modality-enablement"></a>

创建项目时，您可能会想到一个使用案例，其中不需要处理所有类型的文件。例如，您可能希望只处理文档和音频文件。如果是这样的话，你不希望 BDA 发送 JPEG 作为图像处理或作为 MP4 视频处理。利用模态启用功能，您可以关闭项目中的特定模态，从而编辑来自 BDA 处理的响应。

**使用 BDA 控制台禁用模态**  
使用 BDA 控制台时，模态启用由检查清单处理，在编辑或创建项目时，您只需选择或取消选择各模态即可。这些选项位于“高级设置”选项卡下。每个项目必须至少选择一个模态。

![\[Modality enablement options with checkboxes for document, image, video, and audio.\]](http://docs.aws.amazon.com/zh_cn/bedrock/latest/userguide/images/bda/modalityenableconsole.png)


**使用 BDA API 禁用模态**  
使用 BDA API 时，可以通过 `CreateDataAutomation` 操作中的 `overrideConfiguration` 请求元素处理模态启用。每个模态都有一个关联部分，您可以在其中将模态声明为 `ENABLED` 或 `DISABLED`。以下是仅启用文档和音频模态的 `overrideConfiguration` 元素示例。`modalityProcessing` 标志默认为 `ENABLED`。

```
"overrideConfiguration" : {
    "document": {
        "splitter": {
            "state": ENABLED
        },
        "modalityProcessing": {
            "state": ENABLED
        },
    },
    "image": {
        "modalityProcessing": {
            "state": DISABLED
        }
    },
    "video": {
        "modalityProcessing": {
            "state": DISABLED 
        }
    },
    "audio": {
        "modalityProcessing": {
            "state": ENABLED
        }
    },
    ...
}
```

此部分末尾的省略号表示移除了 `modalityRouting` 元素，这些内容将在下一部分中详细讨论。

## 将文件路由到特定处理类型
<a name="bda-modality-routing"></a>

一些文件类型能够基于各种因素，路由到不同的模态。使用模态路由，您可以将某些文件类型设置为手动路由到某些模态处理。 JPEGs 并且 PNGs 可以路由到文档处理或图像处理。 MP4s 并且 MOVs 可以路由到视频或音频处理。

**使用 BDA 控制台进行路由**  
创建或编辑蓝图时，在“高级设置”选项卡中，您可以选择添加新的手动模态路由。通过这种方法，您可以从 4 种可用文件类型中选择一种，然后选择将该文件类型路由到哪种处理模态。以下是控制台的屏幕截图，其中带有手动模态路由，将 PNG 文件发送到文档处理模态。

**注意**  
JPEG 文件的设置适用于“.jpeg”和“.jpg”文件。设置 MP4 设置适用于两个 “.mp4” “.m4v” 文件。

![\[来自 AWS 管理控制台的图片，显示两个下拉菜单，其中标注了文件类型和模态目标，分别选择了“PNG”和“Document”。\]](http://docs.aws.amazon.com/zh_cn/bedrock/latest/userguide/images/bda/manualrouting.png)


**使用 BDA API 进行路由**  
与模态启用类似，模态路由通过 `overrideConfiguration` 请求元素处理。以下是 `overrideConfiguration` 的 `modalityRouting` 部分示例。此示例假设所有模态都已启用，并将 JPEG 和 PNG 文件路由到文档模式，将 MOV 文件路由到音频模式。 MP4 

```
...
   "modalityRouting": {
        "jpeg": DOCUMENT, 
        "png": DOCUMENT,  
        "mp4": AUDIO,     
        "mov": AUDIO      
    }
}
```

示例开头的省略号表示删除了 `overrideConfiguration` 的其余部分，在关于模态启用和文档拆分器功能的部分中将对此进行详细讨论。

## InvokeDataAutomationAsync API 的标准路由
<a name="bda-standard-routing-async"></a>

在您没有设置自己的路由过程时，BDA 使用一组基于文件类型的标准过程来确定 BDA 将路由到哪种模态。下表列出了默认过程。

PNGs 并将语义分类器 JPEGs 列为默认行为。这意味着 BDA 将使用内部模型，查看指标来确定提交的文件是图像还是文档，并自动执行路由。


| 文件类型 | 默认路由行为 | 
| --- | --- | 
|  PNG  |  语义分类器；图像或文档  | 
|  JPEG  |  语义分类器；图像或文档  | 
|  PDF、TIFF  |  文档  | 
|  MP4，MOV  |  视频  | 
|  AMR、FLAC、M4A、、OGG、WEBM MP3、WAV  |  音频  | 

## InvokeDataAutomation API 的标准路由
<a name="bda-standard-routing-sync"></a>

[InvokeDataAutomation](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_data-automation-runtime_InvokeDataAutomation.html)API 还将使用内部模型查看提交的 PNG 或 JPEG 文件是图像还是文档的指标，并自动执行路由。下表列出了默认过程。

PNGs 并将语义分类器 JPEGs 列为默认行为。这意味着 BDA 将使用内部模型，查看指标来确定提交的文件是图像还是文档，并自动执行路由。PDF 和 TIFF 文件将路由到 “文档” 模式进行处理。 InvokeDataAutomation API 目前不支持音频和视频文件。


| 文件类型 | 默认路由行为 | 
| --- | --- | 
|  PNG  |  语义分类器；图像或文档  | 
|  JPEG  |  语义分类器；图像或文档  | 
|  PDF、TIFF  |  文档  | 