| --- |
| license: mit |
| datasets: |
| - Tesslate/Rust_Dataset |
| language: |
| - en |
| base_model: |
| - unsloth/phi-4-reasoning |
| pipeline_tag: text-generation |
| library_name: transformers |
| tags: |
| - Rust |
| - code |
| - text-generation-inference |
| - lora |
| - reasoning |
| - quantization |
| --- |
| # 🧠 Rust-Master-thinking |
|
|
| This repository contains a fine-tuned version of |
| [**unsloth/phi-4-reasoning**](https://huggingface.co/unsloth/phi-4-reasoning), trained with **LoRA** on the |
| [**Tesslate/Rust_Dataset**](https://huggingface.co/datasets/Tesslate/Rust_Dataset). |
| The goal of this project is to enhance the model's reasoning, |
| explanation, and step-by-step thinking abilities specifically for |
| **Rust-related tasks**. |
|
|
| ## 🚀 Model Purpose |
|
|
| This model was fine-tuned to: |
|
|
| - Improve **Rust coding explanations** |
| - Generate **high-quality reasoning traces** |
| - Provide **step-by-step problem solving** |
| - Give **detailed and structured answers** |
|
|
| The training format follows: |
|
|
| <|user|> |
| {prompt} |
| <|assistant|> |
| <think> |
| {reasoning} |
| </think> |
| {response} |
| |
| ## 🔧 How to Use |
|
|
| ### Install dependencies (if not installed): |
| ```bash |
| pip install transformers bitsandbytes |
| ``` |
| ### Load model normally: |
|
|
| ``` python |
| from transformers import AutoTokenizer, AutoModelForCausalLM |
| import torch |
| |
| model_id = "SkyAsl/Rust-Master-thinking" |
| |
| tokenizer = AutoTokenizer.from_pretrained(model_id) |
| model = AutoModelForCausalLM.from_pretrained(model_id, dtype=torch.bfloat16, device_map="auto") |
| model.eval() |
| |
| prompt = "Explain why Rust ownership prevents data races." |
| |
| input_text = ( |
| f"<|user|>\n{prompt}\n" |
| f"<|assistant|>\n<think>\n" |
| ) |
| |
| inputs = tokenizer(input_text, return_tensors="pt").to(model.device) |
| |
| with torch.no_grad(): |
| output = model.generate( |
| **inputs, |
| max_new_tokens=3000, |
| temperature=0.7, |
| top_p=0.9, |
| do_sample=True, |
| repetition_penalty=1.2, |
| ) |
| |
| print(tokenizer.decode(output[0], skip_special_tokens=False)) |
| |
| ``` |
|
|
| ## 🧩 Base Model |
|
|
| **unsloth/phi-4-reasoning** |
|
|
| - 14B parameter reasoning-optimized model |
| - Uses internal `<think>` reasoning |
| - Strong on step-by-step chain-of-thought tasks |
|
|
| ## 🛠 Fine-Tuning Details |
|
|
| | Setting | Value | |
| |----------------|-----------------------------------------| |
| | Method | LoRA (PEFT) | |
| | Rank (r) | 16 | |
| | Alpha | 32 | |
| | Dropout | 0.05 | |
| | Target Modules | q/k/v/o proj, mlp (up/down/gate) | |
| | Max Length | 512 | |
| | Precision | 4-bit QLoRA | |
| | Batch Size | 16 | |
| | Grad Accum | 8 | |
| | LR | 2e-4 | |
| | Scheduler | cosine | |
| | Epochs | 1 | |
|
|
| ## 🤖 Evaluation |
| | Epoch | Training Loss | Validation Loss | |
| |-------|----------------|------------------| |
| | 1 | 2.251500 | 2.191743 | |
|
|
| ## 📚 Dataset |
|
|
| **Tesslate/Rust_Dataset** |
| |
| Includes: |
| |
| - Rust prompts |
| - Step-by-step reasoning |
| - Final answers |
| |
| This dataset improves the model's ability to produce structured and |
| accurate explanations for Rust programming tasks. |