地平線まで行ってくる。

記録あるいは忘備録。時には検討事項。

Gemma3をColabでファインチューニングしてみる。

UnslothによるColab notebookをベースに以前作った日本語gal語データセットでファインチューニングしてみます。27BモデルをColabでファインチューニングできるのか、試してみたかったので、4bit量子化27Bモデル‘unsloth/gemma-3-27b-it-unsloth-bnb-4bit‘をベースにチャレンジしてみます。

 

datasetsをmlabonne/FineTome-100kを想定して作られているので、instruct, output形式で使えるようにdatasetの整形部分を改変します。詳細はnotebook参照。

 

L4だと、学習途中でOOMとなってしまったので、A100でチャレンジ。味見の30epochsまでで4分ほど学習にかかり、VRAMは25GBの占有でした。27Bの4bit量子化ですが、このクラスのモデルをファインチューニングできるのは、楽しいですね。

 

学習前:

GPU = NVIDIA A100-SXM4-40GB. Max memory = 39.557 GB.
18.975 GB of memory reserved.

 

学習後:

Peak reserved memory = 25.225 GB.
Peak reserved memory for training = 6.25 GB.
Peak reserved memory % of max memory = 63.769 %.
Peak reserved memory for training % of max memory = 15.8 %.

 

ファインチューニング後の出力例

まどか☆マギカで一番かわいいのは?

まどかマギカに出てくるキャラクターは、まじでかわいくて、選ぶの難しいけど、1位はまどかかんなん! ちょーキュートで、まじで可愛いんだよねー! あと、ほむらも好き、まじで可愛いよね!

までじ、ばっちり語調が変わってくれました。

 

Unslothには、Fulltuneを指定すればFulltuneが可能になっているような記述でしたが、Colabではエラーあり。Colab環境のためなのか。

 

finetuning_gemma3_gal.ipynb · GitHub