A developer's guide to Bedrock's new Converse API
Learn how to send your first request to a generative AI model using Amazon Bedrock's Converse API and the AWS SDK for JavaScript.
- In Part 1: Getting Started (this post), you will learn how to send your first request.
- In Part 2: Conversational AI, I'll show you how to implement conversational turns.
- In Part 3: Customizing AI Behavior, we'll configure the model with a system prompt and additional inference parameters.
- An AWS account
- The AWS CLI installed and configured with your credentials
- The latest stable version of Node.js and npm installed
- Requested access to the model you want to use
1
npm install @aws-sdk/client-bedrock-runtime
1
2
3
4
import {
BedrockRuntimeClient,
ConverseCommand,
} from "@aws-sdk/client-bedrock-runtime";
BedrockRuntimeClient
, specifying the AWS region where the model is available:1
const client = new BedrockRuntimeClient({ region: "us-east-1" });
1
const modelId = "anthropic.claude-3-haiku-20240307-v1:0";
1
2
3
4
5
6
7
const userMessage = "What is 'rubber duck debugging'";
const conversation = [
{
role: "user",
content: [{ text: userMessage }],
},
];
ConverseCommand
:1
2
3
const response = await client.send(
new ConverseCommand({ modelId, messages: conversation }),
);
1
2
const responseText = response.output.message.content[0].text;
console.log(responseText);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import {
BedrockRuntimeClient,
ConverseCommand,
} from "@aws-sdk/client-bedrock-runtime";
const client = new BedrockRuntimeClient({ region: "us-east-1" });
const modelId = "anthropic.claude-3-haiku-20240307-v1:0";
const userMessage = "What is 'rubber duck debugging'";
const conversation = [
{
role: "user",
content: [{ text: userMessage }],
},
];
const response = await client.send(
new ConverseCommand({ modelId, messages: conversation }),
);
const responseText = response.output.message.content[0].text;
console.log(responseText);
- Save the code in a file named
bedrock_first_message.js
- In your terminal, navigate to the directory containing
bedrock_first_message.js
- Run the following command:
1
2
3
4
$ node bedrock_first_message.js
Rubber duck debugging is the process of explaining your code to
a rubber duck (or any inanimate object) to identify and fix bugs.
- Configured your AWS credentials
- Requested access to the model you are using
- Installed the required dependencies
- Experiment with different models and compare their responses. Here's the list of all models supporting the Converse API.
- Challenge yourself to rewrite this program in another language. Here are examples in Python, Java, C#, and more.
- Dive deeper into the Converse API in the Amazon Bedrock User Guide.
Any opinions in this post are those of the individual author and may not reflect the opinions of AWS.