View Source ExOpenAI.Components.CreateFineTuningJobRequest (ex_openai.ex v2.0.0-beta2)
Module for representing the OpenAI schema CreateFineTuningJobRequest.
Fields
:hyperparameters- optional -{:%{}, [], [{{:optional, [], [:batch_size]}, {:|, [], [:auto, {:integer, [], []}]}}, {{:optional, [], [:learning_rate_multiplier]}, {:|, [], [:auto, {:number, [], []}]}}, {{:optional, [], [:n_epochs]}, {:|, [], [:auto, {:integer, [], []}]}}]}
The hyperparameters used for the fine-tuning job. This value is now deprecated in favor ofmethod, and should be passed in under themethodparameter.:integrations- optional -[{:%{}, [], [{{:required, [], [:type]}, :wandb}, {{:required, [], [:wandb]}, {:%{}, [], [{{:optional, [], [:entity]}, {:|, [], [{{:., [], [{:__aliases__, [alias: false], [:String]}, :t]}, [], []}, nil]}}, {{:optional, [], [:name]}, {:|, [], [{{:., [], [{:__aliases__, [alias: false], [:String]}, :t]}, [], []}, nil]}}, {{:required, [], [:project]}, {{:., [], [{:__aliases__, [alias: false], [:String]}, :t]}, [], []}}, {{:optional, [], [:tags]}, {:list, [], [{{:., [], [{:__aliases__, [alias: false], [:String]}, :t]}, [], []}]}}]}}]}] | nil
A list of integrations to enable for your fine-tuning job.:metadata- optional -ExOpenAI.Components.Metadata.t():method- optional -ExOpenAI.Components.FineTuneMethod.t():model- required -String.t() | :"babbage-002" | :"davinci-002" | :"gpt-3.5-turbo" | :"gpt-4o-mini"
The name of the model to fine-tune. You can select one of the supported models.:seed- optional -integer() | nil
The seed controls the reproducibility of the job. Passing in the same seed and job parameters should produce the same results, but may differ in rare cases. If a seed is not specified, one will be generated for you.
Constraints: minimum: 0, maximum: 2147483647:suffix- optional -String.t() | nil
A string of up to 64 characters that will be added to your fine-tuned model name.
For example, a suffix of "custom-model-name" would produce a model name like ft:gpt-4o-mini:openai:custom-model-name:7p4lURel.
Default: nil
Constraints: minLength: 1, maxLength: 64
:training_file- required -String.t()
The ID of an uploaded file that contains training data.
See upload file for how to upload a file.
Your dataset must be formatted as a JSONL file. Additionally, you must upload your file with the purpose fine-tune.
The contents of the file should differ depending on if the model uses the chat, completions format, or if the fine-tuning method uses the preference format.
See the fine-tuning guide for more details.
:validation_file- optional -String.t() | nil
The ID of an uploaded file that contains validation data.
If you provide this file, the data is used to generate validation metrics periodically during fine-tuning. These metrics can be viewed in the fine-tuning results file. The same data should not be present in both train and validation files.
Your dataset must be formatted as a JSONL file. You must upload your file with the purpose fine-tune.
See the fine-tuning guide for more details.
Summary
Types
@type t() :: %ExOpenAI.Components.CreateFineTuningJobRequest{ hyperparameters: %{ optional(:batch_size) => :auto | integer(), optional(:learning_rate_multiplier) => :auto | number(), optional(:n_epochs) => :auto | integer() } | nil, integrations: [ %{ type: :wandb, wandb: %{ optional(:entity) => String.t() | nil, optional(:name) => String.t() | nil, :project => String.t(), optional(:tags) => [String.t()] } } ] | nil, metadata: ExOpenAI.Components.Metadata.t() | nil, method: ExOpenAI.Components.FineTuneMethod.t() | nil, model: String.t() | ((:"babbage-002" | :"davinci-002") | :"gpt-3.5-turbo") | :"gpt-4o-mini", seed: integer() | nil, suffix: String.t() | nil, training_file: String.t(), validation_file: String.t() | nil }