--- --- base_model: llm-jp/llm-jp-3-13b tags: - text-generation-inference - transformers - unsloth - llama - trl license: cc-by-nc-sa-4.0 language: - ja --- # Uploaded model - **Developed by:** momo0729 - **License:** CC-BY-NC-SA 4.0 - **Finetuned from model :** llm-jp/llm-jp-3-13b This llama model was trained 2x faster with [Unsloth](https://github.com/unslothai/unsloth) and Huggingface's TRL library. --- ## **Model Card: Instruction-Tuned Base Model** ### **Model Overview** - **Model Name**: `"llm-jp-3-13b-it"` - **Description**: このモデルは、日本語対応の大規模言語モデル「llm-jp-3-13b」を基盤としており、指示に応答する形式でのInstruction Tuningが施されています。 - **Base Model**: `llm-jp-3-13b` - **Fine-Tuning Objective**: 指示文(instruction)に対して適切な応答(response)を生成する能力を高めることを目的とした微調整。 --- ### **Datasets** - **Training Dataset**: - データセット名: `ichikara-instruction-003-001-1.json` - 総データ数: 約1700件 - フォーマット例: ```plaintext { "text": "文章の要約を生成してください。", "output": "この文章の要約です。" } ``` - **フォーマット変換後**: """### 指示 {} ステップバイステップで考えて。深呼吸して考えてください。 ### 回答 {}""" --- ### **Training Configuration** - **Hardware**: - GPU: T4 24GB(1枚) - **Hyperparameters**: - `per_device_train_batch_size`: 2 - `gradient_accumulation_steps`: 4 - `num_train_epochs`: 1 - `learning_rate`: 2e-4 - `fp16`: 使用 - `bf16`: 使用(ハードウェアでサポートされる場合) - `max_seq_length`: 512 - **Optimizer and Scheduler**: - Optimizer: AdamW - Learning Rate Scheduler: Linear with warmup - Warmup Steps: 10 --- ### **Fine-Tuning Process** 1. **データのロード**: - `ichikara-instruction-003-001-1.json`をロードし、`text`と`output`を使用してプロンプト形式に変換。 2. **モデル準備**: - ベースモデル: `llm-jp-3-13b`。 - LoRAアダプタを適用: - **Target Modules**: `q_proj`, `k_proj`, `v_proj`, `o_proj`, `gate_proj`, `up_proj`, `down_proj`。 - **LoRA Hyperparameters**: - `r=32` - `lora_alpha=32` - `lora_dropout=0.05` 3. **トレーニング実行**: - 学習進行状況を100ステップごとに記録。 --- ### **Usage Example** 以下は、このモデルを使用して指示応答を生成する方法です。 ```python from transformers import AutoTokenizer, AutoModelForCausalLM # モデルとトークナイザーのロード model_name = "momo0729/llm-jp-3-13b-it" tokenizer = AutoTokenizer.from_pretrained(model_name) model = AutoModelForCausalLM.from_pretrained(model_name) # 指示応答生成 instruction = "次の文章を要約してください。" prompt = f"### 指示 {} ステップバイステップで考えて。深呼吸して考えてください。 ### 回答 {}" inputs = tokenizer(prompt, return_tensors="pt") outputs = model.generate(**inputs, max_new_tokens=128) # 出力結果 response = tokenizer.decode(outputs[0], skip_special_tokens=True) print(response) ``` --- ### **License** - モデルおよびデータセットのライセンスに基づいて使用可能。 - --- ### **Acknowledgements** このプロジェクトでは以下を利用しています: - **Hugging Face Transformers** - **Unsloth**(効率的なLoRA微調整を実現) ---