用語集に戻る
AI中級

ファインチューニング

ふぁいんちゅーにんぐ

一言で言うと

既存のAIモデルを、特定の用途に合わせて追加学習させること。汎用AIを「専門家」に育てる手法。

もう少し詳しく

一言で言うと

既存のAIモデルを、特定の用途に合わせて追加学習させること。汎用AIを「専門家」に育てる手法。

もう少し詳しく

ファインチューニングは、すでに学習済みのAIモデルに対して、特定の分野や業務に合ったデータで追加学習を行うことです。

医学部の例えで考えてみましょう。医学生は6年間で医学全般を学びます(これが事前学習)。その後、外科や内科などの専門分野で研修を受けて専門医になります(これがファインチューニング)。ゼロから専門知識を学ぶよりも、基礎があるうえで専門化する方がはるかに効率的です。

AIでも同様に、GPTやLlamaなどの汎用モデルに対して、自社の文書やFAQデータで追加学習させることで、その分野に特化したAIモデルを作れます。

実務でどう使うか

  • マーケティング: 自社のブランドトーンで文章を生成するAI、業界特有の用語を理解するチャットボットなどを作る際にファインチューニングが活用されます

  • デザイン: 自社のデザインガイドラインを学習させたAIで、ブランドに合った画像やコピーを生成する事例があります

  • PM: 「AIに自社の知識を覚えさせたい」という要件に対して、RAGとファインチューニングのどちらが適切かを判断する知識が求められます
  • コードで見てみよう

    # ファインチューニングの概念的な流れ

    # 1. 学習データを用意する(入力と理想的な出力のペア)
    training_data = [
    {"messages": [{"role": "user", "content": "返品したい"}, {"role": "assistant", "content": "返品は購入後30日以内です。マイページの注文履歴から手続きできます。"}]},
    {"messages": [{"role": "user", "content": "送料は?"}, {"role": "assistant", "content": "5,000円以上のご注文で送料無料です。それ未満の場合は一律500円です。"}]},
    # ... 数百〜数千件のデータ
    ]

    # 2. 学習データをファイルとしてアップロードする
    training_file = openai.files.create(
    file=open("data.jsonl", "rb"),
    purpose="fine-tune"
    )

    # 3. 既存のモデルに追加学習させる
    fine_tuned_job = openai.fine_tuning.jobs.create(
    model="gpt-4o-mini",
    training_file=training_file.id
    )

    # 4. 専門化されたモデルが完成!
    # → 自社のカスタマーサポートに特化したAIになる

    関連する用語

    この用語を学べるコース

    この用語を実際に使ってみよう

    チョットデキルなら、5分のレッスンで実際にコードを書いて学べます。

    コース一覧を見る