OpenAI(OneCopy)
  1. 微调(Fine-tunes)
OpenAI(OneCopy)
  • 介绍
  • 项目说明
  • 导言
  • 身份验证
  • 发出请求
  • 参数详情
  • 模型(Models)
    • 模型
    • 列出模型
      GET
    • 检索模型
      GET
  • 聊天(Chat)
    • 生成聊天消息的自动完成
      POST
  • 自动补全(Completions)
    • 创建完成
      POST
  • 编辑(Edits)
    • 创建编辑
      POST
  • 图像(Images)
    • README
    • 创建图像
      POST
    • 创建图片编辑
      POST
    • 创建图像变体
      POST
  • 嵌入(Embeddings)
    • 创建嵌入
      POST
  • 音频(Audio)
    • 创建转录
    • 创建翻译
  • 文件(Files)
    • README
    • 检索文件内容
    • 列出文件
    • 上传文件
    • 删除文件
    • 检索文件
  • 微调(Fine-tunes)
    • 创建微调
      POST
    • 列表微调
      GET
    • 检索微调
      GET
    • 取消微调
      POST
    • 列出微调事件
      GET
    • 删除微调模型
      DELETE
  • 审查(Moderations)
    • 创建内容审核
  • 引擎(Engines)
    • 列出引擎
    • 检索引擎
  1. 微调(Fine-tunes)

创建微调

POST
https://api.openai.com/v1/fine-tunes
创建一个从给定数据集微调指定模型的作业。
响应包括排队作业的详细信息,包括作业状态和完成后微调模型的名称。
了解有关微调的更多信息

请求参数

Authorization
在 Header 添加参数
Authorization
,其值为在 Bearer 之后拼接 Token
示例:
Authorization: Bearer ********************
Header 参数
Authorization
string 
可选
示例值:
Bearer {{YOUR_API_KEY}}
Body 参数application/json
training_file
string 
必需
包含训练数据的上传文件的 ID。 有关如何上传文件,请参见上传文件。 您的数据集必须格式化为 JSONL 文件,其中每个训练示例都是一个带有键“提示”和“完成”的 JSON 对象。此外,您必须上传带有目的的文件fine-tune。 有关详细信息,请参阅微调指南。
validation_file
string 
可选
包含验证数据的上传文件的 ID。 如果您提供此文件,该数据将用于在微调期间定期生成验证指标。这些指标可以在微调结果文件中查看。您的火车和验证数据应该是互斥的。 您的数据集必须格式化为 JSONL 文件,其中每个验证示例都是一个带有键“prompt”和“completion”的 JSON 对象。此外,您必须上传带有目的的文件fine-tune。 有关详细信息,请参阅微调指南。
model
string 
可选
要微调的基本模型的名称。您可以选择“ada”、“babbage”、“curie”、“davinci”或 2022-04-21 之后创建的微调模型之一。要了解有关这些模型的更多信息,请参阅 模型文档。
n_epochs
integer 
可选
训练模型的时期数。一个纪元指的是训练数据集的一个完整周期。
batch_size
integer 
可选
用于训练的批量大小。批量大小是用于训练单个前向和后向传递的训练示例数。 默认情况下,批量大小将动态配置为训练集中示例数量的 0.2%,上限为 256 - 通常,我们发现较大的批量大小往往更适合较大的数据集。
learning_rate_multiplier
number 
可选
用于训练的学习率乘数。微调学习率是用于预训练的原始学习率乘以该值。 默认情况下,学习率乘数是 0.05、0.1 或 0.2,具体取决于 final batch_size(较大的学习率往往在较大的批量大小下表现更好)。我们建议使用 0.02 到 0.2 范围内的值进行试验,以查看产生最佳结果的值。
prompt_loss_weight
number 
可选
用于提示令牌损失的权重。这控制了模型尝试学习生成提示的程度(与权重始终为 1.0 的完成相比),并且可以在完成较短时为训练增加稳定效果。 如果提示非常长(相对于完成),则减少此权重以避免过度优先学习提示可能是有意义的。
compute_classification_metrics
boolean 
可选
如果设置,我们将在每个时期结束时使用验证集计算特定于分类的指标,例如准确性和 F-1 分数。可以在结果文件中查看这些指标。 为了计算分类指标,您必须提供一个 validation_file. 此外,您必须指定classification_n_classes多类分类或 classification_positive_class二元分类。
classification_n_classes
integer 
可选
分类任务中的类数。 多类分类需要此参数。
classification_positive_class
string 
可选
二元分类中的正类。 在进行二元分类时,需要此参数来生成精度、召回率和 F1 指标。
classification_betas
array[string]
可选
如果提供,我们将计算指定 beta 值的 F-beta 分数。F-beta 分数是 F-1 分数的推广。这仅用于二进制分类。 当 beta 为 1(即 F-1 分数)时,精确率和召回率被赋予相同的权重。Beta 分数越大,召回率越高,精确率越低。Beta 分数越小,精确度越重要,召回率越低。
suffix
string  | null 
可选
最多 40 个字符的字符串,将添加到您的微调模型名称中。 例如,suffix“custom-model-name”的 a 会生成类似ada:ft-your-org:custom-model-name-2022-02-15-04-21-04.
示例
{
  "training_file": "text-similarity-babbage-001"
}

示例代码

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
请求示例请求示例
Shell
JavaScript
Java
Swift
curl --location --request POST 'https://api.openai.com/v1/fine-tunes' \
--header 'Authorization: Bearer ' \
--header 'Content-Type: application/json' \
--data-raw '{
  "training_file": "text-similarity-babbage-001"
}'

返回响应

🟢200成功
application/json
Body
id
string 
必需
object
string 
必需
model
string 
必需
created_at
integer 
必需
events
array [object {4}] 
必需
object
string 
可选
created_at
integer 
可选
level
string 
可选
message
string 
可选
fine_tuned_model
null 
必需
hyperparams
object 
必需
batch_size
integer 
必需
learning_rate_multiplier
number 
必需
n_epochs
integer 
必需
prompt_loss_weight
number 
必需
organization_id
string 
必需
result_files
array[string]
必需
status
string 
必需
validation_files
array[string]
必需
training_files
array [object {6}] 
必需
id
string 
可选
object
string 
可选
bytes
integer 
可选
created_at
integer 
可选
filename
string 
可选
purpose
string 
可选
updated_at
integer 
必需
示例
{
    "id": "ft-AF1WoRqd3aJAHsqc9NY7iL8F",
    "object": "fine-tune",
    "model": "curie",
    "created_at": 1614807352,
    "events": [
        {
            "object": "fine-tune-event",
            "created_at": 1614807352,
            "level": "info",
            "message": "Job enqueued. Waiting for jobs ahead to complete. Queue number: 0."
        }
    ],
    "fine_tuned_model": null,
    "hyperparams": {
        "batch_size": 4,
        "learning_rate_multiplier": 0.1,
        "n_epochs": 4,
        "prompt_loss_weight": 0.1
    },
    "organization_id": "org-...",
    "result_files": [],
    "status": "pending",
    "validation_files": [],
    "training_files": [
        {
            "id": "file-XGinujblHPwGLSztz8cPS8XY",
            "object": "file",
            "bytes": 1547276,
            "created_at": 1610062281,
            "filename": "my-data-train.jsonl",
            "purpose": "fine-tune-train"
        }
    ],
    "updated_at": 1614807352
}
修改于 2023-10-20 06:28:27
上一页
检索文件
下一页
列表微调
Built with