AWS Certified Generative AI Developer – Professional
Bedrock cross-Region and application inference profiles: AIP-C01
An inference profile defines a model and the Regions requests can go to. Cross-Region profiles spread requests across Regions in a geography such as EU, or worldwide with a global profile. Application inference profiles are profiles you create and tag so each application's Bedrock spend shows up in Cost Explorer.
Cross-Region inference
With a geographic profile (for example US or EU), Bedrock picks a commercial Region in that geography to process each request. With a global profile it can pick any supported commercial Region worldwide, at about 10% lower token prices.
Choose geographic when data must stay in a geography, global when it need not. There is no extra routing cost, and price is based on the source Region. CloudTrail logs the request in the source Region, with the processing Region in additionalEventData.inferenceRegion. Inference profiles don't support Provisioned Throughput.
Example: an EU bank hitting its TPM quota can switch the model ID to the EU cross-Region profile. The global profile would route outside the EU. Adding a cache checkpoint after a large repeated system prompt also helps, because cache reads don't count toward the TPM quota.
Application inference profiles
You create an application inference profile from a model, or from a cross-Region profile to keep multi-Region routing. Attach cost allocation tags, activate them in the Billing console, and call the profile ARN in place of the model ID with InvokeModel or Converse. Costs then appear in Cost Explorer and CUR by tag. Tags can take up to 24 hours to appear and are not retroactive.
Each profile is tied to one model, so you need a profile for every combination of model and team. Application inference profiles are not supported by the Responses and Chat Completions APIs.
Other attribution options
IAM principal attribution: for a shared role, pass session tags such as team when the role is assumed (the trust policy must allow sts:TagSession) and activate them as cost allocation tags. They reach Cost Explorer and CUR 2.0, but are not written to invocation logs.
Request metadata: key-value tags on each call, recorded with the request in model invocation logs. They do not appear in Cost Explorer or CUR.
Example: a gateway serving 15 teams that change weekly uses session tags for Cost Explorer and request metadata to find a request's team in the logs, without creating a profile per team.
Where the exam catches people
Believing the global profile is fine for EU-only processing: it routes worldwide. Use the EU geographic profile.
Believing request metadata shows up in Cost Explorer: it lands only in invocation logs.
Believing session tags appear in invocation logs: they reach billing data only. The logs record the caller's ARN.
Believing separate Regions per application is the way to split costs: application inference profiles with cost allocation tags do it in one account and Region.
Believing a cross-Region profile works with Provisioned Throughput: inference profiles don't support it.