Llama のファインチューニング用ライブラリ

Llama 3 のファインチューニング

Francesca Donadoni

Curriculum Manager, DataCamp

ファインチューニングの適用場面

  • 事前学習モデル
  • 専用データを使用

モデルパラメータの表現を見つめる AI エンジニア。

  • 精度向上
  • バイアス低減
  • 知識ベース拡充
Llama 3 のファインチューニング

ファインチューニングの使い所

  • データ品質
  • モデル容量
  • タスク定義

 

  • ファインチューニング手順

トレーニングループ。学習によりファインチューニング済みモデルが得られます。評価はファインチューニング済みモデルと評価用データセットで行います。

Llama 3 のファインチューニング

ファインチューニングの使い所

  • データ品質
  • モデル容量
  • タスク定義

 

  • ファインチューニング手順

トレーニングループ。学習データセットで学習を開始し、ファインチューニング済みモデルを得ます。評価はファインチューニング済みモデルと評価用データセットで行います。

Llama 3 のファインチューニング

ファインチューニングの使い所

  • データ品質
  • モデル容量
  • タスク定義

 

  • ファインチューニング手順

トレーニングループ。学習データセット、モデル、トークナイザーで学習を開始し、ファインチューニング済みモデルを得ます。評価はファインチューニング済みモデルと評価用データセットで行います。

Llama 3 のファインチューニング

ファインチューニングの使い所

  • データ品質
  • モデル容量
  • タスク定義

 

  • ファインチューニング手順

トレーニングループ。学習データセット、引数、モデル、トークナイザーで学習を開始し、ファインチューニング済みモデルを得ます。評価はファインチューニング済みモデルと評価用データセットで行います。

Llama 3 のファインチューニング

ファインチューニングの使い所

  • データ品質
  • モデル容量
  • タスク定義

 

  • ファインチューニング手順
  • 新しいモデル
  • 評価

トレーニングループ。学習データセット、引数、モデル、トークナイザー、ファインチューニング用クラスで学習を開始し、ファインチューニング済みモデルを得ます。評価はファインチューニング済みモデルと評価用データセットで行います。

Llama 3 のファインチューニング

Llama のファインチューニング用ライブラリ

 

  • 📚 ファインチューニング用ライブラリの概要

 

  • 🦙 Llama 向け TorchTune

 

  • 🚀 TorchTune でタスクを起動
Llama 3 のファインチューニング

Llama のファインチューニング手法の選択肢

  • TorchTune
    • 設定可能なテンプレートに基づく
    • 適する用途: 迅速なスケール

素早い実験を示す時計アイコン。

  • Hugging Face の SFTTrainer
    • 他の LLM にアクセス可能
    • 適する用途: 複数モデルの微調整

複数モデルを表すアイコン。

  • Unsloth
    • メモリ効率が高い
    • 適する用途: 限られたハードウェア

CPU ハードウェアを表すアイコン。

  • Axolotl
    • モジュール式アプローチ
    • 適する用途: 大規模な再設定なし

設定を表す歯車と手のアイコン。

Llama 3 のファインチューニング

TorchTune とファインチューニング用レシピ

 

 

  • TorchTune のレシピ:

    • モジュール式テンプレート
    • プロジェクトに合わせて設定可能
    • コードを整理
    • 再現性を確保

レシピの概念を表すスープ調理のイラスト。

Llama 3 のファインチューニング

TorchTune の一覧表示

 

  • ターミナルから実行
  • Python 環境
  • TorchTune をインストール
    pip3 install torchtune
    
  • 利用可能なレシピを一覧表示

    tune ls
    
  • ! IPython 使用時

    !tune ls
    
Llama 3 のファインチューニング

TorchTune の一覧表示

!tune ls
  • 出力:
RECIPE                                   CONFIG                                  
full_finetune_single_device              llama3/8B_full_single_device            
                                         llama3_1/8B_full_single_device          
                                         llama3_2/1B_full_single_device          
                                         llama3_2/3B_full_single_device       
full_finetune_distributed                llama3/8B_full                          
                                         llama3_1/8B_full                        
                                         llama3_2/1B_full                          
                                         ...
Llama 3 のファインチューニング

TorchTune の実行

 

  • レシピ + --config + 設定を使用
  • ファインチューニングを実行

    tune run full_finetune_single_device --config \
    llama3_1/8B_lora_single_device
    
  • パラメータ device=cpu または device=cuda

  • epochs=<int><int> は 0 以上の整数)
Llama 3 のファインチューニング

Let's practice!

Llama 3 のファインチューニング

Preparing Video For Download...