Skip to content

How to invoke Bedrock Claude models in eu-west-1? Getting "Invocation with on-demand throughput isn't supported"

2

I'm trying to invoke anthropic.claude-sonnet-4-20250514-v1:0 from a Lambda function in eu-west-1 using the Python SDK:

bedrock = boto3.client('bedrock-runtime')
response = bedrock.invoke_model(
    modelId="anthropic.claude-sonnet-4-20250514-v1:0",
    contentType="application/json",
    accept="application/json",
    body=json.dumps({...})
)

I'm getting this error:

ValidationException: Invocation of model ID anthropic.claude-sonnet-4-20250514-v1:0 
with on-demand throughput isn't supported. Retry your request with the ID or ARN of 
an inference profile that contains this model.

My IAM policy allows bedrock:InvokeModel on arn:aws:bedrock:*::foundation-model/anthropic.*. What am I missing?

  • Vs 3.4 change to correct version it’ll probably not be confused browser search engines are not all equipped for more than simple letter number recognition to handle speed difference

2 Answers
3

In certain regions (including eu-west-1), newer Bedrock models cannot be invoked directly by model ID. You must use an inference profile instead.

Step 1: Find the available inference profile

aws bedrock list-inference-profiles --region eu-west-1 \
  --query "inferenceProfileSummaries[?contains(inferenceProfileName, 'Sonnet')].[inferenceProfileId,inferenceProfileName]" \
  --output table

This will show profiles like:

  • eu.anthropic.claude-sonnet-4-20250514-v1:0 — EU regional profile
  • global.anthropic.claude-sonnet-4-20250514-v1:0 — Global cross-region profile

Step 2: Use the inference profile ID instead of the model ID

response = bedrock.invoke_model(
    modelId="eu.anthropic.claude-sonnet-4-20250514-v1:0",  # inference profile, not model ID
    contentType="application/json",
    accept="application/json",
    body=json.dumps({...})
)

Step 3: Update your IAM policy

The inference profile has a different ARN format than foundation models:

{
  "Effect": "Allow",
  "Action": "bedrock:InvokeModel",
  "Resource": [
    "arn:aws:bedrock:*::foundation-model/anthropic.*",
    "arn:aws:bedrock:eu-west-1:ACCOUNT_ID:inference-profile/eu.anthropic.*"
  ]
}

Note the inference profile ARN includes your account ID and region, unlike foundation model ARNs.

Why this happens

AWS uses inference profiles to manage regional routing and capacity for newer models. The EU profile (eu.) routes requests to EU-based infrastructure, while the global profile (global.) can route cross-region. The direct model ID only works in regions where on-demand throughput is explicitly supported for that model.

References

AWS
SUPPORT ENGINEER
answered 17 days ago
EXPERT
reviewed 16 days ago
1
Accepted Answer

The error you're encountering indicates that the specific Claude model you're trying to use requires an inference profile rather than direct model invocation. This is particularly relevant for newer Claude models that use cross-Region inference capabilities.

To resolve this issue, you need to use an inference profile ID instead of the direct model ID. Based on your region (eu-west-1), you should use a geographic cross-Region inference profile or a global inference profile.

Here's how to update your code:

import boto3
import json

bedrock = boto3.client('bedrock-runtime', region_name='eu-west-1')

# Use an inference profile ID instead of the direct model ID
model_id = "eu.anthropic.claude-sonnet-4-20250514-v1:0"  # Geographic profile
# OR use global profile: "global.anthropic.claude-sonnet-4-20250514-v1:0"

response = bedrock.invoke_model(
modelId=model_id,
contentType="application/json",
accept="application/json",
body=json.dumps({...})
)

The key change is replacing your model ID with an inference profile ID that starts with a geographic prefix (like eu.) or global. instead of just anthropic..

Additionally, you'll need to update your IAM policy to include permissions for cross-Region inference. Your policy should allow bedrock:InvokeModel on inference profile ARNs, not just foundation model ARNs. Make sure your IAM role or user has the necessary permissions to invoke Amazon Bedrock models using a cross-Region inference profile.

The inference profile automatically routes your requests to the optimal Region with available capacity, which helps with throughput and resilience while maintaining your data in compliant Regions when using geographic profiles.
Sources
Introducing Amazon Bedrock global cross-Region inference for Anthropic’s Claude models in the Middle East Regions (UAE and Bahrain) | Artificial Intelligence
Unlock global AI inference scalability using new global cross-Region inference on Amazon Bedrock with Anthropic’s Claude Sonnet 4.5 | Artificial Intelligence

answered 17 days ago
AWS
SUPPORT ENGINEER
reviewed 16 days ago
EXPERT
reviewed 17 days ago
EXPERT
reviewed 17 days 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.