Create an Contextual AI inference endpoint
- PUT /_inference/{task_type}/{contextualai_inference_id}
Create an inference endpoint to perform an inference task with the contexualai service.
To review the available rerank models, refer to https://docs.contextual.ai/api-reference/rerank/rerank#body-model.
- Cluster privileges:
manage_inference
Path Parameters
-
task_typeTaskTypeContextualAIrequired -
The type of the inference task that the model will perform.
-
Values:
rerank -
contextualai_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
-
serviceContextualAIServiceTyperequired -
The type of service supported for the specified task type. In this case,
contextualai. -
Values:
contextualai -
service_settingsContextualAIServiceSettingsrequired -
Settings used to install the inference model. These settings are specific to the
contextualaiservice. -
api_keystringrequired -
A valid API key for your Contexutual AI account.
IMPORTANT: You need to provide the API key only once, during the inference model creation. The get inference endpoint API does not retrieve your API key.
-
model_idstringrequired -
The name of the model to use for the inference task. Refer to the Contextual AI documentation for the list of available rerank models.
-
rate_limitRateLimitSetting -
This setting helps to minimize the number of rate limit errors returned from Contextual AI. The
contextualaiservice sets a default number of requests allowed per minute depending on the task type. Forrerank, it is set to1000. -
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
-
task_settingsContextualAITaskSettings -
Settings to configure the inference task. These settings are specific to the task type you specified.
-
instructionstring -
Instructions for the reranking model. Refer to https://docs.contextual.ai/api-reference/rerank/rerank#body-instruction Only for the
reranktask type. -
top_knumber -
The number of most relevant documents to return. If not specified, the reranking results of all documents will be returned. Only for the
reranktask type.
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