Skip to content

BedrockModelConfig

Defined in: src/models/bedrock.ts:264

Configuration interface for AWS Bedrock model provider.

Extends BaseModelConfig with Bedrock-specific configuration options for model parameters, caching, and additional request/response fields.

const config: BedrockModelConfig = {
modelId: 'global.anthropic.claude-sonnet-4-6',
maxTokens: 1024,
temperature: 0.7,
cacheConfig: { strategy: 'auto' }
}
maxTokens?: number;

Defined in: src/models/bedrock.ts:270

Maximum number of tokens to generate in the response.

https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_InferenceConfiguration.html

BaseModelConfig.maxTokens


temperature?: number;

Defined in: src/models/bedrock.ts:277

Controls randomness in generation.

https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_InferenceConfiguration.html

BaseModelConfig.temperature


topP?: number;

Defined in: src/models/bedrock.ts:284

Controls diversity via nucleus sampling.

https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_InferenceConfiguration.html

BaseModelConfig.topP


stopSequences?: string[];

Defined in: src/models/bedrock.ts:289

Array of sequences that will stop generation when encountered.


cacheConfig?: CacheConfig;

Defined in: src/models/bedrock.ts:296

Configuration for prompt caching.

https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-caching.html


additionalRequestFields?: JSONValue;

Defined in: src/models/bedrock.ts:301

Additional fields to include in the Bedrock request.


additionalResponseFieldPaths?: string[];

Defined in: src/models/bedrock.ts:306

Additional response field paths to extract from the Bedrock response.


additionalArgs?: JSONValue;

Defined in: src/models/bedrock.ts:312

Additional arguments to pass through to the Bedrock Converse API.

https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/bedrock-runtime/command/ConverseStreamCommand/


stream?: boolean;

Defined in: src/models/bedrock.ts:322

Whether or not to stream responses from the model.

This will use the ConverseStream API instead of the Converse API.


includeToolResultStatus?: boolean | "auto";

Defined in: src/models/bedrock.ts:330

Flag to include status field in tool results.

  • true: Always include status field
  • false: Never include status field
  • 'auto': Automatically determine based on model ID (default)

guardrailConfig?: BedrockGuardrailConfig;

Defined in: src/models/bedrock.ts:336

Guardrail configuration for content filtering and safety controls.

https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails.html


useNativeTokenCount?: boolean;

Defined in: src/models/bedrock.ts:347

Whether to use the native Bedrock CountTokens API.

When true, countTokens() calls the Bedrock CountTokens API for accurate counts. When false or not set (default), skips the API call and uses the character-based heuristic estimator.

false

strictTools?: boolean;

Defined in: src/models/bedrock.ts:365

Constrain the model to emit tool names and inputs that conform to each tool’s schema.

When true, every tool is sent with strict: true and a copy of its inputSchema with additionalProperties: false added to each object type, so a free-form { type: 'object' } parameter becomes one the model can only fill with {}. Bedrock rejects schemas that use features outside its strict subset (recursive or external $ref, minimum/maximum/ multipleOf, minLength/maxLength, additionalProperties other than false) with a 400 at request time, and compiles each new schema on first use, which can take minutes. Incompatible with citations for Anthropic models.

false

modelId?: string;

Defined in: src/models/model.ts:189

The model identifier. This typically specifies which model to use from the provider’s catalog.

BaseModelConfig.modelId


contextWindowLimit?: number;

Defined in: src/models/model.ts:220

Maximum context window size in tokens for the model.

The same fact as modelInfo.limits.contextWindow; setting it here is shorthand for setting it through modelInfo, and it wins over the shared model info. When both are set, modelInfo wins. When not provided, vended providers still populate it from the shared model info for callers that read getConfig(); modelInfo is the resolved view to read.

BaseModelConfig.contextWindowLimit


modelInfo?: ModelInfo;

Defined in: src/models/model.ts:228

Overrides for what the SDK knows about the model. Fields set here win over the shared model info and the provider; capabilities.stateful changes how the agent loop sends history, so set it only for a provider that keeps state server-side. updateConfig({ modelInfo }) replaces the previous override entirely, it does not merge into it.

BaseModelConfig.modelInfo