BedrockProvider

org.llm4s.llmconnect.provider.BedrockProvider

Registration for AWS Bedrock, through the Converse and ConverseStream APIs.

A section names the AWS region (required, never defaulted: a model is only available in some regions, and a silent default would send traffic to the wrong one). With no credentials it authenticates through the AWS default credential chain; it can instead name a profile, or set accessKeyId and secretAccessKey (plus sessionToken for temporary credentials). Bedrock has no single API key, so there is no llm4s.credentials.bedrock block.

claude-bedrock {
 provider = "bedrock"
 model    = "anthropic.claude-3-5-sonnet-20241022-v2:0"
 region   = ${?AWS_REGION}
}

baseUrl is an optional endpoint override (a VPC endpoint, or a test server).

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Self type

Members list

Value members

Concrete methods

Constructs the client for a ProviderConfig this provider produced.

Constructs the client for a ProviderConfig this provider produced.

config is whatever the caller passed, so implementations must check the type rather than cast — ProviderDescriptor.expectConfig does that and produces the standard mismatch error.

Attributes

def buildConfig(providerName: String, section: NamedProviderConfig)(using ContextWindowResolver): Result[ProviderConfig]

Turns a validated config section into the runtime ProviderConfig for this provider.

Turns a validated config section into the runtime ProviderConfig for this provider.

The section has already been checked against configSpec, so required fields are present and section.extras holds exactly the declared provider-specific keys that have a value (defaults applied, deprecated aliases resolved). A Left here means something configSpec cannot express (a malformed value, say).

Value parameters

providerName

the user's instance name (llm4s.providers.<name>), for error messages.

Attributes

Inherited methods

def aliases: Set[String]

Alternative spellings accepted in provider = "...", folded onto id.

Alternative spellings accepted in provider = "...", folded onto id.

For example Gemini accepts "google". Aliases are matched after the same trim/lowercase canonicalisation as id itself.

Attributes

Inherited from:
ProviderDescriptor

What this provider's client implements. Defaults to the full interface.

What this provider's client implements. Defaults to the full interface.

Attributes

Inherited from:
ProviderDescriptor

Live model discovery, when the provider's API offers it.

Live model discovery, when the provider's API offers it.

Attributes

Inherited from:
ProviderDescriptor

Concrete fields

Which config fields this provider requires, its default endpoint, and the provider-specific keys (ProviderConfigSpec.extras) its section accepts.

Which config fields this provider requires, its default endpoint, and the provider-specific keys (ProviderConfigSpec.extras) its section accepts.

Attributes

val id: ProviderId

Canonical id, e.g. ProviderId("openai"). Must be unique within a registry.

Canonical id, e.g. ProviderId("openai"). Must be unique within a registry.

Attributes