View Source ExOpenAI.Components.CreateChatCompletionRequest (ex_openai.ex v1.8.0)

Schema representing a CreateChatCompletionRequest within the OpenAI API

Summary

Types

@type t() :: %ExOpenAI.Components.CreateChatCompletionRequest{
  audio:
    %{
      format: :pcm16 | :opus | :flac | :mp3 | :wav,
      voice:
        :verse | :shimmer | :sage | :echo | :coral | :ballad | :ash | :alloy
    }
    | nil,
  frequency_penalty: float() | nil,
  function_call:
    (ExOpenAI.Components.ChatCompletionFunctionCallOption.t() | :auto | :none)
    | nil,
  functions: [ExOpenAI.Components.ChatCompletionFunctions.t()] | nil,
  logit_bias: map() | nil,
  logprobs: boolean() | nil,
  max_completion_tokens: integer() | nil,
  max_tokens: integer() | nil,
  messages: [ExOpenAI.Components.ChatCompletionRequestMessage.t()],
  metadata: ExOpenAI.Components.Metadata.t() | nil,
  modalities: ExOpenAI.Components.ResponseModalities.t() | nil,
  model:
    (:"gpt-3.5-turbo-16k-0613"
     | :"gpt-3.5-turbo-0125"
     | :"gpt-3.5-turbo-1106"
     | :"gpt-3.5-turbo-0613"
     | :"gpt-3.5-turbo-0301"
     | :"gpt-3.5-turbo-16k"
     | :"gpt-3.5-turbo"
     | :"gpt-4-32k-0613"
     | :"gpt-4-32k-0314"
     | :"gpt-4-32k"
     | :"gpt-4-0613"
     | :"gpt-4-0314"
     | :"gpt-4"
     | :"gpt-4-vision-preview"
     | :"gpt-4-1106-preview"
     | :"gpt-4-turbo-preview"
     | :"gpt-4-0125-preview"
     | :"gpt-4-turbo-2024-04-09"
     | :"gpt-4-turbo"
     | :"gpt-4o-mini-2024-07-18"
     | :"gpt-4o-mini"
     | :"chatgpt-4o-latest"
     | :"gpt-4o-mini-audio-preview-2024-12-17"
     | :"gpt-4o-mini-audio-preview"
     | :"gpt-4o-audio-preview-2024-12-17"
     | :"gpt-4o-audio-preview-2024-10-01"
     | :"gpt-4o-audio-preview"
     | :"gpt-4o-2024-05-13"
     | :"gpt-4o-2024-08-06"
     | :"gpt-4o-2024-11-20"
     | :"gpt-4o"
     | :"gpt-4.5-preview-2025-02-27"
     | :"gpt-4.5-preview"
     | :"computer-use-preview-2025-03-11"
     | :"computer-use-preview-2025-02-04"
     | :"computer-use-preview"
     | :"o1-mini-2024-09-12"
     | :"o1-mini"
     | :"o1-preview-2024-09-12"
     | :"o1-preview"
     | :"o1-2024-12-17"
     | :o1
     | :"o3-mini-2025-01-31"
     | :"o3-mini")
    | String.t(),
  n: integer() | nil,
  parallel_tool_calls: ExOpenAI.Components.ParallelToolCalls.t() | nil,
  prediction: ExOpenAI.Components.PredictionContent.t() | nil,
  presence_penalty: float() | nil,
  reasoning_effort: ExOpenAI.Components.ReasoningEffort.t() | nil,
  response_format:
    (ExOpenAI.Components.ResponseFormatJsonObject.t()
     | ExOpenAI.Components.ResponseFormatJsonSchema.t()
     | ExOpenAI.Components.ResponseFormatText.t())
    | nil,
  seed: integer() | nil,
  service_tier: (:default | :auto) | nil,
  stop: ExOpenAI.Components.StopConfiguration.t() | nil,
  store: boolean() | nil,
  stream: boolean() | nil,
  stream_options: ExOpenAI.Components.ChatCompletionStreamOptions.t() | nil,
  temperature: float() | nil,
  tool_choice: ExOpenAI.Components.ChatCompletionToolChoiceOption.t() | nil,
  tools: [ExOpenAI.Components.ChatCompletionTool.t()] | nil,
  top_logprobs: integer() | nil,
  top_p: float() | nil,
  user: String.t() | nil,
  web_search_options:
    %{
      search_context_size: ExOpenAI.Components.WebSearchContextSize.t(),
      user_location: %{
        approximate: ExOpenAI.Components.WebSearchLocation.t(),
        type: :approximate
      }
    }
    | nil
}