Class ElserServiceSettings.Builder
java.lang.Object
co.elastic.clients.util.ObjectBuilderBase
co.elastic.clients.util.WithJsonObjectBuilderBase<ElserServiceSettings.Builder>
co.elastic.clients.elasticsearch.inference.ElserServiceSettings.Builder
- All Implemented Interfaces:
WithJson<ElserServiceSettings.Builder>
,ObjectBuilder<ElserServiceSettings>
- Enclosing class:
- ElserServiceSettings
public static class ElserServiceSettings.Builder
extends WithJsonObjectBuilderBase<ElserServiceSettings.Builder>
implements ObjectBuilder<ElserServiceSettings>
Builder for
ElserServiceSettings
.-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionAdaptive allocations configuration details.Adaptive allocations configuration details.build()
Builds aElserServiceSettings
.numAllocations
(int value) Required - The total number of allocations this model is assigned across machine learning nodes.numThreads
(int value) Required - The number of threads used by each model allocation during inference.protected ElserServiceSettings.Builder
self()
Methods inherited from class co.elastic.clients.util.WithJsonObjectBuilderBase
withJson
Methods inherited from class co.elastic.clients.util.ObjectBuilderBase
_checkSingleUse, _listAdd, _listAddAll, _mapPut, _mapPutAll
-
Constructor Details
-
Builder
public Builder()
-
-
Method Details
-
adaptiveAllocations
Adaptive allocations configuration details. Ifenabled
is true, the number of allocations of the model is set based on the current load the process gets. When the load is high, a new model allocation is automatically created, respecting the value ofmax_number_of_allocations
if it's set. When the load is low, a model allocation is automatically removed, respecting the value ofmin_number_of_allocations
if it's set. Ifenabled
is true, do not set the number of allocations manually.API name:
adaptive_allocations
-
adaptiveAllocations
public final ElserServiceSettings.Builder adaptiveAllocations(Function<AdaptiveAllocations.Builder, ObjectBuilder<AdaptiveAllocations>> fn) Adaptive allocations configuration details. Ifenabled
is true, the number of allocations of the model is set based on the current load the process gets. When the load is high, a new model allocation is automatically created, respecting the value ofmax_number_of_allocations
if it's set. When the load is low, a model allocation is automatically removed, respecting the value ofmin_number_of_allocations
if it's set. Ifenabled
is true, do not set the number of allocations manually.API name:
adaptive_allocations
-
numAllocations
Required - The total number of allocations this model is assigned across machine learning nodes. Increasing this value generally increases the throughput. If adaptive allocations is enabled, do not set this value because it's automatically set.API name:
num_allocations
-
numThreads
Required - The number of threads used by each model allocation during inference. Increasing this value generally increases the speed per inference request. The inference process is a compute-bound process;threads_per_allocations
must not exceed the number of available allocated processors per node. The value must be a power of 2. The maximum value is 32.info If you want to optimize your ELSER endpoint for ingest, set the number of threads to 1. If you want to optimize your ELSER endpoint for search, set the number of threads to greater than 1.
API name:
num_threads
-
self
- Specified by:
self
in classWithJsonObjectBuilderBase<ElserServiceSettings.Builder>
-
build
Builds aElserServiceSettings
.- Specified by:
build
in interfaceObjectBuilder<ElserServiceSettings>
- Throws:
NullPointerException
- if some of the required fields are null.
-