跳到主要内容

Bedrock

注意

您目前正在浏览的页面是关于如何将 Amazon Bedrock 模型用作文本补全模型的文档。Bedrock 上提供的许多流行模型都是聊天补全模型

您可能正在寻找这个页面

Amazon Bedrock 是一项完全托管的服务,通过 API 提供来自领先 AI 初创公司和 Amazon 的基础模型 (FM)。您可以从各种 FM 中选择最适合您用例的模型。

这将帮助您开始使用 LangChain 的 Bedrock 补全模型 (LLM)。有关 Bedrock 功能和配置选项的详细文档,请参阅 API 参考

概述

集成详情

本地可序列化PY 支持包下载最新包
Bedrock@langchain/communityNPM - DownloadsNPM - Version

设置

要访问 Bedrock 模型,您需要创建一个 AWS 账户,获取 API 密钥,并安装 @langchain/community 集成,以及一些对等依赖项。

凭证

前往 aws.amazon.com 注册 AWS Bedrock 并生成 API 密钥。完成后,设置环境变量

export BEDROCK_AWS_REGION="your-region-url"
export BEDROCK_AWS_ACCESS_KEY_ID="your-access-key-id"
export BEDROCK_AWS_SECRET_ACCESS_KEY="your-secret-access-key"

如果您想获得模型调用的自动追踪,您还可以通过取消注释下方代码行来设置您的 LangSmith API 密钥

# export LANGSMITH_TRACING="true"
# export LANGSMITH_API_KEY="your-api-key"

安装

LangChain Bedrock 集成位于 @langchain/community 包中

提示

有关安装集成包的通用说明,请参阅此部分

yarn add @langchain/community @langchain/core

并安装对等依赖项

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

您还可以在 Web 环境(如 Edge 函数或 Cloudflare Workers)中使用 Bedrock,方法是省略 @aws-sdk/credential-provider-node 依赖项并使用 web 入口点

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

实例化

现在我们可以实例化我们的模型对象并生成聊天补全

import { Bedrock } from "@langchain/community/llms/bedrock";

const llm = new Bedrock({
model: "anthropic.claude-v2",
region: process.env.BEDROCK_AWS_REGION ?? "us-east-1",
// endpointUrl: "custom.amazonaws.com",
credentials: {
accessKeyId: process.env.BEDROCK_AWS_ACCESS_KEY_ID,
secretAccessKey: process.env.BEDROCK_AWS_SECRET_ACCESS_KEY,
},
temperature: 0,
maxTokens: undefined,
maxRetries: 2,
// other params...
});

调用

请注意,某些模型需要特定的提示技巧。例如,Anthropic 的 Claude-v2 模型如果提示不以 Human: 开头,则会抛出错误。

const inputText = "Human: Bedrock is an AI company that\nAssistant: ";

const completion = await llm.invoke(inputText);
completion;
" Here are a few key points about Bedrock AI:\n" +
"\n" +
"- Bedrock was founded in 2021 and is based in San Fran"... 116 more characters

链接

我们可以像这样使用提示模板链接我们的补全模型

import { PromptTemplate } from "@langchain/core/prompts";

const prompt = PromptTemplate.fromTemplate(
"Human: How to say {input} in {output_language}:\nAssistant:"
);

const chain = prompt.pipe(llm);
await chain.invoke({
output_language: "German",
input: "I love programming.",
});
' Here is how to say "I love programming" in German:\n' +
"\n" +
"Ich liebe das Programmieren."

API 参考

有关所有 Bedrock 功能和配置的详细文档,请访问 API 参考:https://api.js.langchain.com/classes/langchain_community_llms_bedrock.Bedrock.html


此页面对您有帮助吗?


您也可以留下详细的反馈 在 GitHub 上.