Create an Azure OpenAI inference endpoint
- PUT /_inference/{task_type}/{azureopenai_inference_id}
Create an inference endpoint to perform an inference task with the azureopenai service.
The list of chat completion models that you can choose from in your Azure OpenAI deployment include:
The list of embeddings models that you can choose from in your deployment can be found in the Azure models documentation.
- Cluster privileges:
manage_inference
Path Parameters
-
task_typeAzureOpenAITaskTyperequired -
The type of the inference task that the model will perform. NOTE: The
chat_completiontask type only supports streaming and only through the _stream API. -
Values:
completionchat_completiontext_embedding -
azureopenai_inference_idstring Idrequired -
The unique identifier of the inference endpoint.
Query Parameters
-
timeoutstring Duration · default: 30s Specifies the amount of time to wait for the inference endpoint to be created.
Request
-
chunking_settingsInferenceChunkingSettings -
The chunking configuration object. Applies only to the
text_embeddingtask type. Not applicable to thecompletionandchat_completiontask types. - Reference
-
max_chunk_sizenumber · default: 250 -
The maximum size of a chunk in words. This value cannot be lower than
20(forsentencestrategy) or10(forwordstrategy). This value should not exceed the window size for the associated model. -
overlapnumber · default: 100 -
The number of overlapping words for chunks. It is applicable only to a
wordchunking strategy. This value cannot be higher than half themax_chunk_sizevalue. -
sentence_overlapnumber · default: 1 -
The number of overlapping sentences for chunks. It is applicable only for a
sentencechunking strategy. It can be either1or0. -
separator_groupstring -
Only applicable to the
recursivestrategy and required when using it.Sets a predefined list of separators in the saved chunking settings based on the selected text type. Values can be
markdownorplaintext.Using this parameter is an alternative to manually specifying a custom
separatorslist. -
separatorsstring -
Only applicable to the
recursivestrategy and required when using it.A list of strings used as possible split points when chunking text.
Each string can be a plain string or a regular expression (regex) pattern. The system tries each separator in order to split the text, starting from the first item in the list.
After splitting, it attempts to recombine smaller pieces into larger chunks that stay within the
max_chunk_sizelimit, to reduce the total number of chunks generated. -
serviceAzureOpenAIServiceTyperequired -
The type of service supported for the specified task type. In this case,
azureopenai. -
Values:
azureopenai -
service_settingsAzureOpenAIServiceSettingsrequired -
Settings used to install the inference model. These settings are specific to the
azureopenaiservice. -
api_keystring -
A valid API key for your Azure OpenAI account.
IMPORTANT: You must specify either
api_key,entra_id, orclient_secret. If you do not provide one or you provide more than one of them, you will receive an error when you try to create your endpoint. - External docs
-
api_versionstringrequired -
The Azure API version ID to use. It is recommended to use the latest supported non-preview version.
-
client_idstring -
For OAuth 2.0 authorization using the client credentials grant flow. The application ID that's assigned to your app.
IMPORTANT: To configure OAuth 2.0, you must specify
client_id,scopes,tenant_id, andclient_secrettogether. If one of the fields is missing, you will receive an error when you try to create your endpoint. - External docs
-
client_secretstring -
For OAuth 2.0 authorization using the client credentials grant flow. The application secret that you created in the Microsoft app registration portal for your app.
IMPORTANT: You must specify either
api_key,entra_id, orclient_secret. If you do not provide one or you provide more than one of them, you will receive an error when you try to create your endpoint.IMPORTANT: To configure OAuth 2.0, you must specify
client_id,scopes,tenant_id, andclient_secrettogether. If one of the fields is missing, you will receive an error when you try to create your endpoint. - External docs
-
deployment_idstringrequired -
The deployment name of your deployed models. Your Azure OpenAI deployments can be found though the Azure OpenAI Studio portal that is linked to your subscription.
- External docs
-
entra_idstring -
A valid Microsoft Entra token.
IMPORTANT: You must specify either
api_key,entra_id, orclient_secret. If you do not provide one or you provide more than one of them, you will receive an error when you try to create your endpoint. - External docs
-
rate_limitRateLimitSetting -
This setting helps to minimize the number of rate limit errors returned from Azure. The
azureopenaiservice sets a default number of requests allowed per minute depending on the task type. Fortext_embedding, it is set to1440. Forcompletionandchat_completion, it is set to120. - External docs
-
requests_per_minutenumber -
The number of requests allowed per minute. By default, the number of requests allowed per minute is set by each service as follows:
alibabacloud-ai-searchservice:1000amazonbedrockservice:240anthropicservice:50azureaistudioservice:240azureopenaiservice and task typetext_embedding:1440azureopenaiservice and task typescompletionorchat_completion:120cohereservice:10000contextualaiservice:1000elasticservice and task typechat_completion:240fireworksaiservice:6000googleaistudioservice:360googlevertexaiservice:30000hugging_faceservice:3000jinaaiservice:2000llamaservice:3000mistralservice:240openaiservice and task typetext_embedding:3000openaiservice and task typecompletion:500openshift_aiservice:3000voyageaiservice:2000watsonxaiservice:120
-
resource_namestringrequired -
The name of your Azure OpenAI resource. You can find this from the list of resources in the Azure Portal for your subscription.
- External docs
-
scopesstring -
For OAuth 2.0 authorization using the client credentials grant flow. The resource identifier (application ID URI) of the resource you want, suffixed with .default For example:
"scopes": [ "https://cognitiveservices.azure.com/.default" ]IMPORTANT: To configure OAuth 2.0, you must specify
client_id,scopes,tenant_id, andclient_secrettogether. If one of the fields is missing, you will receive an error when you try to create your endpoint. - External docs
-
tenant_idstring -
For OAuth 2.0 authorization using the client credentials grant flow. The directory tenant the application plans to operate against.
IMPORTANT: To configure OAuth 2.0, you must specify
client_id,scopes,tenant_id, andclient_secrettogether. If one of the fields is missing, you will receive an error when you try to create your endpoint. - External docs
-
task_settingsAzureOpenAITaskSettings -
Settings to configure the inference task. These settings are specific to the task type you specified.
Response
-
chunking_settingsInferenceChunkingSettings -
The chunking configuration object. Applies only to the
embedding,sparse_embeddingandtext_embeddingtask types. Not applicable to thererank,completion, orchat_completiontask types. -
max_chunk_sizenumber · default: 250 -
The maximum size of a chunk in words. This value cannot be lower than
20(forsentencestrategy) or10(forwordstrategy). This value should not exceed the window size for the associated model. -
overlapnumber · default: 100 -
The number of overlapping words for chunks. It is applicable only to a
wordchunking strategy. This value cannot be higher than half themax_chunk_sizevalue. -
sentence_overlapnumber · default: 1 -
The number of overlapping sentences for chunks. It is applicable only for a
sentencechunking strategy. It can be either1or0. -
separator_groupstring -
Only applicable to the
recursivestrategy and required when using it.Sets a predefined list of separators in the saved chunking settings based on the selected text type. Values can be
markdownorplaintext.Using this parameter is an alternative to manually specifying a custom
separatorslist. -
separatorsstring -
Only applicable to the
recursivestrategy and required when using it.A list of strings used as possible split points when chunking text.
Each string can be a plain string or a regular expression (regex) pattern. The system tries each separator in order to split the text, starting from the first item in the list.
After splitting, it attempts to recombine smaller pieces into larger chunks that stay within the
max_chunk_sizelimit, to reduce the total number of chunks generated. -
servicestringrequired -
The service type
-
service_settingsServiceSettingsrequired -
Settings specific to the service
-
task_settingsTaskSettings -
Task settings specific to the service and task type
-
inference_idstringrequired -
The inference Id
-
task_typeTaskTypeAzureOpenAIrequired -
The task type
-
Values:
text_embeddingcompletionchat_completion