LoRA アダプターを使う
あなたは、顧客が抱える簡単な質問を自動で解決するカスタマーサービス向けチャットボットを提供するスタートアップで働いています。
あなたの担当は、bitext データセットを使って Maykeye/TinyLLama-v0 言語モデルをファインチューニングし、カスタマーサービスの質問に答えられるようにすることです。このモデルは、あなたのチームが提供するチャットボットで使用されます。学習スクリプトはほぼ完成していますが、より効率的で、デプロイ時にチームのトレーニングパイプラインをより速く完了できるよう、ファインチューニングに LoRA を統合したいと考えています。
関連するモデル、トークナイザー、データセット、トレーニング引数は、すでに model、tokenizer、dataset、training_arguments に読み込まれています。
この演習はコースの一部です
Llama 3 のファインチューニング
演習の手順
- 関連ライブラリから LoRA の設定をインポートします。
- 既定値を使って
lora_configに LoRA の設定パラメータをインスタンス化します。 - SFTTrainer に LoRA のパラメータを統合します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Import LoRA configuration class
from ____ import ____
# Instantiate LoRA configuration with values
lora_config = ____(
r=12,
lora_alpha=8,
task_type="CAUSAL_LM",
lora_dropout=0.05,
bias="none",
target_modules=['q_proj', 'v_proj']
)
trainer = SFTTrainer(
model=model,
train_dataset=dataset,
tokenizer=tokenizer,
args=training_arguments,
# Pass the lora_config to trainer
____,
)