跳到主要內容
Open In ColabOpen on GitHub

Bedrock

注意

您目前所在的頁面正在說明如何將 Amazon Bedrock 模型用作文字完成模型。Bedrock 上提供的許多熱門模型都是聊天完成模型

您可能正在尋找這個頁面

Amazon Bedrock 是一項全受管服務,透過單一 API 提供來自領先 AI 公司 (例如 AI21 LabsAnthropicCohereMetaStability AIAmazon) 的多種高效能基礎模型 (FM) 選擇,以及您建置生成式 AI 應用程式所需的廣泛功能,同時兼顧安全性、隱私權和負責任的 AI。使用 Amazon Bedrock,您可以輕鬆地針對您的用例試驗和評估頂級 FM,使用微調和 Retrieval Augmented Generation (RAG) 等技術,以您的資料私下自訂這些模型,並建置使用您的企業系統和資料來源執行任務的代理程式。由於 Amazon Bedrock 是無伺服器架構,因此您無需管理任何基礎架構,而且可以使用您已熟悉的 AWS 服務,安全地將生成式 AI 功能整合和部署到您的應用程式中。

%pip install --upgrade --quiet langchain_aws
from langchain_aws import BedrockLLM

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

自訂模型

custom_llm = BedrockLLM(
credentials_profile_name="bedrock-admin",
provider="cohere",
model_id="<Custom model ARN>", # ARN like 'arn:aws:bedrock:...' obtained via provisioning the custom model
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,以及微調模型。注意:Amazon Bedrock 的防護措施目前為預覽版,尚未全面上市。如果您想使用此功能,請透過您常用的 AWS Support 管道聯絡我們。在本節中,我們將設定具有特定防護措施的 Bedrock 語言模型,其中包括追蹤功能。

from typing import Any

from langchain_core.callbacks import AsyncCallbackHandler


class BedrockAsyncCallbackHandler(AsyncCallbackHandler):
# Async callback handler that can be used to handle callbacks from langchain.

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


# Guardrails for Amazon Bedrock with trace
llm = BedrockLLM(
credentials_profile_name="bedrock-admin",
model_id="<Model_ID>",
model_kwargs={},
guardrails={"id": "<Guardrail_ID>", "version": "<Version>", "trace": True},
callbacks=[BedrockAsyncCallbackHandler()],
)

此頁面是否對您有幫助?