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. After creating the inference model, you cannot change the associated API key. If you want to use a different API key, delete the inference model and recreate it with the same name and the updated 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

    • 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.