OpenAI 推理服务
编辑OpenAI 推理服务
编辑创建推理端点以使用openai
服务执行推理任务。
请求
编辑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
- (必填,字符串) 指定任务类型支持的服务类型。在本例中为
openai
。 -
service_settings
-
(必填,对象) 用于安装推理模型的设置。
这些设置特定于
openai
服务。-
api_key
-
(必填,字符串) 您OpenAI账户的有效API密钥。您可以在OpenAI账户的API密钥部分找到您的OpenAI API密钥。
您只需要在创建推理模型时提供一次API密钥。获取推理API不会检索您的API密钥。创建推理模型后,您无法更改关联的API密钥。如果您想使用不同的API密钥,请删除推理模型并使用相同的名称和更新的API密钥重新创建它。
-
model_id
- (必填,字符串) 用于推理任务的模型名称。请参考OpenAI文档了解可用的文本嵌入模型列表。
-
organization_id
- (可选,字符串) 您组织的唯一标识符。您可以在OpenAI账户的设置 > 组织中找到组织ID。
-
url
- (可选,字符串) 用于请求的URL端点。可以更改为测试目的。默认为
https://api.openai.com/v1/embeddings
。 -
rate_limit
-
(可选,对象)
openai
服务根据任务类型设置允许每分钟请求的默认数量。对于text_embedding
,它设置为3000
。对于completion
,它设置为500
。这有助于最大限度地减少OpenAI返回的速率限制错误。要修改此设置,请在您的服务设置中设置此对象的requests_per_minute
设置。"rate_limit": { "requests_per_minute": <<number_of_requests>> }
有关OpenAI速率限制的更多信息,请参阅您的账户限制。
-
-
task_settings
-
(可选,对象) 用于配置推理任务的设置。这些设置特定于您指定的
<task_type>
。task_settings
对于completion
任务类型-
user
- (可选,字符串) 指定发出请求的用户,可用于滥用检测。
task_settings
对于text_embedding
任务类型-
user
- (可选,字符串) 指定发出请求的用户,可用于滥用检测。
-
OpenAI 服务示例
编辑以下示例显示如何创建名为openai-embeddings
的推理端点以执行text_embedding
任务类型。
resp = client.inference.put( task_type="text_embedding", inference_id="openai-embeddings", inference_config={ "service": "openai", "service_settings": { "api_key": "<api_key>", "model_id": "text-embedding-ada-002" } }, ) print(resp)
const response = await client.inference.put({ task_type: "text_embedding", inference_id: "openai-embeddings", inference_config: { service: "openai", service_settings: { api_key: "<api_key>", model_id: "text-embedding-ada-002", }, }, }); console.log(response);
PUT _inference/text_embedding/openai-embeddings { "service": "openai", "service_settings": { "api_key": "<api_key>", "model_id": "text-embedding-ada-002" } }
下一个示例显示如何创建名为openai-completion
的推理端点以执行completion
任务类型。
resp = client.inference.put( task_type="completion", inference_id="openai-completion", inference_config={ "service": "openai", "service_settings": { "api_key": "<api_key>", "model_id": "gpt-3.5-turbo" } }, ) print(resp)
const response = await client.inference.put({ task_type: "completion", inference_id: "openai-completion", inference_config: { service: "openai", service_settings: { api_key: "<api_key>", model_id: "gpt-3.5-turbo", }, }, }); console.log(response);
PUT _inference/completion/openai-completion { "service": "openai", "service_settings": { "api_key": "<api_key>", "model_id": "gpt-3.5-turbo" } }