Class AzureOpenAIServiceSettings.Builder

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

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

    • Builder

      public Builder()
  • Method Details

    • apiKey

      public final AzureOpenAIServiceSettings.Builder apiKey(@Nullable String value)
      A valid API key for your Azure OpenAI account.

      IMPORTANT: You must specify either api_key, entra_id, or client_secret. If you do not provide one or you provide more than one of them, you will receive an error when you try to create your endpoint.

      API name: api_key

    • apiVersion

      public final AzureOpenAIServiceSettings.Builder apiVersion(String value)
      Required - The Azure API version ID to use. It is recommended to use the latest supported non-preview version.

      API name: api_version

    • clientId

      public final AzureOpenAIServiceSettings.Builder clientId(@Nullable String value)
      For OAuth 2.0 authorization using the client credentials grant flow. The application ID that's assigned to your app.

      IMPORTANT: To configure OAuth 2.0, you must specify client_id, scopes, tenant_id, and client_secret together. If one of the fields is missing, you will receive an error when you try to create your endpoint.

      API name: client_id

    • clientSecret

      public final AzureOpenAIServiceSettings.Builder clientSecret(@Nullable String value)
      For OAuth 2.0 authorization using the client credentials grant flow. The application secret that you created in the Microsoft app registration portal for your app.

      IMPORTANT: You must specify either api_key, entra_id, or client_secret. If you do not provide one or you provide more than one of them, you will receive an error when you try to create your endpoint.

      IMPORTANT: To configure OAuth 2.0, you must specify client_id, scopes, tenant_id, and client_secret together. If one of the fields is missing, you will receive an error when you try to create your endpoint.

      API name: client_secret

    • deploymentId

      public final AzureOpenAIServiceSettings.Builder deploymentId(String value)
      Required - The deployment name of your deployed models. Your Azure OpenAI deployments can be found though the Azure OpenAI Studio portal that is linked to your subscription.

      API name: deployment_id

    • entraId

      public final AzureOpenAIServiceSettings.Builder entraId(@Nullable String value)
      A valid Microsoft Entra token.

      IMPORTANT: You must specify either api_key, entra_id, or client_secret. If you do not provide one or you provide more than one of them, you will receive an error when you try to create your endpoint.

      API name: entra_id

    • rateLimit

      public final AzureOpenAIServiceSettings.Builder rateLimit(@Nullable RateLimitSetting value)
      This setting helps to minimize the number of rate limit errors returned from Azure. The azureopenai service sets a default number of requests allowed per minute depending on the task type. For text_embedding, it is set to 1440. For completion and chat_completion, it is set to 120.

      API name: rate_limit

    • rateLimit

      This setting helps to minimize the number of rate limit errors returned from Azure. The azureopenai service sets a default number of requests allowed per minute depending on the task type. For text_embedding, it is set to 1440. For completion and chat_completion, it is set to 120.

      API name: rate_limit

    • resourceName

      public final AzureOpenAIServiceSettings.Builder resourceName(String value)
      Required - The name of your Azure OpenAI resource. You can find this from the list of resources in the Azure Portal for your subscription.

      API name: resource_name

    • scopes

      public final AzureOpenAIServiceSettings.Builder scopes(List<String> list)
      For OAuth 2.0 authorization using the client credentials grant flow. The resource identifier (application ID URI) of the resource you want, suffixed with .default For example:
       "scopes": [
         "https://cognitiveservices.azure.com/.default"
       ]
       
       

      IMPORTANT: To configure OAuth 2.0, you must specify client_id, scopes, tenant_id, and client_secret together. If one of the fields is missing, you will receive an error when you try to create your endpoint.

      API name: scopes

      Adds all elements of list to scopes.

    • scopes

      public final AzureOpenAIServiceSettings.Builder scopes(String value, String... values)
      For OAuth 2.0 authorization using the client credentials grant flow. The resource identifier (application ID URI) of the resource you want, suffixed with .default For example:
       "scopes": [
         "https://cognitiveservices.azure.com/.default"
       ]
       
       

      IMPORTANT: To configure OAuth 2.0, you must specify client_id, scopes, tenant_id, and client_secret together. If one of the fields is missing, you will receive an error when you try to create your endpoint.

      API name: scopes

      Adds one or more values to scopes.

    • tenantId

      public final AzureOpenAIServiceSettings.Builder tenantId(@Nullable String value)
      For OAuth 2.0 authorization using the client credentials grant flow. The directory tenant the application plans to operate against.

      IMPORTANT: To configure OAuth 2.0, you must specify client_id, scopes, tenant_id, and client_secret together. If one of the fields is missing, you will receive an error when you try to create your endpoint.

      API name: tenant_id

    • self

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

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