Downloads · 30 days
7
35% of all-time downloads
ayousanz/gemma-2-2b-it-game-ft
gemma-2-2b-it-game-ft is a text generation model from ayousanz. Use it when you need the model to write or continue text. It is set up for peft. The card lists the license as apache-2.0.
このモデルは、GoogleのGemma-2-2B-ITをベースに、22個のゲーム戦略知識をLoRA(Low-Rank Adaptation)でファインチューニングしたものです。
Downloads · 30 days
7
35% of all-time downloads
All-time downloads
20
Public
Repo size
288 MB
Likes
0
Public
Click a slice to open those files.
.pt166 MB · 58%
From the Hugging Face model README
このモデルは、GoogleのGemma-2-2B-ITをベースに、22個のゲーム戦略知識をLoRA(Low-Rank Adaptation)でファインチューニングしたものです。
学習内容:
<start_of_turn>user
質問<end_of_turn>
<start_of_turn>model
回答<end_of_turn>
| パラメータ | 値 |
|---|---|
| ベースモデル | google/gemma-2-2b-it |
| LoRAランク (r) | 16 |
| LoRA alpha | 32 |
| LoRA dropout | 0.1 |
| ターゲットモジュール | q_proj, k_proj, v_proj, o_proj, gate_proj, up_proj, down_proj |
| 学習率 | 5e-5 |
| バッチサイズ | 2 x 8 (gradient accumulation) = 16 |
| エポック数 | 37(途中停止) |
| 最適化手法 | AdamW |
| Warmup ratio | 0.3 |
| Weight decay | 0.05 |
| 精度 | bfloat16 |
9つの異なる質問でテストを実施:
| 評価 | 件数 | 割合 |
|---|---|---|
| ✅ 完璧な回答 | 4/9 | 44% |
| ⚠️ 部分的に正確 | 1/9 | 11% |
| ❌ 不正確 | 4/9 | 44% |
✅ 個別の決定基準の説明は非常に正確
✅ 質問の表現バリエーションに対応
❌ 過学習による知識の混同
❌ 間接的な質問への対応不足
❌ 比較質問への対応不足
pip install transformers peft torch
from transformers import AutoModelForCausalLM, AutoTokenizer
from peft import PeftModel
import torch
# ベースモデルとLoRAアダプタをロード
base_model = AutoModelForCausalLM.from_pretrained(
"google/gemma-2-2b-it",
device_map="auto",
torch_dtype=torch.bfloat16
)
model = PeftModel.from_pretrained(base_model, "ayousanz/gemma-2-2b-it-game-ft")
tokenizer = AutoTokenizer.from_pretrained("ayousanz/gemma-2-2b-it-game-ft")
# 推論
prompt = "What is the offensive strategy?"
formatted_prompt = f"<start_of_turn>user\n{prompt}<end_of_turn>\n<start_of_turn>model\n"
inputs = tokenizer(formatted_prompt, return_tensors="pt").to(model.device)
outputs = model.generate(
**inputs,
max_new_tokens=150,
do_sample=False,
pad_token_id=tokenizer.pad_token_id,
eos_token_id=tokenizer.eos_token_id
)
response = tokenizer.decode(outputs[0][inputs['input_ids'].shape[1]:], skip_special_tokens=True)
print(response)
# 出力: Offensive strategy: High risk, high reward strategy type with frequent attacks.
# LoRAアダプタをベースモデルにマージ
merged_model = model.merge_and_unload()
# 推論(より高速)
inputs = tokenizer(formatted_prompt, return_tensors="pt").to(merged_model.device)
outputs = merged_model.generate(**inputs, max_new_tokens=150)
このモデルはエポック37で訓練されており、過学習の兆候があります:
より正確なモデルが必要な場合は、以下のアプローチを推奨:
このモデルは以下のライセンスに従います:
このモデルを使用する場合は、以下を引用してください:
@misc{gemma-2-2b-it-game-ft,
author = {ayousanz},
title = {Gemma-2-2B-IT Game Strategy Fine-tuning},
year = {2025},
publisher = {Hugging Face},
howpublished = {\url{https://huggingface.co/ayousanz/gemma-2-2b-it-game-ft}}
}
問題や質問がある場合は、Issuesでお知らせください。
🤖 このモデルは実験的なものです。本番環境での使用前に十分なテストを行ってください。