interface BedrockChatFields {
    cache?: boolean | BaseCache<Generation[]>;
    callbackManager?: CallbackManager;
    callbacks?: Callbacks;
    configFilepath?: string;
    credentials?: CredentialType;
    durationSeconds: undefined | number;
    endpointHost?: string;
    endpointUrl?: string;
    fetchFn?: ((input: RequestInfo | URL, init?: RequestInit) => Promise<Response>);
    filepath?: string;
    guardrailConfig?: {
        streamProcessingMode: "SYNCHRONOUS" | "ASYNCHRONOUS";
        tagSuffix: string;
    };
    guardrailIdentifier?: string;
    guardrailVersion?: string;
    ignoreCache?: boolean;
    logger?: Logger;
    maxConcurrency?: number;
    maxRetries?: number;
    maxTokens?: number;
    metadata?: Record<string, unknown>;
    mfaCodeProvider?: ((mfaSerial: string) => Promise<string>);
    model?: string;
    modelKwargs?: Record<string, unknown>;
    onFailedAttempt?: FailedAttemptHandler;
    policy: undefined | string;
    policyArns: undefined | {
        arn?: string;
    }[];
    profile?: string;
    providerId: undefined | string;
    region?: string;
    roleArn: undefined | string;
    roleAssumer?: ((sourceCreds: AwsCredentialIdentity, params: AssumeRoleParams) => Promise<AwsCredentialIdentity>);
    roleAssumerWithWebIdentity?: ((params: AssumeRoleWithWebIdentityParams) => Promise<AwsCredentialIdentity>) & ((params: AssumeRoleWithWebIdentityParams) => Promise<AwsCredentialIdentity>);
    roleSessionName?: string;
    ssoClient?: SSOClient;
    stopSequences?: string[];
    streaming?: boolean;
    tags?: string[];
    temperature?: number;
    timeout?: number;
    trace?: "ENABLED" | "DISABLED";
    verbose?: boolean;
    webIdentityTokenFile?: string;
}

Hierarchy

  • Partial<BaseBedrockInput>
  • BaseChatModelParams
  • Partial<DefaultProviderInit>
    • BedrockChatFields

Properties

cache?: boolean | BaseCache<Generation[]>
callbackManager?: CallbackManager

Use callbacks instead

callbacks?: Callbacks
configFilepath?: string

The path at which to locate the ini config file. Defaults to the value of the AWS_CONFIG_FILE environment variable (if defined) or ~/.aws/config otherwise.

credentials?: CredentialType

AWS Credentials. If no credentials are provided, the default credentials from @aws-sdk/credential-provider-node will be used.

durationSeconds: undefined | number
endpointHost?: string

Override the default endpoint hostname.

endpointUrl?: string

Use endpointHost instead Override the default endpoint url.

fetchFn?: ((input: RequestInfo | URL, init?: RequestInit) => Promise<Response>)

A custom fetch function for low-level access to AWS API. Defaults to fetch().

Type declaration

    • (input, init?): Promise<Response>
    • Parameters

      • input: RequestInfo | URL
      • Optionalinit: RequestInit

      Returns Promise<Response>

filepath?: string

The path at which to locate the ini credentials file. Defaults to the value of the AWS_SHARED_CREDENTIALS_FILE environment variable (if defined) or ~/.aws/credentials otherwise.

guardrailConfig?: {
    streamProcessingMode: "SYNCHRONOUS" | "ASYNCHRONOUS";
    tagSuffix: string;
}

Required when Guardrail is in use.

guardrailIdentifier?: string

Identifier for the guardrail configuration.

guardrailVersion?: string

Version for the guardrail configuration.

ignoreCache?: boolean

Configuration files are normally cached after the first time they are loaded. When this property is set, the provider will always reload any configuration files loaded before.

logger?: Logger
maxConcurrency?: number

The maximum number of concurrent calls that can be made. Defaults to Infinity, which means no limit.

maxRetries?: number

The maximum number of retries that can be made for a single call, with an exponential backoff between each attempt. Defaults to 6.

maxTokens?: number

Max tokens.

metadata?: Record<string, unknown>
mfaCodeProvider?: ((mfaSerial: string) => Promise<string>)

A function that returns a promise fulfilled with an MFA token code for the provided MFA Serial code. If a profile requires an MFA code and mfaCodeProvider is not a valid function, the credential provider promise will be rejected.

Type declaration

    • (mfaSerial): Promise<string>
    • Parameters

      • mfaSerial: string

        The serial code of the MFA device specified.

      Returns Promise<string>

model?: string

Model to use. For example, "amazon.titan-tg1-large", this is equivalent to the modelId property in the list-foundation-models api.

modelKwargs?: Record<string, unknown>

Additional kwargs to pass to the model.

onFailedAttempt?: FailedAttemptHandler

Custom handler to handle failed attempts. Takes the originally thrown error object as input, and should itself throw an error if the input error is not retryable.

policy: undefined | string
policyArns: undefined | {
    arn?: string;
}[]
profile?: string

The configuration profile to use.

providerId: undefined | string
region?: string

The AWS region e.g. us-west-2. Fallback to AWS_DEFAULT_REGION env variable or region specified in ~/.aws/config in case it is not provided here.

roleArn: undefined | string
roleAssumer?: ((sourceCreds: AwsCredentialIdentity, params: AssumeRoleParams) => Promise<AwsCredentialIdentity>)

A function that assumes a role and returns a promise fulfilled with credentials for the assumed role.

Type declaration

    • (sourceCreds, params): Promise<AwsCredentialIdentity>
    • Parameters

      • sourceCreds: AwsCredentialIdentity

        The credentials with which to assume a role.

      • params: AssumeRoleParams

      Returns Promise<AwsCredentialIdentity>

roleAssumerWithWebIdentity?: ((params: AssumeRoleWithWebIdentityParams) => Promise<AwsCredentialIdentity>) & ((params: AssumeRoleWithWebIdentityParams) => Promise<AwsCredentialIdentity>)

A function that assumes a role with web identity and returns a promise fulfilled with credentials for the assumed role.

The credentials with which to assume a role.

roleSessionName?: string

The IAM session name used to distinguish sessions.

ssoClient?: SSOClient
stopSequences?: string[]

Optional additional stop sequences to pass to the model. Currently only supported for Anthropic and AI21.

Use .bind({ "stop": [...] }) instead

streaming?: boolean

Whether or not to stream responses

tags?: string[]
temperature?: number

Temperature.

timeout?: number

The connection timeout (in milliseconds)

trace?: "ENABLED" | "DISABLED"

Trace settings for the Bedrock Guardrails.

verbose?: boolean
webIdentityTokenFile?: string

File location of where the OIDC token is stored.