阿里云 AI 搜索推理服务

编辑

阿里云 AI 搜索推理服务

编辑

创建一个推理端点,以便使用 alibabacloud-ai-search 服务执行推理任务。

请求

编辑

PUT /_inference/<task_type>/<inference_id>

路径参数

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

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

可用的任务类型

  • completion,
  • rerank
  • sparse_embedding,
  • text_embedding.

请求体

编辑
chunking_settings

(可选,对象) 分块配置对象。有关分块的更多信息,请参阅 配置分块

max_chunking_size
(可选,整数) 指定块的最大字数。默认为 250。此值不能高于 300 或低于 20(对于 sentence 策略)或 10(对于 word 策略)。
overlap
(可选,整数) 仅用于 word 分块策略。指定块的重叠字数。默认为 100。此值不能高于 max_chunking_size 的一半。
sentence_overlap
(可选,整数) 仅用于 sentence 分块策略。指定块的重叠句子数。它可以是 10。默认为 1
strategy
(可选,字符串) 指定分块策略。它可以是 sentenceword
service
(必需,字符串) 指定任务类型支持的服务类型。在此情况下,为 alibabacloud-ai-search
service_settings

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

这些设置特定于 alibabacloud-ai-search 服务。

api_key
(必需,字符串) 用于阿里云 AI 搜索 API 的有效 API 密钥。
service_id

(必需,字符串) 用于推理任务的模型服务名称。

completion 任务的可用 service_ids

  • ops-qwen-turbo
  • qwen-turbo
  • qwen-plus
  • qwen-max ÷ qwen-max-longcontext

有关支持的 completion service_ids,请参阅文档

rerank 任务的可用 service_id 为

  • ops-bge-reranker-larger

有关支持的 rerank service_id,请参阅文档

sparse_embedding 任务的可用 service_id

  • ops-text-sparse-embedding-001

有关支持的 sparse_embedding service_id,请参阅文档

text_embedding 任务的可用 service_ids

  • ops-text-embedding-001
  • ops-text-embedding-zh-001
  • ops-text-embedding-en-001
  • ops-text-embedding-002

有关支持的 text_embedding service_ids,请参阅文档

host
(必需,字符串) 用于推理任务的主机地址名称。您可以在文档的API 密钥部分找到主机地址。
workspace
(必需,字符串) 用于推理任务的工作空间名称。
rate_limit

(可选,对象) 默认情况下,alibabacloud-ai-search 服务将每分钟允许的请求数设置为 1000。这有助于最大限度地减少从阿里云 AI 搜索返回的速率限制错误数量。要修改此值,请在您的服务设置中设置此对象的 requests_per_minute 设置

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

(可选,对象) 用于配置推理任务的设置。这些设置特定于您指定的 <task_type>

text_embedding 任务类型的 task_settings
input_type

(可选,字符串) 指定传递给模型的输入类型。有效值为

  • ingest:用于将文档嵌入存储在向量数据库中。
  • search:用于存储针对向量数据库运行的搜索查询的嵌入,以查找相关文档。
sparse_embedding 任务类型的 task_settings
input_type

(可选,字符串) 指定传递给模型的输入类型。有效值为

  • ingest:用于将文档嵌入存储在向量数据库中。
  • search:用于存储针对向量数据库运行的搜索查询的嵌入,以查找相关文档。
return_token
(可选,布尔值) 如果为 true,则令牌名称将返回在响应中。默认为 false,这意味着响应中只会返回令牌 ID。

阿里云 AI 搜索服务示例

编辑

以下示例演示如何创建名为 alibabacloud_ai_search_completion 的推理端点以执行 completion 任务类型。

resp = client.inference.put(
    task_type="completion",
    inference_id="alibabacloud_ai_search_completion",
    inference_config={
        "service": "alibabacloud-ai-search",
        "service_settings": {
            "host": "default-j01.platform-cn-shanghai.opensearch.aliyuncs.com",
            "api_key": "{{API_KEY}}",
            "service_id": "ops-qwen-turbo",
            "workspace": "default"
        }
    },
)
print(resp)
const response = await client.inference.put({
  task_type: "completion",
  inference_id: "alibabacloud_ai_search_completion",
  inference_config: {
    service: "alibabacloud-ai-search",
    service_settings: {
      host: "default-j01.platform-cn-shanghai.opensearch.aliyuncs.com",
      api_key: "{{API_KEY}}",
      service_id: "ops-qwen-turbo",
      workspace: "default",
    },
  },
});
console.log(response);
PUT _inference/completion/alibabacloud_ai_search_completion
{
    "service": "alibabacloud-ai-search",
    "service_settings": {
        "host" : "default-j01.platform-cn-shanghai.opensearch.aliyuncs.com",
        "api_key": "{{API_KEY}}",
        "service_id": "ops-qwen-turbo",
        "workspace" : "default"
    }
}

下一个示例演示如何创建名为 alibabacloud_ai_search_rerank 的推理端点以执行 rerank 任务类型。

resp = client.inference.put(
    task_type="rerank",
    inference_id="alibabacloud_ai_search_rerank",
    inference_config={
        "service": "alibabacloud-ai-search",
        "service_settings": {
            "api_key": "<api_key>",
            "service_id": "ops-bge-reranker-larger",
            "host": "default-j01.platform-cn-shanghai.opensearch.aliyuncs.com",
            "workspace": "default"
        }
    },
)
print(resp)
const response = await client.inference.put({
  task_type: "rerank",
  inference_id: "alibabacloud_ai_search_rerank",
  inference_config: {
    service: "alibabacloud-ai-search",
    service_settings: {
      api_key: "<api_key>",
      service_id: "ops-bge-reranker-larger",
      host: "default-j01.platform-cn-shanghai.opensearch.aliyuncs.com",
      workspace: "default",
    },
  },
});
console.log(response);
PUT _inference/rerank/alibabacloud_ai_search_rerank
{
    "service": "alibabacloud-ai-search",
    "service_settings": {
        "api_key": "<api_key>",
        "service_id": "ops-bge-reranker-larger",
        "host": "default-j01.platform-cn-shanghai.opensearch.aliyuncs.com",
        "workspace": "default"
    }
}

以下示例演示如何创建名为 alibabacloud_ai_search_sparse 的推理端点以执行 sparse_embedding 任务类型。

resp = client.inference.put(
    task_type="sparse_embedding",
    inference_id="alibabacloud_ai_search_sparse",
    inference_config={
        "service": "alibabacloud-ai-search",
        "service_settings": {
            "api_key": "<api_key>",
            "service_id": "ops-text-sparse-embedding-001",
            "host": "default-j01.platform-cn-shanghai.opensearch.aliyuncs.com",
            "workspace": "default"
        }
    },
)
print(resp)
const response = await client.inference.put({
  task_type: "sparse_embedding",
  inference_id: "alibabacloud_ai_search_sparse",
  inference_config: {
    service: "alibabacloud-ai-search",
    service_settings: {
      api_key: "<api_key>",
      service_id: "ops-text-sparse-embedding-001",
      host: "default-j01.platform-cn-shanghai.opensearch.aliyuncs.com",
      workspace: "default",
    },
  },
});
console.log(response);
PUT _inference/sparse_embedding/alibabacloud_ai_search_sparse
{
    "service": "alibabacloud-ai-search",
    "service_settings": {
        "api_key": "<api_key>",
        "service_id": "ops-text-sparse-embedding-001",
        "host": "default-j01.platform-cn-shanghai.opensearch.aliyuncs.com",
        "workspace": "default"
    }
}

以下示例演示如何创建名为 alibabacloud_ai_search_embeddings 的推理端点以执行 text_embedding 任务类型。

resp = client.inference.put(
    task_type="text_embedding",
    inference_id="alibabacloud_ai_search_embeddings",
    inference_config={
        "service": "alibabacloud-ai-search",
        "service_settings": {
            "api_key": "<api_key>",
            "service_id": "ops-text-embedding-001",
            "host": "default-j01.platform-cn-shanghai.opensearch.aliyuncs.com",
            "workspace": "default"
        }
    },
)
print(resp)
const response = await client.inference.put({
  task_type: "text_embedding",
  inference_id: "alibabacloud_ai_search_embeddings",
  inference_config: {
    service: "alibabacloud-ai-search",
    service_settings: {
      api_key: "<api_key>",
      service_id: "ops-text-embedding-001",
      host: "default-j01.platform-cn-shanghai.opensearch.aliyuncs.com",
      workspace: "default",
    },
  },
});
console.log(response);
PUT _inference/text_embedding/alibabacloud_ai_search_embeddings
{
    "service": "alibabacloud-ai-search",
    "service_settings": {
        "api_key": "<api_key>",
        "service_id": "ops-text-embedding-001",
        "host": "default-j01.platform-cn-shanghai.opensearch.aliyuncs.com",
        "workspace": "default"
    }
}