Skip to main content
您当前所在的页面记录了将 Amazon Bedrock 模型用作文本补全模型的用法。Bedrock 上提供的许多流行模型是 聊天补全模型您可能正在寻找 此页面
Amazon Bedrock 是一项完全托管的服务,提供来自 领先 AI 公司如 AI21 LabsAnthropicCohereMetaStability AIAmazon 的高性能基础模型(FMs)供您选择,并通过单一 API 提供服务,同时提供构建生成式 AI 应用所需的安全、隐私和负责任 AI 的广泛功能。使用 Amazon Bedrock, 您可以轻松针对您的用例对顶级 FMs 进行实验和评估,利用诸如 Fine-tuning 和 Retrieval Augmented Generation(RAG)的技术结合您的数据进行私有定制,并构建 能够使用企业系统和数据源执行任务的智能体(agents)。由于 Amazon Bedrock 采用无服务器架构,您无需管理任何基础设施,即可安全地集成和部署 使用您已熟悉的 AWS 服务将生成式 AI 功能到您的应用中。
pip install -qU langchain-aws
from langchain_aws import BedrockLLM

llm = BedrockLLM(
    credentials_profile_name="bedrock-admin", model_id="amazon.titan-text-express-v1"
)

自定义模型

custom_llm = BedrockLLM(
    credentials_profile_name="bedrock-admin",
    provider="cohere",
    model_id="<Custom model ARN>",  # 类似于 'arn:aws:bedrock:...' 的 ARN,通过配置自定义模型获取
    model_kwargs={"temperature": 1},
    streaming=True,
)

custom_llm.invoke(input="What is the recipe of mayonnaise?")

Amazon Bedrock 护栏

Amazon Bedrock 护栏 根据特定用例的策略评估用户输入和模型响应,无论底层模型如何,都能提供额外的安全保障层。护栏可应用于各类模型,包括 Anthropic Claude、Meta Llama 2、Cohere Command、AI21 Labs Jurassic 和 Amazon Titan Text,以及 Fine-tuning 模型。 在本节中,我们将设置一个带有特定护栏的 Bedrock 语言模型,该护栏包含追踪(tracing)功能。
from typing import Any

from langchain_core.callbacks import AsyncCallbackHandler


class BedrockAsyncCallbackHandler(AsyncCallbackHandler):
    # 异步回调处理器,可用于处理来自 langchain 的回调。

    async def on_llm_error(self, error: BaseException, **kwargs: Any) -> Any:
        reason = kwargs.get("reason")
        if reason == "GUARDRAIL_INTERVENED":
            print(f"Guardrails: {kwargs}")


# 带有追踪功能的 Amazon Bedrock 护栏
llm = BedrockLLM(
    credentials_profile_name="bedrock-admin",
    model_id="<Model_ID>",
    model_kwargs={},
    guardrails={"id": "<Guardrail_ID>", "version": "<Version>", "trace": True},
    callbacks=[BedrockAsyncCallbackHandler()],
)