Google Vertex AI 推理服务
编辑Google Vertex AI 推理服务
编辑创建一个推理端点,使用 googlevertexai
服务执行推理任务。
请求
编辑PUT /_inference/<task_type>/<inference_id>
路径参数
编辑-
<inference_id>
- (必填,字符串) 推理端点的唯一标识符。
-
<task_type>
-
(必填,字符串) 模型将执行的推理任务类型。
可用的任务类型
-
rerank (重新排序)
-
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
- (必填,字符串) 指定任务类型支持的服务类型。在本例中为
googlevertexai
。 -
service_settings
-
(必填,对象) 用于安装推理模型的设置。
这些设置特定于
googlevertexai
服务。-
service_account_json
- (必填,字符串) Google Vertex AI API 的有效 JSON 格式的服务帐户。
-
model_id
- (必填,字符串) 用于推理任务的模型名称。您可以在 文本嵌入 API 中找到支持的模型。
-
location
- (必填,字符串) 用于推理任务的区域名称。您可以在 Vertex AI 上的生成式 AI 区域 中找到支持的区域。
-
project_id
- (必填,字符串) 用于推理任务的项目名称。
-
rate_limit
-
(可选,对象) 默认情况下,
googlevertexai
服务将每分钟允许的请求数设置为30000
。这有助于最大限度地减少 Google Vertex AI 返回的速率限制错误。要修改此设置,请在您的服务设置中设置此对象的requests_per_minute
设置。"rate_limit": { "requests_per_minute": <<number_of_requests>> }
有关 Google Vertex AI 速率限制的更多信息,请参阅 Google Vertex AI 配额文档。
-
-
task_settings
-
(可选,对象) 配置推理任务的设置。这些设置特定于您指定的
<task_type>
。task_settings
用于rerank
任务类型-
top_n
- (可选,布尔值) 指定应返回的 top n 个文档的数量。
task_settings
用于text_embedding
任务类型-
auto_truncate
- (可选,布尔值) 指定 API 是否自动截断长于最大标记长度的输入。
-
Google Vertex AI 服务示例
编辑以下示例显示如何创建名为 google_vertex_ai_embeddings
的推理端点来执行 text_embedding
任务类型。
resp = client.inference.put( task_type="text_embedding", inference_id="google_vertex_ai_embeddings", inference_config={ "service": "googlevertexai", "service_settings": { "service_account_json": "<service_account_json>", "model_id": "<model_id>", "location": "<location>", "project_id": "<project_id>" } }, ) print(resp)
const response = await client.inference.put({ task_type: "text_embedding", inference_id: "google_vertex_ai_embeddings", inference_config: { service: "googlevertexai", service_settings: { service_account_json: "<service_account_json>", model_id: "<model_id>", location: "<location>", project_id: "<project_id>", }, }, }); console.log(response);
PUT _inference/text_embedding/google_vertex_ai_embeddings { "service": "googlevertexai", "service_settings": { "service_account_json": "<service_account_json>", "model_id": "<model_id>", "location": "<location>", "project_id": "<project_id>" } }
下一个示例显示如何创建名为 google_vertex_ai_rerank
的推理端点来执行 rerank
任务类型。
resp = client.inference.put( task_type="rerank", inference_id="google_vertex_ai_rerank", inference_config={ "service": "googlevertexai", "service_settings": { "service_account_json": "<service_account_json>", "project_id": "<project_id>" } }, ) print(resp)
const response = await client.inference.put({ task_type: "rerank", inference_id: "google_vertex_ai_rerank", inference_config: { service: "googlevertexai", service_settings: { service_account_json: "<service_account_json>", project_id: "<project_id>", }, }, }); console.log(response);
PUT _inference/rerank/google_vertex_ai_rerank { "service": "googlevertexai", "service_settings": { "service_account_json": "<service_account_json>", "project_id": "<project_id>" } }