Skip to main content



You are currently on a page documenting the use of Amazon Bedrock models as text completion models. Many popular models available on Bedrock are chat completion models.

You may be looking for this page instead.

Amazon Bedrock is a fully managed service that makes Foundation Models (FMs) from leading AI startups and Amazon available via an API. You can choose from a wide range of FMs to find the model that is best suited for your use case.


You'll need to install a few official AWS packages as peer dependencies:

npm install @aws-crypto/sha256-js @aws-sdk/credential-provider-node @smithy/protocol-http @smithy/signature-v4 @smithy/eventstream-codec @smithy/util-utf8 @aws-sdk/types

You can also use Bedrock in web environments such as Edge functions or Cloudflare Workers by omitting the @aws-sdk/credential-provider-node dependency and using the web entrypoint:

npm install @aws-crypto/sha256-js @smithy/protocol-http @smithy/signature-v4 @smithy/eventstream-codec @smithy/util-utf8 @aws-sdk/types


npm install @langchain/community

Note that some models require specific prompting techniques. For example, Anthropic's Claude-v2 model will throw an error if the prompt does not start with Human: .

import { Bedrock } from "@langchain/community/llms/bedrock";
// Or, from web environments:
// import { Bedrock } from "@langchain/community/llms/bedrock/web";

// If no credentials are provided, the default credentials from
// @aws-sdk/credential-provider-node will be used.
const model = new Bedrock({
model: "ai21.j2-grande-instruct", // You can also do e.g. "anthropic.claude-v2"
region: "us-east-1",
// endpointUrl: "",
// credentials: {
// accessKeyId: process.env.BEDROCK_AWS_ACCESS_KEY_ID!,
// secretAccessKey: process.env.BEDROCK_AWS_SECRET_ACCESS_KEY!,
// },
// modelKwargs: {},

const res = await model.invoke("Tell me a joke");


Why was the math book unhappy?

Because it had too many problems!

API Reference:

  • Bedrock from @langchain/community/llms/bedrock

Was this page helpful?

You can also leave detailed feedback on GitHub.