阿里云 AI Search 推理服务

编辑

阿里云 AI Search 推理服务

编辑

创建推理端点以使用 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 Search API 的有效 API 密钥。
service_id

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

completion 任务的可用 service_id

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

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

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_id

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

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

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

(可选,对象) 默认情况下,alibabacloud-ai-search 服务将每分钟允许的请求数设置为 1000。这有助于最大程度地减少从阿里云 AI Search 返回的速率限制错误。要修改此设置,请在服务设置中设置此对象的 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 Search 服务示例

编辑

以下示例显示如何创建名为 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"
    }
}