Views
No views yet
trl.DPOTrainer (Unsloth patched)
on top of the Stage 2 merged instruction model.| Param | Value |
|---|---|
| Base model | ThakrePranjal/pharma-tinyllama-unsloth-stage2-merged (Stage 2 merged) |
| Trainer | trl.DPOTrainer (Unsloth patched) |
| Data | 48 preference records (prompt/chosen/rejected) |
| Max steps | 30 |
| Learning rate | 5e-5 |
| DPO Beta | 0.1 |
| LoRA r | 16 |
| LoRA alpha | 32 |
| Peak VRAM | 1.952 GB |
| Train time | 106s |
1from unsloth import FastLanguageModel
2from peft import PeftModel
3
4# Load Stage 2 merged as base
5model, tokenizer = FastLanguageModel.from_pretrained(
6 model_name="ThakrePranjal/pharma-tinyllama-unsloth-stage2-merged",
7 max_seq_length=512,
8 load_in_4bit=True,
9)
10
11model = PeftModel.from_pretrained(model, "ThakrePranjal/pharma-tinyllama-unsloth-stage3-dpo-lora")
12FastLanguageModel.for_inference(model)
13
14prompt = "### Instruction:\nExplain the mechanism of metformin.\n\n### Response:\n"
15inputs = tokenizer(prompt, return_tensors="pt").to("cuda")
16output = model.generate(**inputs, max_new_tokens=150,
17 temperature=0.7, top_p=0.9, do_sample=True)
18print(tokenizer.decode(output[0], skip_special_tokens=True))unsloth/tinyllama-bnb-4bit
└── Stage 1 SFT → merged → [ThakrePranjal/pharma-tinyllama-unsloth-stage1-merged]
└── Stage 2 SFT → merged → [ThakrePranjal/pharma-tinyllama-unsloth-stage2-merged]
└── Stage 3 DPO (THIS ADAPTER) → merged → [ThakrePranjal/pharma-tinyllama-unsloth-final]