langchain_community.llms.bedrock
.BedrockBase¶
- class langchain_community.llms.bedrock.BedrockBase[source]¶
Bases:
BaseModel
,ABC
Bedrock模型的基础类。
通过解析和验证关键字参数传入的数据来创建一个新的模型。
如果输入数据无法解析成有效的模型,将引发ValidationError异常。
- 参数 config: Any = None¶
一个可选的botocore.config.Config实例,用于传递给客户端。
- 参数 credentials_profile_name: Optional[str] = None¶
在~/.aws/credentials或~/.aws/config文件中的配置文件名,该文件中指定了访问密钥或角色信息。如果未指定,将使用默认的凭证配置文件,或者在EC2实例上使用IMDS中的凭证。请参阅:[https://boto3.amazonaws.com/v1/documentation/api/latest/guide/credentials.html](https://boto3.amazonaws.com/v1/documentation/api/latest/guide/credentials.html)
- 参数 endpoint_url: Optional[str] = None¶
如果您不想默认使用us-east-1端点,则需要该项。
- 参数 guardrails: Optional[Mapping[str, Any]] = {'id': None, 'trace': False, 'version': None}}¶
一个用于配置Bedrock守卫线的可选字典。
此字段“guardrails”包含两个键:“id”和“version”,它们应该是字符串,但初始值设置为None。它用于确定是否启用了特定的守卫线以及是否正确设置了。
- 类型
Optional[Mapping[str, str]]:包含“id”和“version”键的映射。
示例:llm = Bedrock(model_id="<model_id>", client=<bedrock_client>,
model_kwargs={}, guardrails={
“id”: “<guardrail_id>”, “version”: “<guardrail_version>”})
要启用守卫线的跟踪,将“trace”键设置为True并向“generate”和“_call”方法的“run_manager”参数传递一个回调处理程序。
示例:llm = Bedrock(model_id="<model_id>", client=<bedrock_client>,
model_kwargs={}, guardrails={
“id”: “<guardrail_id>”, “version”: “<guardrail_version>”, “trace”: True},
callbacks=[BedrockAsyncCallbackHandler()])
有关回调处理程序的信息,请参阅:[https://python.langchain.ac.cn/docs/modules/callbacks/](https://python.langchain.ac.cn/docs/modules/callbacks/)
- class BedrockAsyncCallbackHandler(AsyncCallbackHandler)
- async def on_llm_error(
self, error: BaseException, **kwargs: Any,
- ) -> Any
reason = kwargs.get(“reason”) if reason == “GUARDRAIL_INTERVENED”
…处理守卫线干预的逻辑…
- 参数 model_id: str [必需]¶
要调用的模型的 ID,例如,amazon.titan-text-express-v1,这等价于 list-foundation-models api 中的 modelId 属性。对于自定义和预配的模型,需要 ARN 值。
- 参数 model_kwargs: 可选[Dict] = None¶
传递给模型的键值参数。
- 参数 provider: 可选[str] = None¶
模型提供商,例如,amazon, cohere, ai21 等。如果不提供,将从模型 ID 的开头上提取提供者,例如在 ‘amazon.titan-text-express-v1’ 中为 ‘amazon’。对于没有提供提供者的模型 ID,例如与此关联有 ARN 的自定义和预配模型,应提供此值。
- 参数 provider_stop_sequence_key_name_map: 映射[str, str] = {'ai21': 'stop_sequences', 'amazon': 'stopSequences', 'anthropic': 'stop_sequences', 'cohere': 'stop_sequences', 'mistral': 'stop'}¶
- 参数 region_name: 可选[str] = None¶
AWS 区域,例如 us-west-2。如果未在此提供,将回退到 AWS_DEFAULT_REGION 环境变量或 ~/.aws/config 中指定的区域。
- 参数 streaming: bool = False¶
是否流式传输结果。