Watsonx 推理服务

编辑

创建推理端点以使用watsonxai服务执行推理任务。

您需要一个IBM Cloud® 数据库用于 Elasticsearch 部署才能使用watsonxai推理服务。您可以通过IBM 目录Cloud Databases 命令行界面插件Cloud Databases APITerraform来配置一个。

请求

编辑

PUT /_inference/<task_type>/<inference_id>

路径参数

编辑
<inference_id>
(必填,字符串) 推理端点的唯一标识符。
<task_type>

(必填,字符串) 模型将执行的推理任务的类型。

可用的任务类型

  • text_embedding.

请求正文

编辑
service
(必填,字符串) 对指定任务类型支持的服务类型。在本例中为watsonxai
service_settings

(必填,对象) 用于安装推理模型的设置。

这些设置特定于watsonxai服务。

api_key

(必填,字符串) 您 Watsonx 帐户的有效 API 密钥。您可以在API 密钥页面找到您的 Watsonx API 密钥或创建一个新的密钥。

您只需要在创建推理模型时提供一次 API 密钥。获取推理 API不会检索您的 API 密钥。创建推理模型后,您无法更改关联的 API 密钥。如果您想使用不同的 API 密钥,请删除推理模型并使用相同的名称和更新的 API 密钥重新创建它。

api_version
(必填,字符串) 版本参数,采用YYYY-MM-DD格式的版本日期。有关活动版本数据参数,请参阅文档
model_id
(必填,字符串) 用于推理任务的模型名称。有关可用的文本嵌入模型列表,请参阅Watsonx 文档中的 IBM 嵌入模型部分。
url
(必填,字符串) 用于请求的 URL 端点。
project_id
(必填,字符串) 用于推理任务的项目名称。
rate_limit

(可选,对象) 默认情况下,watsonxai服务将每分钟允许的请求数设置为120。这有助于最大限度地减少 Watsonx 返回的速率限制错误。要修改此设置,请在您的服务设置中设置此对象的requests_per_minute设置。

"rate_limit": {
    "requests_per_minute": <<number_of_requests>>
}

Watsonx AI 服务示例

编辑

以下示例显示如何创建名为watsonx-embeddings的推理端点来执行text_embedding任务类型。

resp = client.inference.put(
    task_type="text_embedding",
    inference_id="watsonx-embeddings",
    inference_config={
        "service": "watsonxai",
        "service_settings": {
            "api_key": "<api_key>",
            "url": "<url>",
            "model_id": "ibm/slate-30m-english-rtrvr",
            "project_id": "<project_id>",
            "api_version": "2024-03-14"
        }
    },
)
print(resp)
const response = await client.inference.put({
  task_type: "text_embedding",
  inference_id: "watsonx-embeddings",
  inference_config: {
    service: "watsonxai",
    service_settings: {
      api_key: "<api_key>",
      url: "<url>",
      model_id: "ibm/slate-30m-english-rtrvr",
      project_id: "<project_id>",
      api_version: "2024-03-14",
    },
  },
});
console.log(response);
PUT _inference/text_embedding/watsonx-embeddings
{
    "service": "watsonxai",
    "service_settings": {
        "api_key": "<api_key>", 
        "url": "<url>", 
        "model_id": "ibm/slate-30m-english-rtrvr",
        "project_id": "<project_id>", 
        "api_version": "2024-03-14" 
    }
}

有效的 Watsonx API 密钥。您可以在您帐户的 API 密钥页面上找到它。

您在 Watsonx 上创建的推理端点 URL。

您的 IBM Cloud 项目的 ID。

有效的 API 版本参数。您可以在此处找到活动版本数据参数。