LLM の LoRA と QLoRA の推奨事項

このページでは、Low-Rank Adaptation of Large Language Models(LoRA)やそれよりもメモリ効率の高い QLoRA を使用して、Gemini Enterprise Agent Platform で大規模言語 モデル(LLM)をチューニングする際の構成上の推奨事項について説明します。

チューニングに関する推奨事項

次の表は、LoRA または QLoRA を使用して LLM をチューニングする際の推奨事項をまとめたものです。

仕様 推奨事項 詳細
GPU メモリの効率 QLoRA QLoRA では、LoRA と比較して GPU メモリのピーク使用量が約 75% 少なくなります。
スピード LoRA LoRA は QLoRA よりもチューニング速度が約 66% 高速です。
費用対効果 LoRA どちらの方法も費用は比較的低額ですが、LoRA は QLoRA よりも最大で 40% 費用が少なくなります。
最大シーケンス長 QLoRA 最大シーケンス長を長くすると GPU メモリの消費量が増加します。QLoRA では使用する GPU メモリが少ないため、最大シーケンス長を長くすることができます。
精度の向上 同じ どちらの方法でも精度は同程度に向上します。
バッチサイズの大きさ QLoRA QLoRA では、はるかに大きなバッチサイズがサポートされています。たとえば、次の GPU で openLLaMA-7B をチューニングする際のバッチサイズの推奨事項は次のとおりです。
  • 1 x A100 40G:
    • LoRA: 推奨のバッチサイズは 2 です。
    • QLoRA: 推奨のバッチサイズは 24 です。
  • 1 x L4:
    • LoRA: バッチサイズ 1 はメモリ不足エラー(OOM)で失敗します。
    • QLoRA: 推奨のバッチサイズは 12 です。
  • 1 x V100:
    • LoRA: バッチサイズ 1 はメモリ不足エラー(OOM)で失敗します。
    • QLoRA: 推奨のバッチサイズは 8 です。