View Source LangChain.Utils.BedrockConfig (LangChain v0.3.1)

Configuration for AWS Bedrock.

Examples

For applications hosted in AWS, ExAws caches temporary credentials (when running on AWS), so in the credentials function you can pull the current cached credentials from ExAws.

ChatAnthropic.new!(%{
  model: "anthropic.claude-3-5-sonnet-20241022-v2:0",
  bedrock: %{
    credentials: fn ->
      ExAws.Config.new(:s3)
      |> Map.take([:access_key_id, :secret_access_key])
      |> Map.to_list()
    end,
    region: "us-west-2"
  }
})

For applications hosted anywhere, you can configure the Bedrock settings into the LangChain config like this (recommended for config/runtime.exs):

config :langchain,
  aws_access_key_id: System.fetch_env!("AWS_ACCESS_KEY_ID"),
  aws_secret_access_key: System.fetch_env!("AWS_SECRET_ACCESS_KEY"),
  aws_region: System.get_env("AWS_REGION", "us-west-1")

Then, when you want to later use a Bedrock Anthropic model, this is will load it:

  ChatAnthropic.new!(%{
    model: "anthropic.claude-3-5-sonnet-20241022-v2:0",
    bedrock: BedrockConfig.from_application_env!()
  })

Summary

Functions

Loads the Bedrock config settings from the previously configured Application settings.

Types

@type t() :: %LangChain.Utils.BedrockConfig{
  anthropic_version: term(),
  credentials: term(),
  region: term()
}

Functions

Link to this function

changeset(bedrock, attrs)

View Source

Loads the Bedrock config settings from the previously configured Application settings.

config/runtime.exs:

config :langchain,
  aws_access_key_id: System.fetch_env!("AWS_ACCESS_KEY_ID"),
  aws_secret_access_key: System.fetch_env!("AWS_SECRET_ACCESS_KEY"),
  aws_region: System.get_env("AWS_REGION", "us-west-1")
Link to this function

url(bedrock_config, list)

View Source