本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用Amazon Bedrock数据自动化 CLI
Amazon Bedrock数据自动化 (BDA) 功能为处理数据提供了简化的 CLI 工作流程。对于所有模态,此工作流均包含三个主要步骤:创建项目、创建用于自定义输出的蓝图以及处理文档。本指南将引导您了解使用 BDA 的关键 CLI 命令。
创建您的第一个数据自动化项目
要开始使用 BDA,请先使用 create-data-automation-project 命令创建一个项目。
看看我们将要处理的这个护照样本:
创建项目时,您必须为要处理的文件类型定义配置设置。以下命令展示了创建图像处理项目的非常简单的工作示例:
aws bedrock-data-automation create-data-automation-project \ --project-name "ImageProcessingProject" \ --standard-output-configuration '{ "image": { "extraction": { "category": { "state": "ENABLED", "types": ["TEXT_DETECTION"] }, "boundingBox": { "state": "ENABLED" } }, "generativeField": { "state": "ENABLED" } } }'
该命令验证输入配置,然后创建具有唯一 ARN 的新项目。响应中将包括项目 ARN 和阶段:
{ "projectArn": "Amazon Resource Name (ARN)", "projectStage": "DEVELOPMENT", "status": "IN_PROGRESS" }
如果创建了没有参数的项目,则将应用默认设置。例如,在处理图像时,默认情况下将启用图像汇总和文本检测。
完整参数参考
下表显示 create-data-automation-project 命令的所有可用参数。
| 参数 | 必需 | 默认值 | Description |
|---|---|---|---|
--project-name |
是 | 不适用 | 数据自动化项目的名称 |
--project-type |
否 | 项目的类型定义了它可以与哪个运行时处理 API 一起使用。 ASYNC项目只能与 invoke-bedrock-data-automation-async API 一起使用,而SYNC项目只能与 invoke-bedrock-data-automation API 一起使用。 |
|
--project-stage |
否 | 实时 | 项目的阶段(DEVELOPMENT 或 LIVE) |
--standard-output-configuration |
是 | 不适用 | 用于标准输出处理的 JSON 配置 |
--custom-output-configuration |
否 | 不适用 | 用于自定义输出处理的 JSON 配置 |
--encryption-configuration |
否 | 不适用 | 项目的加密设置 |
--client-token |
否 | 自动生成 | 请求幂等性的唯一标识符 |
创建蓝图
创建项目后,您可以使用 create-blueprint 命令创建蓝图来定义数据处理的结构。
以下是非常简单的工作示例,用于创建专为处理护照而定制的蓝图:
aws bedrock-data-automation create-blueprint \ --blueprint-name "passport-blueprint" \ --type "IMAGE" \ --blueprint-stage "DEVELOPMENT" \ --schema '{ "class": "Passport", "description": "Blueprint for processing passport images", "properties": { "passport_number": { "type": "string", "inferenceType": "explicit", "instruction": "The passport identification number" }, "full_name": { "type": "string", "inferenceType": "explicit", "instruction": "The full name of the passport holder" } } }'
该命令创建具有指定架构的新蓝图。然后,您可以在处理文档时使用此蓝图,这样就能根据您定义的架构提取结构化数据。
使用蓝图
向项目添加蓝图
要向项目添加蓝图,请使用 update-data-automation-project 命令:
aws bedrock-data-automation update-data-automation-project \ --project-arn "Amazon Resource Name (ARN)" \ --standard-output-configuration '{ "image": { "extraction": { "category": { "state": "ENABLED", "types": ["TEXT_DETECTION"] }, "boundingBox": { "state": "ENABLED" } }, "generativeField": { "state": "ENABLED", "types": ["IMAGE_SUMMARY"] } } }' \ --custom-output-configuration '{ "blueprints": [ { "blueprintArn": "Amazon Resource Name (ARN)", "blueprintVersion": "1", "blueprintStage": "LIVE" } ] }'
验证蓝图集成
您可以使用 get-data-automation-project 命令验证蓝图集成:
aws bedrock-data-automation get-data-automation-project \ --project-arn "Amazon Resource Name (ARN)"
管理多个蓝图
使用 list-blueprints 命令查看您的所有蓝图:
aws bedrock-data-automation list-blueprints
处理文档
完成项目设置后,您可以使用 invoke-data-automation-async 命令处理文档:
aws bedrock-data-automation-runtime invoke-data-automation-async \ --input-configuration '{ "s3Uri": "s3://my-bda-documents/invoices/invoice-123.pdf" }' \ --output-configuration '{ "s3Uri": "s3://my-bda-documents/output/" }' \ --data-automation-configuration '{ "dataAutomationProjectArn": "Amazon Resource Name (ARN)", "stage": "LIVE" }' \ --data-automation-profile-arn "Amazon Resource Name (ARN)"
该命令会返回一个调用 ARN,供您用来查看处理的状态:
{ "invocationArn": "Amazon Resource Name (ARN)" }
查看处理状态
要使用 get-data-automation-status 命令查看您的处理作业的状态,请执行以下操作:
aws bedrock-data-automation-runtime get-data-automation-status \ --invocation-arn "Amazon Resource Name (ARN)"
该命令会返回正在处理的作业的当前状态:
{ "status": "COMPLETED", "creationTime": "2025-07-09T12:34:56.789Z", "lastModifiedTime": "2025-07-09T12:45:12.345Z", "outputLocation": "s3://my-bda-documents/output/efgh5678/" }
可能的状态值包括:
-
IN_PROGRESS:处理作业当前正在运行。 -
COMPLETED:处理作业已成功完成。 -
FAILED:处理作业已失败。查看响应以了解错误详细信息。 -
STOPPED:处理作业已手动停止。
检索结果
处理完成后,您可以列出 S3 存储桶中的输出文件:
aws s3 ls s3://my-bda-documents/output/efgh5678/
要将结果下载到本地计算机,请执行以下操作:
aws s3 cp s3://my-bda-documents/output/efgh5678/ ~/Downloads/bda-results/ --recursive
输出包括基于您的项目配置和所应用的任意蓝图的结构化数据。
同步处理图像
该命令会根据您的项目配置和您应用的所有蓝图返回结构化数据:
aws bedrock-data-automation-runtime invoke-data-automation \ --input-configuration '{ "s3Uri": "s3://my-bda-documents/invoices/advertisement_latest.jpeg" }' \ --data-automation-configuration '{ "dataAutomationProjectArn": "Amazon Resource Name (ARN)", "stage": "LIVE" }' \ --data-automation-profile-arn "Amazon Resource Name (ARN)"