OpenAI API 错误:“未知请求 URL:POST /v1/fine-tunes”

问题描述 投票:0回答:1

这是我的代码:

import openai
import os
from dotenv import load_dotenv

load_dotenv()

openai.api_key = os.getenv('API_KEY')

def upload_file(file_path):
    try:
        response = openai.File.create(
            file=open(file_path, "rb"),
            purpose="fine-tune"
        )
        print("File uploaded successfully.")
        print(response)
        return response['id']
    except Exception as e:
        print(f"Error uploading file: {e}")
        return None

def create_fine_tune_task(file_id, model_name):
    try:

        response = openai.FineTune.create(
            training_file=file_id,
            model=model_name
        )
        print("Fine-tune job created successfully.")
        print(response)
    except Exception as e:
        print(f"Error creating fine-tune job: {e}")


file_path = "output/8ec61610f6a5652f31a664153c20803639747017.jsonl"
model_name = "gpt-3.5-turbo"

file_id = upload_file(file_path)
if file_id:

    create_fine_tune_task(file_id, model_name)

我收到以下错误:

Unknown request URL: POST /v1/fine-tunes

openai-api chatgpt-api
1个回答
0
投票

问题

您尝试使用的方法不适用于 OpenAI Python SDK >=

v1.0.0
(如果您使用的是 Python)或 OpenAI Node.js SDK >=
v4.0.0
(如果您使用的是 Node.js)。 js)。请参阅 Python SDK 迁移指南Node.js SDK 迁移指南

Python

旧的 SDK(即

v0.28.1
)使用以下方法工作:

client.FineTuningJob.create()

新的 SDK(即 >=

v1.0.0
)使用以下方法工作:

client.fine_tuning.jobs.create()

注意:请小心,因为 API 区分大小写(即

client.Fine_Tuning.Jobs.create()
不适用于新的 SDK 版本)。

Node.js

旧的 SDK(即

v3.3.0
)使用以下方法工作:

client.createFineTune()

新的 SDK(即 >=

v4.0.0
)使用以下方法工作:

client.fineTuning.jobs.create()

注意:请小心,因为 API 区分大小写(即

client.FineTuning.Jobs.create()
不适用于新的 SDK 版本)。

解决方案

Python SDK
v1.0.0
工作示例

import os
from openai import OpenAI

client = OpenAI(
    api_key = os.getenv("OPENAI_API_KEY"),
)

client.fine_tuning.jobs.create(
  training_file="file-abc123", 
  model="gpt-4o-mini",
)

Node.js SDK
v4.0.0
工作示例

const OpenAI = require("openai");

const client = new OpenAI({
  apiKey: process.env.OPENAI_API_KEY,
});

async function main() {
  await client.fineTuning.jobs.create({
    training_file: "file-abc123",
    model: "gpt-4o-mini",
  });
}

main();
© www.soinside.com 2019 - 2024. All rights reserved.