AuthThe Elastic Stack includes Elastic's core products such as Elasticsearch, Kibana, Logstash, and Beats.AvailabilityGenerally available since 8.12This functionality is generally available and ready for production usage.Unless stated otherwise on the page, this functionality is available when your Elastic Stack is deployed on Elastic Cloud Hosted, Elastic Cloud Enterprise, Elastic Cloud on Kubernetes, and self-managed environments.This documentation corresponds to the latest patch available for each minor version. If you're not using the latest patch, check the release notes for changes.
Create an inference endpoint to perform an inference task with the hugging_face service.
Supported tasks include: text_embedding, completion, and chat_completion.
To configure the endpoint, first visit the Hugging Face Inference Endpoints page and create a new endpoint.
Select a model that supports the task you intend to use.
For Elastic's text_embedding task:
The selected model must support the Sentence Embeddings task. On the new endpoint creation page, select the Sentence Embeddings task under the Advanced Configuration section.
After the endpoint has initialized, copy the generated endpoint URL.
Recommended models for text_embedding task:
all-MiniLM-L6-v2
all-MiniLM-L12-v2
all-mpnet-base-v2
e5-base-v2
e5-small-v2
multilingual-e5-base
multilingual-e5-small
For Elastic's chat_completion and completion tasks:
The selected model must support the Text Generation task and expose OpenAI API. HuggingFace supports both serverless and dedicated endpoints for Text Generation. When creating dedicated endpoint select the Text Generation task.
After the endpoint is initialized (for dedicated) or ready (for serverless), ensure it supports the OpenAI API and includes /v1/chat/completions part in URL. Then, copy the full endpoint URL for use.
Recommended models for chat_completion and completion tasks:
Mistral-7B-Instruct-v0.2
QwQ-32B
Phi-3-mini-128k-instruct
For Elastic's rerank task:
The selected model must support the sentence-ranking task and expose OpenAI API.
HuggingFace supports only dedicated (not serverless) endpoints for Rerank so far.
After the endpoint is initialized, copy the full endpoint URL for use.
Tested models for rerank task:
The maximum size of a chunk in words.
This value cannot be higher than 300 or lower than 20 (for sentence strategy) or 10 (for word strategy).
overlapnumber · default: 100
The number of overlapping words for chunks.
It is applicable only to a word chunking strategy.
This value cannot be higher than half the max_chunk_size value.
sentence_overlapnumber · default: 1
The number of overlapping sentences for chunks.
It is applicable only for a sentence chunking strategy.
It can be either 1 or 0.
strategystring · default: sentence
The chunking strategy: sentence or word.
serviceenumrequired
The type of service supported for the specified task type. In this case, hugging_face.
Values:hugging_face
service_settingsobjectrequired
Settings used to install the inference model. These settings are specific to the hugging_face service.
api_keystringrequired
A valid access token for your HuggingFace account.
You can create or find your access tokens on the HuggingFace settings page.
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.
This setting helps to minimize the number of rate limit errors returned from Hugging Face.
By default, the hugging_face service sets the number of requests allowed per minute to 3000 for all supported tasks.
Hugging Face does not publish a universal rate limit — actual limits may vary.
It is recommended to adjust this value based on the capacity and limits of your specific deployment environment.
requests_per_minutenumber
The number of requests allowed per minute.
urlstringrequired
The URL endpoint to use for the requests.
For completion and chat_completion tasks, the deployed model must be compatible with the Hugging Face Chat Completion interface (see the linked external documentation for details). The endpoint URL for the request must include /v1/chat/completions.
If the model supports the OpenAI Chat Completion schema, a toggle should appear in the interface. Enabling this toggle doesn't change any model behavior, it reveals the full endpoint URL needed (which should include /v1/chat/completions) when configuring the inference endpoint in Elasticsearch. If the model doesn't support this schema, the toggle may not be shown.
The name of the HuggingFace model to use for the inference task.
For completion and chat_completion tasks, this field is optional but may be required for certain models — particularly when using serverless inference endpoints.
For the text_embedding task, this field should not be included. Otherwise, the request will fail.
task_settingsobject
Settings to configure the inference task.
These settings are specific to the task type you specified.
return_documentsboolean
For a rerank task, return doc text within the results.
top_nnumber
For a rerank task, the number of most relevant documents to return.
It defaults to the number of the documents.
The maximum size of a chunk in words.
This value cannot be higher than 300 or lower than 20 (for sentence strategy) or 10 (for word strategy).
overlapnumber · default: 100
The number of overlapping words for chunks.
It is applicable only to a word chunking strategy.
This value cannot be higher than half the max_chunk_size value.
sentence_overlapnumber · default: 1
The number of overlapping sentences for chunks.
It is applicable only for a sentence chunking strategy.
It can be either 1 or 0.
strategystring · default: sentence
The chunking strategy: sentence or word.
servicestringrequired
The service type
service_settingsobjectrequired
Settings specific to the service
task_settingsobject
Task settings specific to the service and task type