昨日は、Google ColabでLLMのモデルを読み込み、ファインチューニングの環境準備を整えるところまで完了しました。(昨日の学習内容はこちら)
今日は、その補足情報として、Google Driveを活用したLLMモデルの保存・再利用方法についてご紹介します。
Google ColabでのLLMモデル読み込みの課題
Google Colabは非常に便利な環境ですが、セッションが切れると読み込んだ情報がリセットされてしまうため、毎回モデルを再読み込みする必要があります。特に大規模なLLMモデルの場合、この再読み込みには時間がかかり、効率的な開発の妨げになる可能性があります。
Google Driveにモデルを保存・再利用するメリット
そこで、LLMモデルをGoogle Driveに保存し、必要に応じて再利用する方法が非常に有効です。この方法には、以下のようなメリットがあります。
- 効率的なモデル管理: 複数回の試行錯誤を伴うファインチューニングにおいて、異なる設定やデータセットでの実験結果を簡単に比較・管理できます。
- チェックポイントの活用: 学習中に定期的にモデルを保存することで、中断からの再開が容易になります。
- リソースの節約: 大規模モデルの再ダウンロードにかかる時間と計算リソースを節約できます。
- 共同作業の容易化: Google Driveを通じてモデルを共有することで、チームでの共同作業がスムーズになります。
LLMモデルをGoogle Driveに保存するコード
以下に、LLMモデルをGoogle Driveに保存するコード例を示します。
#Python Code
import os
import torch
from transformers import AutoTokenizer, AutoModelForCausalLM
from google.colab import drive, userdata
# Google Driveのマウント
drive.mount('/content/drive')
# モデルをロードする。
model_name = 'elyza/Llama-3-ELYZA-JP-8B'
api_token = userdata.get("LLM3ELYZA_API")
tokenizer = AutoTokenizer.from_pretrained(model_name, token=api_token)
model = AutoModelForCausalLM.from_pretrained(model_name, device_map="auto", token=api_token)
# 保存先のディレクトリを指定
save_directory = '/content/drive/MyDrive/llm_model'
# ディレクトリが存在しない場合は作成
os.makedirs(save_directory, exist_ok=True)
# モデルとトークナイザーを保存
tokenizer.save_pretrained(save_directory)
model.save_pretrained(save_directory)
print(f"モデルとトークナイザーを {save_directory} に保存しました。")
Google Driveに保存したLLMモデルを再利用するコード
次に、Google Driveに保存したLLMモデルを再利用するコード例を示します。
#Python Code
import torch
from transformers import AutoTokenizer, AutoModelForCausalLM
from google.colab import drive
# Google Driveのマウント
drive.mount('/content/drive')
# 保存先のディレクトリを指定
save_directory = '/content/drive/MyDrive/llm_model'
# モデルとトークナイザーをロード
tokenizer = AutoTokenizer.from_pretrained(save_directory)
model = AutoModelForCausalLM.from_pretrained(save_directory)
print("Google Driveからモデルとトークナイザーをロードしました。")
下記のスクショはGoogle Colab のGoogle Drive に保存済みのLLMモデルをロードした実行画面です。

次のステップ:データセットの準備
これで、LLMモデルの保存・再利用環境が整いました。次のステップでは、ファインチューニングに必要なデータセットの作成準備を進めていきます。
まとめ
Google Driveを活用することで、LLMのファインチューニング環境をより効率的に構築できます。ぜひこの方法を試して、快適な開発環境を構築してください。