ミストラル7B:コンピューターでの微調整と量子化のためのレシピ

「ミストラル7B:コンピューターによる微調整と量子化を活用したレシピ」

リーズナブルな監督付きファインチューニングと印象的なLLM

ミストラルは地中海北部で吹く風です-ピクスタからのイラスト

Mistral 7Bは、Mistral AIが作成した非常に人気のある大規模言語モデル(LLM)です。これは、同じサイズの他の事前トレーニング済みLLMよりも優れており、Llama 2 13Bなどのより大きなLLMよりも優れています。

これは、スライディングウィンドウを使用して注意を計算し、グループ化されたクエリーの注意(GQA)を使用して、特に長い文脈のデコーディングに非常に最適化されています。詳細については、Mistral 7Bを紹介するarXiv論文およびSalvatore Raieli氏のこの優れた記事で詳細をご覧いただけます。

Mistral 7Bは優れた性能を持ちながらも、手頃なハードウェアで活用することができます。

この記事では、QLoRAを使用してMistral 7Bをファインチューニングする方法を紹介します。このために、私がこの記事のために修正したデータセット「ultrachat」を使用します。Hugging FaceがZephyr 7Bを作成するために使用したものです。また、AutoGPTQを使用してMistral7Bを量子化する方法も見ていきます。

私は、すべてのセクションを実装したノートブックを作成しました。こちらで見つけることができます:

ノートブックを入手します(#22、#23)

TRLを使用したMistral 7Bの監督付きファインチューニング

Mistral 7Bは70億のパラメータモデルです。GPU上でそれをロードするためには、およそ15 GBのVRAMが必要です。その後、バッチでの完全なファインチューニングはさらに多くのVRAMを消費します。

標準の完全なファインチューニングの代わりに、QLoRAを使用してファインチューニングすることもできます。QLoRAは、凍結された量子化されたモデルの上にLoRAアダプターをファインチューニングします。以前の記事では、Llama 2 7Bをファインチューニングするために使用しました

QLoRAは4ビット(NF4)に量子化されるため、モデルのロード時のメモリ消費量をおおよそ4で割ります。つまり、NF4で量子化されたMistral 7Bは、およそ4 GBのVRAMを消費します。VRAMが12 GBのGPUをお持ちの場合、バッチサイズを増やしたり、より多くのモジュールにLoRAを適用するための十分なスペースが残ります。

つまり、Mistral 7Bは無料でファインチューニングすることができます。VRAMが十分にある場合は、自分のマシンで行うこともできますし、T4 GPUが搭載された無料のGoogle Colabインスタンスを使用することもできます。

QLoRAを使用してファインチューニングするには、次のライブラリをインストールする必要があります:

pip install -q -U bitsandbytespip・・・

We will continue to update VoAGI; if you have any questions or suggestions, please contact us!

Share:

Was this article helpful?

93 out of 132 found this helpful

Discover more