OpenAIのfine-tuningのやり方と結果の見方
基本的に以下を見れば良いのですが、結果の見方がすぐに出てこなかったのでメモ
https://platform.openai.com/docs/guides/fine-tuning
まずjsonlファイルを用意します。ここはdocsに載っています。
以下でファイルとjobの作成ができます
client.files.create(
file=open("fine_tuning_data.jsonl", "rb"),
purpose="fine-tune"
)
client.fine_tuning.jobs.create(
training_file="file-abc",
model="gpt-4o-2024-08-06"
)
jobのidをメモしておきます
# List 10 fine-tuning jobs
client.fine_tuning.jobs.list(limit=10)
# Retrieve the state of a fine-tune
client.fine_tuning.jobs.retrieve("ftjob-abc")
これで結果ファイルのidが取得できるのですが、docsにあるような
result = client.files.content("file-abc")
result
するとよくわからないオブジェクトが返ってきます。
ggったところ、以下のようにbase64デコードすれば中身を見て保存することができました。
result = client.files.content("file-abc").text
result
import base64
decoded_bytes = base64.b64decode(result)
decoded_string = decoded_bytes.decode('utf-8')
print(decoded_string)
import csv
# Split the string into lines
lines = decoded_string.splitlines()
# Write to CSV file
with open('learning_results.csv', 'w', newline='') as file:
writer = csv.writer(file)
for line in lines:
writer.writerow(line.split(','))
print("Data has been written to learning_results.csv")
いいなと思ったら応援しよう!
サポートありがとうございます!