Skip to content

How to export an optimized BDA blueprint to another account without losing the optimization?

0

We are using Amazon Bedrock Data Automation (BDA) with custom blueprints and have run Blueprint Instruction Optimization using ground truth documents. The optimization improved our accuracy and we are happy with the results.

Now we need to move this optimized blueprint to different environments and/or other AWS accounts.

Our questions:

  1. Is there a way to export a fully optimized blueprint and import it while keeping the optimization intact?

  2. If I use GetBlueprint to download the schema and then use CreateBlueprint in another account, will the new blueprint have the same optimized accuracy? Or does the optimization get lost in the process?

  3. We know copy-blueprint-stage works within the same account (DEVELOPMENT to LIVE), but what is the recommended approach for moving optimized blueprints?

We are evaluating whether to use a centralized account for BDA or replicate blueprints per environment, and this answer will help us decide the best architecture.

Thank you.

asked 3 months ago84 views
2 Answers
1

Sorry for long message but your question has multiple parts and I will give a try answering each separately:

Blueprint optimization results are embedded directly into the blueprint's schema as refined natural language instructions, not stored as a separate artifact supporting doc. This means the optimized accuracy travels with the schema when you migrate it.

Export/Import: Preserve automation?

Yes, using GetBlueprintCreateBlueprint across accounts preserves the optimized instructions because the refined field descriptions are part of the schema payload itself supporting doc.

What is not transferred:

  • The ground truth sample assets used during optimization
  • Evaluation metrics (exact match rates, F1 scores) from the original optimization run

copy-blueprint-stage Scope

This command only works within the same account (DEVELOPMENT → LIVE) supporting doc. For cross-account movement, use the GetBlueprintCreateBlueprint pattern instead.

How I would make Cross-Account Pipeline

- Step 1: Export from source account
         aws bedrock-data-automation get-blueprint \
             --blueprint-arn "arn:aws:bedrock:<region>:<source_account_id>:blueprint/<id>" \
             --blueprint-stage "LIVE"

- Step 2: Create in target account using the extracted schema
        aws bedrock-data-automation create-blueprint \
            --blueprint-name "optimized-blueprint" \
            --type "DOCUMENT" \
            --blueprint-stage "DEVELOPMENT" \
            --schema '<schema JSON from GetBlueprint response>'

For ongoing management, use CreateBlueprintVersion to snapshot stable versions before promoting them supporting doc.

Centralized vs. Per-Environment

I would go with CI/CD-driven replication model:

  1. Maintain one blueprint in a central account
  2. Run optimization there with your ground truth assets up to 10 representative supporting document
  3. Extract the schema via GetBlueprint and store it in version control
  4. Use a pipeline (CodePipeline, GitHub Actions, etc.) to push the schema to target accounts via CreateBlueprint or UpdateBlueprint

This avoids schema drift while maintaining environment isolation. BDA's cross-region inference support means a centralized account can also serve multiple regions within a geography automatically supporting doc.

AWS
EXPERT
answered 3 months ago
0

Based on the available information about Amazon Bedrock Data Automation (BDA), there is currently no documented method to export an optimized blueprint to another AWS account while preserving the optimization results.

Here's what we know about blueprint management:

Within the Same Account: The copy-blueprint-stage operation allows you to copy a blueprint from one stage to another (such as DEVELOPMENT to LIVE) within the same account. This operation copies the entire blueprint configuration, including the optimizationSamples field, which suggests that optimization results are preserved during this internal copy process.

Cross-Account Limitations: There is no documented cross-account blueprint sharing or export/import functionality for BDA blueprints similar to what exists for other AWS services. If you use GetBlueprint to retrieve the schema and then CreateBlueprint in another account, you would only be copying the blueprint structure and configuration - not the optimization results that were generated from your ground truth documents and the optimization process.

The blueprint optimization process uses the InvokeBlueprintOptimizationAsync API with ground truth data to improve field instructions and inference accuracy. These optimization results appear to be tied to the specific blueprint instance in your account and are not simply part of the exportable schema.

Recommended Approach: Given these limitations, a centralized account architecture for BDA would likely be more practical if you want to maintain optimized blueprints. This would allow you to use the copy-blueprint-stage functionality to promote optimized blueprints from DEVELOPMENT to LIVE within that single account, ensuring optimization results are preserved.

If you need to replicate blueprints across accounts, you would need to re-run the optimization process in each account using your ground truth documents, which would require additional time and resources.

I recommend contacting AWS Support or your AWS account team to discuss your specific multi-account requirements, as they may have additional guidance or upcoming features that could address your use case.
Sources
Using the Bedrock Data Automation API - Amazon Bedrock
Blueprint Operations CLI - Amazon Bedrock

answered 3 months ago
AWS
EXPERT
reviewed 3 months ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.