Amazon Bedrock Converse 是一项完全托管的服务,可通过 API 访问来自领先 AI 初创公司和亚马逊的基础模型 (FM)。您可以从广泛的 FM 中进行选择,找到最适合您用例的模型。它为 Bedrock 模型提供了统一的对话界面。
这将帮助您开始使用 ChatBedrockConverse 聊天模型。有关所有 ChatBedrockConverse 功能和配置的详细文档,请前往 API 参考.
概述
集成详情
| 类 | 包 | 可序列化 | PY 支持 | 下载量 | 版本 |
|---|---|---|---|---|---|
ChatBedrockConverse | @langchain/aws | ✅ | ✅ | !NPM - 下载量 | !NPM - 版本 |
模型特性
请参阅下面表格标题中的链接,了解如何使用特定功能。
| 工具调用 | 结构化输出 | 图片输入 | 音频输入 | 视频输入 | Token 级流式处理 | Token 使用量 | 对数概率 |
|---|---|---|---|---|---|---|---|
| ✅ | ✅ | ✅ | ❌ | ❌ | ✅ | ✅ | ❌ |
设置
要访问 Bedrock 模型,您需要创建一个 AWS 账户,设置 Bedrock API 服务,获取访问密钥 ID 和密钥,并安装 @langchain/aws 集成包。
凭证
请访问 AWS 文档 注册 AWS 并设置您的凭证。您还需要为您的账户开启模型访问权限,可以通过 按照这些说明.
在环境中设置您的 Bedrock 凭证:
或者,设置 AWS_BEARER_TOKEN_BEDROCK 用于 API 密钥认证。请参阅 AWS Bedrock API 密钥文档.
如果您想获取模型调用的自动追踪,还可以设置您的 LangSmith API 密钥,方法是取消下方注释:
# export LANGSMITH_TRACING="true"
# export LANGSMITH_API_KEY="your-api-key"
安装
LangChain ChatBedrockConverse 集成位于 @langchain/aws package:
npm install @langchain/aws @langchain/core
yarn add @langchain/aws @langchain/core
pnpm add @langchain/aws @langchain/core
实例化
现在我们可以实例化模型对象并生成聊天补全。
有几种不同的方式可以与 AWS 进行身份验证——以下示例依赖于在您的环境变量中设置的访问密钥、秘密访问密钥和区域:
const llm = new ChatBedrockConverse({
model: "anthropic.claude-3-5-sonnet-20240620-v1:0",
region: process.env.BEDROCK_AWS_REGION,
credentials: {
accessKeyId: process.env.BEDROCK_AWS_ACCESS_KEY_ID!,
secretAccessKey: process.env.BEDROCK_AWS_SECRET_ACCESS_KEY!,
},
});
调用
const aiMsg = await llm.invoke([
[
"system",
"You are a helpful assistant that translates English to French. Translate the user sentence.",
],
["human", "I love programming."],
])
aiMsg
AIMessage {
"id": "f5dc5791-224e-4fe5-ba2e-4cc51d9e7795",
"content": "J'adore la programmation.",
"additional_kwargs": {},
"response_metadata": {
"$metadata": {
"httpStatusCode": 200,
"requestId": "f5dc5791-224e-4fe5-ba2e-4cc51d9e7795",
"attempts": 1,
"totalRetryDelay": 0
},
"metrics": {
"latencyMs": 584
},
"stopReason": "end_turn",
"usage": {
"inputTokens": 29,
"outputTokens": 11,
"totalTokens": 40
}
},
"tool_calls": [],
"invalid_tool_calls": [],
"usage_metadata": {
"input_tokens": 29,
"output_tokens": 11,
"total_tokens": 40
}
}
console.log(aiMsg.content)
J'adore la programmation.
工具调用
使用 Bedrock 模型的工具调用与其他 模型但请注意,并非所有 Bedrock 模型都支持工具调用。请参阅 AWS 模型文档 了解更多详情。
API 参考
有关所有 ChatBedrockConverse 功能和配置的详细文档,请访问 API 参考.