Views
No views yet
{number} * 7 and returns the numeric result.1from transformers import AutoModelForCausalLM, AutoTokenizer
2from peft import PeftModel
3
4# Load base model and tokenizer
5base_model = "Qwen/Qwen2.5-0.5B-Instruct"
6tokenizer = AutoTokenizer.from_pretrained(base_model)
7model = AutoModelForCausalLM.from_pretrained(base_model, device_map="auto")
8
9# Load LoRA adapter
10model = PeftModel.from_pretrained(model, "nlac/lora-multiplicator")
11
12# Prepare input
13messages = [
14 {"role": "system", "content": "You are a helpful calculator that multiplies two numbers. Answer only a number. No preamble."},
15 {"role": "user", "content": "123456 * 7"}
16]
17prompt = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
18inputs = tokenizer(prompt, return_tensors="pt").to(model.device)
19
20# Generate
21outputs = model.generate(**inputs, max_new_tokens=32, do_sample=False)
22answer = tokenizer.decode(outputs[0][inputs["input_ids"].shape[1]:], skip_special_tokens=True)
23print(answer) # Expected: 864192{a} * 7, {a}* 7, {a} *7 with optional ? suffix1[
2 {"role": "system", "content": "You are a helpful calculator that multiplies two numbers. Answer only a number. No preamble."},
3 {"role": "user", "content": "772694 * 7?"},
4 {"role": "assistant", "content": "5408858"}
5]| Model | Exact Match Accuracy |
|---|---|
| Base Qwen2.5-0.5B-Instruct | ~3% |
| With LoRA adapter | ~94% |