BedrockBase#

class langchain_community.llms.bedrock.BedrockBase[来源]#

基础类:BaseModel, ABC

Bedrock 模型的基类。

通过解析和验证来自关键字参数的输入数据来创建一个新模型。

如果输入数据无法验证以形成有效模型,则引发 [ValidationError][pydantic_core.ValidationError]。

self 被显式地设为仅位置参数,以允许 self 作为字段名称。

param config: Any = None#

一个可选的botocore.config.Config实例,传递给客户端。

param credentials_profile_name: str | None = None#

配置文件在 ~/.aws/credentials 或 ~/.aws/config 文件中的名称,该文件指定了访问密钥或角色信息。 如果未指定,将使用默认的凭证配置文件,如果在 EC2 实例上,则使用来自 IMDS 的凭证。 参见:https://boto3.amazonaws.com/v1/documentation/api/latest/guide/credentials.html

param endpoint_url: str | None = None#

如果您不想默认使用 us-east-1 端点,则需要

param guardrails: Mapping[str, Any] | None = {'id': None, 'trace': False, 'version': None}#

一个可选的字典,用于配置Bedrock的防护栏。

此字段‘guardrails’包含两个键:‘id’和‘version’,它们应为字符串,但初始化为None。它用于确定是否启用了特定的防护措施并正确设置。

Type:

Optional[Mapping[str, str]]: 一个包含‘id’和‘version’键的映射。

示例: llm = Bedrock(model_id=””, client=,

model_kwargs={}, guardrails={

“id”: “”, “version”: “”})

要启用护栏的跟踪,请将‘trace’键设置为True,并将回调处理程序传递给‘generate’、‘_call’方法的‘run_manager’参数。

示例: llm = Bedrock(model_id=””, client=,

model_kwargs={}, guardrails={

“id”: “”, “version”: “”, “trace”: True},

回调=[BedrockAsyncCallbackHandler()])

[https://python.langchain.com/docs/modules/callbacks/] 了解更多关于回调处理程序的信息。

class BedrockAsyncCallbackHandler(AsyncCallbackHandler):
async def on_llm_error(

自身, 错误: 基础异常, **kwargs: 任意,

) -> Any:

reason = kwargs.get(“reason”) 如果 reason == “GUARDRAIL_INTERVENED”:

…处理护栏干预的逻辑…

param model_id: str [Required]#

要调用的模型的ID,例如,amazon.titan-text-express-v1,这相当于list-foundation-models API中的modelId属性。对于自定义和预置模型,需要提供ARN值。

param model_kwargs: Dict | None = None#

传递给模型的关键字参数。

param provider: str | None = None#

模型提供者,例如 amazon、cohere、ai21 等。当未提供时,提供者从 model_id 的第一部分提取,例如在 'amazon.titan-text-express-v1' 中的 'amazon'。对于不包含提供者的模型 ID,例如具有关联 ARN 的自定义和预配模型,应提供此值。

param provider_stop_sequence_key_name_map: Mapping[str, str] = {'ai21': 'stop_sequences', 'amazon': 'stopSequences', 'anthropic': 'stop_sequences', 'cohere': 'stop_sequences', 'mistral': 'stop'}#
param region_name: str | None = None#

aws 区域,例如 us-west-2。如果未在此处提供,则回退到 AWS_DEFAULT_REGION 环境变量或 ~/.aws/config 中指定的区域。

param streaming: bool = False#

是否流式传输结果。

classmethod validate_environment(values: Dict) Dict[source]#

验证AWS凭证和Python包是否存在于环境中。

Parameters:

(字典)

Return type:

字典