Skip to content
39 changes: 39 additions & 0 deletions docs/reference/elasticsearch/mapping-reference/semantic-text.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,14 @@ the embedding generation, indexing, and query to use.
[quantized](/reference/elasticsearch/mapping-reference/dense-vector.md#dense-vector-quantization)
to `bbq_hnsw` automatically.

## Default and custom endpoints

You can use either preconfigured endpoints in your `semantic_text` fields which
are ideal for most use cases or create custom endpoints and reference them in
the field mappings.

### Using the default ELSER endpoint

If you use the preconfigured `.elser-2-elasticsearch` endpoint, you can set up
`semantic_text` with the following API request:

Expand All @@ -53,6 +61,8 @@ PUT my-index-000001
}
```

### Using a custom endpoint

To use a custom {{infer}} endpoint instead of the default
`.elser-2-elasticsearch`, you
must [Create {{infer}} API](https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-inference-put)
Expand Down Expand Up @@ -96,6 +106,35 @@ PUT my-index-000003
}
```

### Using ELSER on EIS

```{applies_to}
stack: preview 9.1
serverless: preview
```

If you use the preconfigured `.elser-2-elastic` endpoint that utilizes the ELSER model as a service through the Elastic Inference Service ([ELSER on EIS](docs-content://explore-analyze/elastic-inference/eis.md#elser-on-eis)), you can
set up `semantic_text` with the following API request:

```console
PUT my-index-000001
{
"mappings": {
"properties": {
"inference_field": {
"type": "semantic_text",
"inference_id": ".elser-2-elastic"
}
}
}
}
```

::::{note}
While we do encourage experimentation, we do not recommend implementing production use cases on top of this feature while it is in Technical Preview.

::::

## Parameters for `semantic_text` fields [semantic-text-params]

`inference_id`
Expand Down
Loading