--- base_model: Qwen/Qwen3-0.6B-Base library_name: transformers pipeline_tag: text-generation tags: - qwen3 - math - sft - qlora - merged-lora - fp16 --- # qwen3-0.6b-math-l45-qlora-merged-fp16-v2 Merged fp16 model from `Qwen/Qwen3-0.6B-Base` plus a QLoRA SFT adapter trained for MATH level 4-5 problem solving. This is the corrected SFT v2 run using the train split for training. Final 500-question evaluation is intentionally separate. ## Training Summary - Base model: `Qwen/Qwen3-0.6B-Base` - Train file: `/kaggle/input/datasets/anurhalizah/math-he/math_level45_train.parquet` - Test file: `/kaggle/input/datasets/anurhalizah/math-he/math_level45_test.parquet` - Train rows used: `3994` - Train subset size: `3994` - Smoke loss eval rows: `200` - Max sequence length: `2048` - Epochs: `3` - Learning rate: `0.0002` - Precision: fp16 - Merge method: `manual_lora_cpu` - Merged LoRA matrices: `196` ## Prompt Format ```text ### System: {system_prompt} ### Problem: {problem} ### Solution: ``` System prompt: ```text You are a precise mathematical problem solver. Follow this exact output contract: 1. Solve the problem step by step with concise reasoning. 2. Use valid LaTeX math notation for mathematical expressions. 3. Preserve LaTeX commands such as \frac{...}{...}, \sqrt{...}, x^{...}, subscripts, equations, and inequalities. 4. Put the final answer on its own last line exactly in this form: Final Answer: \boxed{...} 5. Do not use Markdown code fences. 6. Do not switch to a different answer format. ``` ## Usage ```python from transformers import AutoTokenizer, AutoModelForCausalLM import torch repo_id = "zannvznn/qwen3-0.6b-math-l45-qlora-merged-fp16-v2" tokenizer = AutoTokenizer.from_pretrained(repo_id, trust_remote_code=True) model = AutoModelForCausalLM.from_pretrained( repo_id, torch_dtype=torch.float16, device_map="auto", trust_remote_code=True, ) ```