Class OpenAIServiceSettings.Builder

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

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

    • Builder

      public Builder()
  • Method Details

    • apiKey

      public final OpenAIServiceSettings.Builder apiKey(String value)
      Required - A valid API key of your OpenAI account. You can find your OpenAI API keys in your OpenAI account under the API keys section.

      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.

      API name: api_key

    • dimensions

      public final OpenAIServiceSettings.Builder dimensions(@Nullable Integer value)
      The number of dimensions the resulting output embeddings should have. It is supported only in text-embedding-3 and later models. If it is not set, the OpenAI defined default for the model is used.

      API name: dimensions

    • modelId

      public final OpenAIServiceSettings.Builder modelId(String value)
      Required - The name of the model to use for the inference task. Refer to the OpenAI documentation for the list of available text embedding models.

      API name: model_id

    • organizationId

      public final OpenAIServiceSettings.Builder organizationId(@Nullable String value)
      The unique identifier for your organization. You can find the Organization ID in your OpenAI account under Settings > Organizations.

      API name: organization_id

    • rateLimit

      public final OpenAIServiceSettings.Builder rateLimit(@Nullable RateLimitSetting value)
      This setting helps to minimize the number of rate limit errors returned from OpenAI. The openai service sets a default number of requests allowed per minute depending on the task type. For text_embedding, it is set to 3000. For completion, it is set to 500.

      API name: rate_limit

    • rateLimit

      This setting helps to minimize the number of rate limit errors returned from OpenAI. The openai service sets a default number of requests allowed per minute depending on the task type. For text_embedding, it is set to 3000. For completion, it is set to 500.

      API name: rate_limit

    • similarity

      public final OpenAIServiceSettings.Builder similarity(@Nullable OpenAISimilarityType value)
      For a text_embedding task, the similarity measure. One of cosine, dot_product, l2_norm. Defaults to dot_product.

      API name: similarity

    • url

      public final OpenAIServiceSettings.Builder url(@Nullable String value)
      The URL endpoint to use for the requests. It can be changed for testing purposes.

      API name: url

    • self

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

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