rinna社の「 japanese-gpt-1b 」を、日本語データセット「 databricks-dolly-15k-ja 」を使用して学習させた推論モデルです。
学習方法は、 inu-ai/dolly-japanese-gpt-1b を参照しました。モデルは inu-ai/dolly-japanese-gpt-1b にあるものと類似したものとなっています。当方の自学のために再作成しています。
学習データやモデルを作成および配布してくださった方々に心から感謝申し上げます。
学習済みモデルは、本家 inugoya 様の inu-ai/dolly-japanese-gpt-1b をご使用ください。 モデルの使用方法につきましても、本家様の「 モデルの使用方法 」をご参照ください。 自身の環境でfine tuning&推論を実行したい場合は、以降の内容を参照ください。
項目 | バージョン | 備考 |
---|---|---|
OS | Windows 10 | |
GPU | RTX4070 VRAM12GB | |
python | 3.9.6 | pyenv localにて設定。下記のすべての環境において同一。 |
python library | requirements.txt参照 | |
CUDA toolkit | cu117 |
データセットの前処理には、alpaca_preprocess.pyを使用しました。 推論用python環境構築 を使用してください。
fine tuningには、fine_tuning.ipynbを使用しました。 python仮想環境構築方法は、以下の通りです。
pyenv local 3.9.6 mkdir fine_tuning_ # 仮想環境名 python -m venv ./ cd Script ./activate.ps1 cd <本リポジトリのパス> pip install -r requirements_finetuning.txt pip install numpy --pre torch torchvision torchaudio --force-reinstall --index-url https://download.pytorch.org/whl/nightly/cu117
学習済みモデルを使用した推論には、main.pyを使用しました。 python仮想環境構築方法は、以下の通りです。
pyenv local 3.9.6 mkdir rinna_gpt_1b # 仮想環境名 python -m venv ./ cd Script ./activate.ps1 cd <本リポジトリのパス> # 下記だけ違う pip install -r requirements.txt pip install numpy --pre torch torchvision torchaudio --force-reinstall --index-url https://download.pytorch.org/whl/nightly/cu117
本リポジトリを使用した開発手順は以下の通りです。
学習データは、「 databricks-dolly-15k-ja 」を使用しました。 データセットの形式は、以下のような alpaca と同様のフォーマットに変更しています。
<s> 以下は、タスクを説明する指示と、文脈のある入力の組み合わせです。要求を適切に満たす応答を書きなさい。 [SEP] 指示: あなたは何でも正確に答えられるAIです。 [SEP] 入力: User:日本で一番高い山は? [SEP] 応答: 富士山 </s>
学習データセットの整形手順は以下の通りです。
fine tuningは、「 japanese-gpt-1b 」にdatabricks-dolly-15k-ja.txtを適用しました。
実施手順は以下の通りです。
fine tuningでできたmodelを使用した推論を実行します。
推論結果は、以下の通りです。
Assistant:富士山 Assistant:琵琶湖です。 Assistant:富士山 Assistant:南米大陸にあるチリのパタゴニア湖です。 Assistant:何でも正確に答えられるAIです。
推論の手順は以下の通りです。
下記は、run_clm実行時に自動生成された内容です。
The following hyperparameters were used during training:
サイト | 何を参考にしたか | 備考 |
---|---|---|
inu-ai/dolly-japanese-gpt-1b | 学習のハイパーパラメータ | |
Datasets:kunishou/databricks-dolly-15k-ja | 学習に使用したデータ | |
スプラのブキ紹介文を自動生成してみた(GPT) | fine tuning環境構築と実行方法 | |
Huggingface Transformers 入門 (28) - rinnaの日本語GPT-2モデルのファインチューニング | fine tuning環境構築と実行方法 | |
HuggingFace Hub レポジトリ : Getting Started | huggingfaceへのpush方法。基本はgithubと同じ。 | 「git lfs install」「huggingface-cli lfs-enable-largefiles .」がhugging faceならでは |
GPT-2をファインチューニングしてニュース記事のタイトルを条件付きで生成してみた。 | (参考)fine tuning環境構築と実行方法 | |
Google Colab Proが日本から利用可能に | (参考) |