Amazon Bedrock 推理服务
编辑Amazon Bedrock 推理服务
编辑创建一个推理端点,以使用 amazonbedrock
服务执行推理任务。
请求
编辑PUT /_inference/<task_type>/<inference_id>
路径参数
编辑-
<inference_id>
- (必需,字符串) 推理端点的唯一标识符。
-
<task_type>
-
(必需,字符串) 模型将执行的推理任务类型。
可用的任务类型
-
completion
, -
text_embedding
.
-
请求正文
编辑-
chunking_settings
-
(可选,对象) 分块配置对象。请参阅 配置分块 以了解有关分块的更多信息。
-
max_chunking_size
- (可选,整数) 指定分块的最大字数。默认为
250
。此值不能高于300
或低于20
(对于sentence
策略)或10
(对于word
策略)。 -
overlap
- (可选,整数) 仅用于
word
分块策略。指定分块的重叠字数。默认为100
。此值不能高于max_chunking_size
的一半。 -
sentence_overlap
- (可选,整数) 仅用于
sentence
分块策略。指定分块的重叠句子数。它可以是1
或0
。默认为1
。 -
strategy
- (可选,字符串) 指定分块策略。它可以是
sentence
或word
。
-
-
service
- (必需,字符串) 指定任务类型支持的服务类型。在这种情况下,为
amazonbedrock
。 -
service_settings
-
(必需,对象) 用于安装推理模型的设置。
这些设置特定于
amazonbedrock
服务。-
access_key
- (必需,字符串) 一个有效的 AWS 访问密钥,具有使用 Amazon Bedrock 和访问模型以进行推理请求的权限。
-
secret_key
- (必需,字符串) 一个有效的 AWS 秘密密钥,与
access_key
配对。要创建或管理访问密钥和秘密密钥,请参阅 AWS 文档中的 管理 IAM 用户的访问密钥。
-
您只需在创建推理模型时提供一次访问密钥和秘密密钥。获取推理 API 不会检索您的访问密钥或秘密密钥。创建推理模型后,您无法更改关联的密钥对。如果您想使用不同的访问密钥和秘密密钥对,请删除推理模型并使用相同的名称和更新的密钥重新创建它。
-
provider
-
(必需,字符串) 您部署的模型提供商。请注意,某些提供商可能仅支持某些任务类型。支持的提供商包括
-
amazontitan
- 可用于text_embedding
和completion
任务类型 -
anthropic
- 仅可用于completion
任务类型 -
ai21labs
- 仅可用于completion
任务类型 -
cohere
- 可用于text_embedding
和completion
任务类型 -
meta
- 仅可用于completion
任务类型 -
mistral
- 仅可用于completion
任务类型
-
-
model
- (必需,字符串) 基础模型的基础模型 ID 或自定义模型的 ARN。基础模型 ID 可以在 Amazon Bedrock 模型 ID 文档中找到。请注意,模型 ID 必须适用于所选的提供商,并且您的 IAM 用户必须有权访问该模型。
-
region
- (必需,字符串) 您的模型或 ARN 部署所在的区域。每个模型可用的区域列表可以在 AWS 区域的模型支持 文档中找到。
-
rate_limit
-
(可选,对象) 默认情况下,
amazonbedrock
服务将每分钟允许的请求数设置为240
。这有助于最大限度地减少从 Amazon Bedrock 返回的速率限制错误。要修改此设置,请在您的服务设置中设置此对象的requests_per_minute
设置。"rate_limit": { "requests_per_minute": <<number_of_requests>> }
-
task_settings
- (可选,对象) 用于配置推理任务的设置。这些设置特定于您指定的
<task_type>
。
completion
任务类型的task_settings
-
max_new_tokens
- (可选,整数) 设置要生成的输出令牌的最大数量。默认为 64。
-
temperature
- (可选,浮点数) 一个介于 0.0 和 1.0 之间的数字,用于控制结果的表观创造力。在温度 0.0 时,模型最具确定性,在温度 1.0 时,模型最具随机性。如果指定了
top_p
或top_k
,则不应使用。 -
top_p
- (可选,浮点数)
temperature
的替代方案。一个介于 0.0 到 1.0 之间的数字,用于消除低概率令牌。Top-p 使用核采样来选择最可能的令牌,这些令牌的似然之和不超过某个值,从而确保多样性和连贯性。如果指定了temperature
,则不应使用。 -
top_k
- (可选,浮点数) 仅适用于
anthropic
、cohere
和mistral
提供商。temperature
的替代方案。将样本限制为最有可能的 K 个词,从而平衡连贯性和可变性。如果指定了temperature
,则不应使用。
-
Amazon Bedrock 服务示例
编辑以下示例展示了如何创建一个名为 amazon_bedrock_embeddings
的推理端点,以执行 text_embedding
任务类型。
从 Amazon Bedrock 基础模型 中选择您有权访问的聊天完成和嵌入模型。
resp = client.inference.put( task_type="text_embedding", inference_id="amazon_bedrock_embeddings", inference_config={ "service": "amazonbedrock", "service_settings": { "access_key": "<aws_access_key>", "secret_key": "<aws_secret_key>", "region": "us-east-1", "provider": "amazontitan", "model": "amazon.titan-embed-text-v2:0" } }, ) print(resp)
const response = await client.inference.put({ task_type: "text_embedding", inference_id: "amazon_bedrock_embeddings", inference_config: { service: "amazonbedrock", service_settings: { access_key: "<aws_access_key>", secret_key: "<aws_secret_key>", region: "us-east-1", provider: "amazontitan", model: "amazon.titan-embed-text-v2:0", }, }, }); console.log(response);
PUT _inference/text_embedding/amazon_bedrock_embeddings { "service": "amazonbedrock", "service_settings": { "access_key": "<aws_access_key>", "secret_key": "<aws_secret_key>", "region": "us-east-1", "provider": "amazontitan", "model": "amazon.titan-embed-text-v2:0" } }
下一个示例展示了如何创建一个名为 amazon_bedrock_completion
的推理端点,以执行 completion
任务类型。
resp = client.inference.put( task_type="completion", inference_id="amazon_bedrock_completion", inference_config={ "service": "amazonbedrock", "service_settings": { "access_key": "<aws_access_key>", "secret_key": "<aws_secret_key>", "region": "us-east-1", "provider": "amazontitan", "model": "amazon.titan-text-premier-v1:0" } }, ) print(resp)
const response = await client.inference.put({ task_type: "completion", inference_id: "amazon_bedrock_completion", inference_config: { service: "amazonbedrock", service_settings: { access_key: "<aws_access_key>", secret_key: "<aws_secret_key>", region: "us-east-1", provider: "amazontitan", model: "amazon.titan-text-premier-v1:0", }, }, }); console.log(response);
PUT _inference/completion/amazon_bedrock_completion { "service": "amazonbedrock", "service_settings": { "access_key": "<aws_access_key>", "secret_key": "<aws_secret_key>", "region": "us-east-1", "provider": "amazontitan", "model": "amazon.titan-text-premier-v1:0" } }