AWS Bedrock Object Structure
Integrating AWS Bedrock with your application allows you to seamlessly utilize multiple AI models hosted on AWS. This section details how to configure the AWS Bedrock endpoint for your needs.
Example Configuration
endpoints:
bedrock:
titleModel: 'anthropic.claude-3-haiku-20240307-v1:0'
streamRate: 35
availableRegions:
- 'us-east-1'
- 'us-west-2'
guardrailConfig:
guardrailIdentifier: 'your-guardrail-id'
guardrailVersion: '1'
trace: 'enabled'
streamProcessingMode: 'sync'Note: AWS Bedrock endpoint supports all Shared Endpoint Settings, including
streamRate,titleModel,titleMethod,titlePrompt,titlePromptTemplate, andtitleEndpoint. The settings shown below are specific to Bedrock or have Bedrock-specific defaults.
titleModel
Key:
| Key | Type | Description | Example |
|---|---|---|---|
| titleModel | String | Specifies the model to use for generating conversation titles. | Recommended: anthropic.claude-3-haiku-20240307-v1:0. Set to "current_model" to use the same model as the chat. |
Default: Not specified
Example:
titleModel: 'anthropic.claude-3-haiku-20240307-v1:0'streamRate
Key:
| Key | Type | Description | Example |
|---|---|---|---|
| streamRate | Number | Sets the rate of processing each new token in milliseconds. | This can help stabilize processing of concurrent requests and provide smoother frontend stream rendering. |
Default: Not specified
Example:
streamRate: 35availableRegions
Key:
| Key | Type | Description | Example |
|---|---|---|---|
| availableRegions | Array | Specifies the AWS regions you want to make available for Bedrock. | If provided, users will see a dropdown to select the region. If not selected, the default region is used. |
Default: Not specified
Example:
availableRegions:
- 'us-east-1'
- 'us-west-2'models
Key:
| Key | Type | Description | Example |
|---|---|---|---|
| models | Array of Strings | Specifies custom model IDs available for the Bedrock endpoint. | When provided, these models appear in the model selector for Bedrock. |
Default: Not specified (uses default Bedrock model list)
Example:
endpoints:
bedrock:
models:
- 'anthropic.claude-sonnet-4-20250514-v1:0'
- 'anthropic.claude-haiku-4-20250514-v1:0'
- 'us.anthropic.claude-sonnet-4-20250514-v1:0'inferenceProfiles
Key:
| Key | Type | Description | Example |
|---|---|---|---|
| inferenceProfiles | Object (Record) | Maps model IDs to inference profile ARNs for cross-region inference. Keys are model IDs and values are the inference profile ARN or an environment variable reference. | When a selected model matches a key, the corresponding ARN is used as the application inference profile. |
Default: Not specified
Example:
endpoints:
bedrock:
inferenceProfiles:
'us.anthropic.claude-sonnet-4-20250514-v1:0': '${BEDROCK_INFERENCE_PROFILE_CLAUDE_SONNET}'
'anthropic.claude-3-7-sonnet-20250219-v1:0': 'arn:aws:bedrock:us-west-2:123456789012:application-inference-profile/abc123'Notes:
- Inference profiles enable cross-region inference, allowing you to route requests to models in different AWS regions
- Values support environment variable interpolation with
${ENV_VAR}syntax - The model ID in the key must match the model selected by the user in the UI
- Use with the
modelsfield to make cross-region model IDs available in the model selector - For a complete guide on creating and managing inference profiles, see AWS Bedrock Inference Profiles
Combined Example:
endpoints:
bedrock:
models:
- 'us.anthropic.claude-sonnet-4-20250514-v1:0'
- 'us.anthropic.claude-haiku-4-20250514-v1:0'
inferenceProfiles:
'us.anthropic.claude-sonnet-4-20250514-v1:0': '${BEDROCK_CLAUDE_SONNET_PROFILE}'
'us.anthropic.claude-haiku-4-20250514-v1:0': '${BEDROCK_CLAUDE_HAIKU_PROFILE}'guardrailConfig
Key:
| Key | Type | Description | Example |
|---|---|---|---|
| guardrailConfig | Object | Configuration for AWS Bedrock Guardrails to filter and moderate model inputs and outputs. | Optional. When configured, all Bedrock requests will be validated against the specified guardrail. |
Sub-keys:
| Key | Type | Description | Example |
|---|---|---|---|
| guardrailIdentifier | String | The unique identifier of the guardrail to apply. | Required when using guardrails. |
| guardrailVersion | String | The version of the guardrail to use. | Required when using guardrails. |
| trace | String | Controls guardrail trace output for debugging. Options: "enabled", "enabled_full", or "disabled". | Optional. Default: "disabled" |
| streamProcessingMode | String | Controls guardrail stream processing mode. Options: "sync" or "async". | Optional. Default: "sync" |
Example:
endpoints:
bedrock:
guardrailConfig:
guardrailIdentifier: 'abc123xyz'
guardrailVersion: '1'
trace: 'enabled'
streamProcessingMode: 'sync'Notes:
- Guardrails help ensure responsible AI usage by filtering harmful content, PII, and other sensitive information
- The
guardrailIdentifiercan be found in the AWS Bedrock console under Guardrails - Set
traceto"enabled"or"enabled_full"during development to see which guardrail policies are triggered - Set
streamProcessingModeto"async"to stream responses faster (at the cost of guardrail possibly allowing inappropriate content through until its scan completes) - For production, set
traceto"disabled"to reduce response payload size
Notes
- AWS Bedrock authentication is configured through environment variables. You can use
BEDROCK_AWS_PROFILE, the AWS SDK default credential provider chain,BEDROCK_AWS_BEARER_TOKENfor Bedrock API keys, or Bedrock-specific static credentials. See the AWS Bedrock setup guide for details.
How is this guide?