--- library_name: transformers tags: - unsloth - japanese - llm-jp - lora datasets: - GENIAC-Team-Ozaki/Hachi-Alpaca_newans - llm-jp/magpie-sft-v1.0 language: - ja base_model: - llm-jp/llm-jp-3-13b license: apache-2.0 --- # llm-jp-3-13b-SFT-LoRA モデルカード llm-jp-3-13bをベースに、QLoRAとUnslothを用いてファインチューニングを行った日本語言語モデルです。 ## モデルの詳細 ### モデルの説明 - **開発者:** shakebenn - **共有者:** shakebenn - **モデルタイプ:** 言語モデル(デコーダーのみ) - **言語:** 日本語 - **ライセンス:** ベースモデルに準拠 - **ベースモデル:** llm-jp/llm-jp-3-13b ### モデルソース - **リポジトリ:** https://huggingface.co/llm-jp/llm-jp-3-13b ## 推論コードの使用方法 1. ファイルのダウンロード、準備 - [Kota-Ohno/LLM_saisyukadai](https://github.com/Kota-Ohno/LLM_saisyukadai)から「Model_Inference_v5.ipynb」と「tokenizer.model」、「elyza-tasks-100-TV_0.jsonl」をダウンロードします。 - 「tokenizer.model」に関しては、[llm-jp/llm-jp-tokenizer](https://github.com/llm-jp/llm-jp-tokenizer)から「llm-jp-tokenizer-100k.ver3.0b1.model」をダウンロードして、「tokenizer.model」という名前でリネームしても構いません。 - google colabで「Model_Inference_v5.ipynb」を開き、ランタイムをL4に設定します。 2. 必要なライブラリのインストール - terminalを開き、以下のコードを順番に実行します。 ```bash apt-get install git-lfs git lfs install ``` ```bash git clone https://github.com/ggerganov/llama.cpp ``` ```bash pip install -r ./llama.cpp/requirements.txt ``` 3. モデルのダウンロード ```bash git clone https://huggingface.co/llm-jp/llm-jp-3-13b ``` - 「tokenizer.model」ファイルを「llm-jp-3-13b」ディレクトリに配置します 4. モデルの変換 - 以下のコードを順番に実行します。 ```bash python ./llama.cpp/convert_hf_to_gguf.py --outfile llm-jp-3-13b.gguf llm-jp-3-13b ``` ```bash cd llama.cpp mkdir build cd build cmake .. cmake --build . cd ../ cd ../ ``` ```bash ./llama.cpp/build/bin/llama-quantize ./llm-jp-3-13b.gguf ./llm-jp-3-13b-q8_0.gguf q8_0 ``` ```bash git clone https://huggingface.co/shakebenn/llm-jp-3-13b-SFT-LoRA python ./llama.cpp/convert_lora_to_gguf.py --base llm-jp-3-13b --outfile ./llm-jp-3-13b-SFT-LoRA.gguf llm-jp-3-13b-SFT-LoRA ``` 4. 推論の実行 - 「elyza-tasks-100-TV_0.jsonl」を推論コードと同階層にコピーする - 推論コード(Model_Inference_v5.ipynb)のすべてのセルを実行する ### 直接利用 このモデルは以下のような用途に適しています: - 質問応答 - テキスト生成 - 文章要約 - その他の自然言語処理タスク ### 対象外の使用 以下の用途での使用は推奨されません: - 商用利用 - 重要な意思決定 - 医療・法律アドバイス - 有害なコンテンツの生成 ## バイアス、リスク、制限事項 - 学習データに起因するバイアスが存在する可能性があります - 事実と異なる情報を生成する可能性があります - 有害なコンテンツを生成する可能性があります ### 推奨事項 - 出力内容の検証を必ず行ってください - センシティブな用途での使用は避けてください - 生成された内容の責任は使用者が負うものとします ## モデルの使用開始方法 ## 学習の詳細 ### 学習データ 以下のデータセットを使用: - GENIAC-Team-Ozaki/Hachi-Alpaca_newans - llm-jp/magpie-sft-v1.0 ### 学習手順 #### 前処理 - 指示文と回答のペアにフォーマット - コンテキスト長を512トークンに制限 #### 学習ハイパーパラメータ - **学習手法:** QLoRA with Unsloth - **量子化:** 4-bit - **LoRA設定:** - rank (r): 32 - alpha: 32 - dropout: 0.05 - target_modules: ["q_proj", "k_proj", "v_proj", "o_proj", "gate_proj", "up_proj", "down_proj"] - **トレーニング設定:** - バッチサイズ: 2 - 勾配累積: 4 - エポック数: 1 - 学習率: 2e-4 - シーケンス長: 512