Class ElasticsearchServiceSettings.Builder

All Implemented Interfaces:
WithJson<ElasticsearchServiceSettings.Builder>, ObjectBuilder<ElasticsearchServiceSettings>
Enclosing class:
ElasticsearchServiceSettings

public static class ElasticsearchServiceSettings.Builder extends WithJsonObjectBuilderBase<ElasticsearchServiceSettings.Builder> implements ObjectBuilder<ElasticsearchServiceSettings>
  • Constructor Details

    • Builder

      public Builder()
  • Method Details

    • adaptiveAllocations

      public final ElasticsearchServiceSettings.Builder adaptiveAllocations(@Nullable AdaptiveAllocations value)
      Adaptive allocations configuration details. If enabled 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 of max_number_of_allocations if it's set. When the load is low, a model allocation is automatically removed, respecting the value of min_number_of_allocations if it's set. If enabled is true, do not set the number of allocations manually.

      API name: adaptive_allocations

    • adaptiveAllocations

      Adaptive allocations configuration details. If enabled 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 of max_number_of_allocations if it's set. When the load is low, a model allocation is automatically removed, respecting the value of min_number_of_allocations if it's set. If enabled is true, do not set the number of allocations manually.

      API name: adaptive_allocations

    • deploymentId

      public final ElasticsearchServiceSettings.Builder deploymentId(@Nullable String value)
      The deployment identifier for a trained model deployment. When deployment_id is used the model_id is optional.

      API name: deployment_id

    • modelId

      public final ElasticsearchServiceSettings.Builder modelId(String value)
      Required - The name of the model to use for the inference task. It can be the ID of a built-in model (for example, .multilingual-e5-small for E5) or a text embedding model that was uploaded by using the Eland client.

      API name: model_id

    • numAllocations

      public final ElasticsearchServiceSettings.Builder numAllocations(@Nullable Integer value)
      The total number of allocations that are assigned to the model across machine learning nodes. Increasing this value generally increases the throughput. If adaptive allocations are enabled, do not set this value because it's automatically set.

      API name: num_allocations

    • numThreads

      public final ElasticsearchServiceSettings.Builder numThreads(int value)
      Required - The number of threads used by each model allocation during inference. This setting 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.

      API name: num_threads

    • self

      Specified by:
      self in class WithJsonObjectBuilderBase<ElasticsearchServiceSettings.Builder>
    • build

      Specified by:
      build in interface ObjectBuilder<ElasticsearchServiceSettings>
      Throws:
      NullPointerException - if some of the required fields are null.