When a specific model provider in AWS Bedrock (like AI21 Labs or Anthropic) fails while others work, the root cause is often tied to provider-specific configurations, service limitations, or temporary issues. Here’s a breakdown of common reasons:
1. Service Availability or Provider-Side Issues Model providers in Bedrock operate as independent services integrated into AWS. If one provider experiences an outage, maintenance, or API instability, requests to their models will fail while others remain unaffected. For example, Anthropic’s Claude model might undergo unplanned downtime due to a backend update, while Amazon Titan continues functioning normally. AWS’s status page or the provider’s own status dashboard (if public) can confirm this. Additionally, providers may enforce rate limits or throttling specific to their models, causing errors if your application exceeds allocated quotas. For instance, AI21’s Jurassic-2 model might block requests after hitting a per-second transaction limit, while other models handle the load.
2. Input/Output Mismatches or Configuration Errors
Each model has unique requirements for input formatting, parameters, and output handling. A request that works for Amazon Titan might fail for Anthropic’s Claude due to differences in token limits, prompt structure, or supported parameters. For example, Claude requires prompts to use specific XML-like tags (e.g., <example>...</example>
), while other models accept plain text. Similarly, parameters like maxTokens
or temperature
might have stricter validation for certain providers. A typo in the model ID (e.g., anthropic.claude-v3
vs. anthropic.claude-v3-sonnet
) or using an unsupported region (Claude not being available in ap-southeast-2
) can also cause failures.
3. Permissions or Resource Constraints
AWS IAM policies for Bedrock are model-specific. If your IAM role lacks permissions for a particular provider’s model (e.g., missing bedrock:InvokeModel
for arn:aws:bedrock:us-east-1::model/anthropic.claude-v2
), requests to that model will fail with access-denied errors. Resource constraints like insufficient provisioned throughput for a specific model (via Bedrock’s Provisioned Throughput feature) or account-level service quotas (e.g., a cap on Claude invocations) can also block requests. These issues require auditing IAM policies, checking AWS Service Quotas, or adjusting provisioned capacity settings.
To troubleshoot, enable Bedrock’s CloudWatch logging to inspect error codes (e.g., ThrottlingException
, ValidationException
) and validate inputs, permissions, and quotas for the failing model. Cross-check the model’s documentation for region availability, input formatting rules, and parameter constraints.