OpenAIは2023年8月23日にGPT-3.5 Turboのファインチューニングが利用可能になったと発表しました。
このアップデートで、独自のデータを学習させることで、特定のユースケースに最適なAIモデルを作成し、実行することができます。
さらに今秋には、GPT-4のファインチューニングを予定しているとしています。
ファインチューニングの使用例
OpenAIによるとプライベートベータテストでは、以下のような一般的な使用例でモデルの性能を大幅に向上させることができました:
- 指示の受け取り能力向上:ファインチューニングにより、モデルが指示により正確に従うようになります。例えば、特定の言語での応答を求められた場合、モデルが常にドイツ語で応答するようにファインチューニングを適用できます。
- 出力フォーマットの信頼性向上:ファインチューニングは、モデルが一貫してレスポンスをフォーマットする能力を向上させます。これは、コードの補完やAPI呼び出しのような特定のレスポンスフォーマットを要求するアプリケーションにとって重要です。
- カスタムトーン:ファインチューニングは、モデルの出力のトーンを調整するのに適しています。これにより、企業のブランドの声としての一貫性を保つことができます。
ファインチューニングは、プロンプトエンジニアリングや情報の取得、関数の呼び出しといった他の技術と組み合わせることで、その効果を最大限に引き出すことができます。
詳しくは、ファインチューニングガイドをご参照ください。関数の呼び出しやgpt-3.5-turbo-16kのサポートは、今秋に追加される予定です。
ファインチューニングの手順
以下の手順を踏むことで、ファインチューニングの手順が実行できるとしています。
1.データを準備
{
"messages": [
{ "role": "system", "content": "You are an assistant that occasionally misspells words" },
{ "role": "user", "content": "Tell me a story." },
{ "role": "assistant", "content": "One day a student went to schoool." }
]
}
2.ファイルをアップロード
curl https://api.openai.com/v1/files \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-F "purpose=fine-tune" \
-F "file=@path_to_your_file"
3.ファインチューニングのジョブを作成
curl https://api.openai.com/v1/fine_tuning/jobs \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-d '{
"training_file": "TRAINING_FILE_ID",
"model": "gpt-3.5-turbo-0613"
}'
4.ファインチューニングされたモデルを使用
curl https://api.openai.com/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-d '{
"model": "ft:gpt-3.5-turbo:org_id",
"messages": [
{
"role": "system",
"content": "You are an assistant that occasionally misspells words"
},
{
"role": "user",
"content": "Hello! What is fine-tuning?"
}
]
}'
また将来的に、ファインチューニングのUIを導入するとしています。
これにより、開発者は進行中のファインチューニングのジョブ、完了したモデルのスナップショットなどの情報に簡単にアクセスできるようになります。
安全性
ファインチューニングの安全な導入は、私たちにとって非常に重要です。
ファインチューニングのプロセスを通じて、デフォルトのモデルの安全機能を維持するため、ファインチューニングのトレーニングデータは、私たちのモデレーションAPIとGPT-4によるモデレーションシステムを通じて、私たちの安全基準に違反する危険なトレーニングデータを検出するために使用されます。
価格
ファインチューニングのコストは、初期のトレーニングコストと使用時のコストに分けられます。
項目 | 料金 |
---|---|
トレーニング | $0.008 / 1K トークン |
使用時の入力 | $0.012 / 1K トークン |
使用時の出力 | $0.016 / 1K トークン |
引用