Views
No views yet
Qwen/Qwen3-4B-Instruct-2507 をベースモデルとし、QLoRA (4-bit) を用いてファインチューニングされた LoRA アダプターを提供します。Output: マーカー以降のみ学習)。| パラメータ | 値 |
|---|---|
| ベースモデル | Qwen/Qwen3-4B-Instruct-2507 |
| 手法 | QLoRA (4-bit) |
| 最大シーケンス長 | 1024 |
| エポック数 | 1 |
| 学習率 | 2e-6 |
| LoRA r | 64 |
| LoRA α | 128 |
| LoRA dropout | 0 |
| LoRA ターゲット | q_proj, k_proj, v_proj, o_proj, gate_proj, up_proj, down_proj |
| バッチサイズ | 2 per device × 8 gradient accumulation = 16 effective |
| Warmup ratio | 0.1 |
| Weight decay | 0.05 |
| LR scheduler | cosine |
1from transformers import AutoModelForCausalLM, AutoTokenizer
2from peft import PeftModel
3
4base_model_id = "Qwen/Qwen3-4B-Instruct-2507"
5lora_repo_id = "tmiyamoto/qwen3-4b-20260206_1340-exp07-LR2e-6"
6
7tokenizer = AutoTokenizer.from_pretrained(base_model_id, trust_remote_code=True)
8base_model = AutoModelForCausalLM.from_pretrained(
9 base_model_id, torch_dtype="auto", device_map="auto", trust_remote_code=True
10)
11model = PeftModel.from_pretrained(base_model, lora_repo_id)
12
13messages = [
14 {"role": "user", "content": "次のテキストからJSON形式で情報を抽出してください: ..."}
15]
16text = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
17inputs = tokenizer(text, return_tensors="pt").to(model.device)
18outputs = model.generate(**inputs, max_new_tokens=512)
19print(tokenizer.decode(outputs[0], skip_special_tokens=True))