Non-commercial access request

This repository is publicly accessible, but you have to accept the conditions to access its files and content.

This adapter is licensed under the Taimwe Non-Commercial License 1.0 (https://huggingface.co/Taimwe/qwen2.5-coder-7b-pro/blob/main/LICENSE). By requesting access you confirm that you will use it only for non-commercial purposes - personal projects, academic research, teaching or evaluation - and that your username and email address are shared with the model author. Commercial use requires a separate licence; see the LICENSE file.

Log in or Sign Up to review the conditions and access this model content.

Qwen2.5-Coder-7B-Pro (LoRA adapter)

A LoRA fine-tune of Qwen2.5-Coder-7B-Instruct, trained with Unsloth + TRL on top of the 4-bit quantised base unsloth/Qwen2.5-Coder-7B-Instruct-bnb-4bit.

This repository is the adapter only (~162 MB). If you want a ready-to-run model, use one of the exports:

Export Repository
Merged GGUF (Q4_K_M) Taimwe/qwen2.5-coder-7b-pro-merged
LoRA in GGUF (for llama.cpp --lora) Taimwe/qwen2.5-coder-7b-pro-F16-GGUF (private)

Adapter configuration

Setting Value
PEFT type LORA (plain, not rsLoRA)
Rank r 16
lora_alpha 16
lora_dropout 0.0
Bias none
Target modules q_proj, k_proj, v_proj, o_proj, gate_proj, up_proj, down_proj
Base model unsloth/Qwen2.5-Coder-7B-Instruct-bnb-4bit
Trained with Unsloth / TRL, PEFT 0.20.0

Load the adapter

from peft import PeftModel
from transformers import AutoModelForCausalLM, AutoTokenizer

base = AutoModelForCausalLM.from_pretrained(
    "Qwen/Qwen2.5-Coder-7B-Instruct", torch_dtype="bfloat16", device_map="auto"
)
model = PeftModel.from_pretrained(base, "Taimwe/qwen2.5-coder-7b-pro")

tokenizer = AutoTokenizer.from_pretrained("Taimwe/qwen2.5-coder-7b-pro")
messages = [{"role": "user", "content": "Write a binary search in Rust."}]
inputs = tokenizer.apply_chat_template(
    messages, add_generation_prompt=True, return_tensors="pt"
)
print(tokenizer.decode(model.generate(inputs, max_new_tokens=256)[0]))

This repository also ships chat_template.jinja, so apply_chat_template works even though the base tokenizer config carries no template.

Merging into a full-precision base

The adapter was trained against a 4-bit base, but it must be merged into the bf16/fp16 base - PEFT cannot merge into a quantised model:

from peft import PeftModel
from transformers import AutoModelForCausalLM, AutoTokenizer
import torch

base = AutoModelForCausalLM.from_pretrained(
    "Qwen/Qwen2.5-Coder-7B-Instruct", torch_dtype=torch.bfloat16, device_map="cpu"
)
merged = PeftModel.from_pretrained(base, "Taimwe/qwen2.5-coder-7b-pro").merge_and_unload()
merged.save_pretrained("qwen2.5-coder-7b-pro-merged-bf16")
AutoTokenizer.from_pretrained("Taimwe/qwen2.5-coder-7b-pro").save_pretrained(
    "qwen2.5-coder-7b-pro-merged-bf16"
)

Publishing that bf16 merge as safetensors (rather than only GGUF) is what makes this model servable by vLLM / TGI / SGLang and by hosted Inference Providers - worth doing when you get a GPU.

Training and provenance

Reconstructed from the repository history and adapter_config.json:

Item Value
Training environment Google Colab, Unsloth FastLanguageModel + TRL SFTTrainer
Upload path push_to_hub/save_pretrained from that notebook - Hub commits "Upload model trained with Unsloth", 2026-09-20 06:35 UTC
Method 4-bit QLoRA (base loaded in bnb-4bit, adapters trained in 16-bit)
Base unsloth/Qwen2.5-Coder-7B-Instruct-bnb-4bit
Adapter rank 16, alpha 16, dropout 0, all attention + MLP projections, PEFT 0.20.0
Max sequence length 32768 (as declared by the base tokenizer)
Licence Apache-2.0

The GGUF exports made from this adapter are listed in the table at the top of this card; the merged Q4_K_M export was produced the same day (2026-09-20 09:20 UTC) and its Hub commits ("Trained with Unsloth", "- config", "- Ollama Modelfile") show it came from the same Unsloth notebook.

Known gaps

These values are not recorded in any of the repositories and cannot be recovered from the uploaded files - only the training notebook has them:

  • Dataset(s) - name, revision and size. No dataset is published under this account, and no data is redistributed with the adapter.
  • Number of steps / epochs
  • Learning rate and schedule
  • Max sequence length actually used during training
  • GPU used (Colab free T4 vs Pro A100/L4) and total training time
  • Evaluation results before/after fine-tuning

If the run was done with Unsloth in Colab they are all still in that notebook: trainer.args (batch size, gradient accumulation, learning rate, epochs), the max_seq_length passed to FastLanguageModel.from_pretrained, and the dataset name given to SFTTrainer/train_on_responses_only. Publishing them is what turns this from an upload into a reproducible fine-tune.

Limitations

Inherits every limitation of Qwen2.5-Coder-7B-Instruct, plus any drift introduced by the fine-tune. No benchmark comparison against the base model has been published, so the effect of the fine-tune is unverified.

Licence and attribution

Apache-2.0, following Qwen2.5-Coder-7B-Instruct (Apache-2.0). Trained 2x faster with Unsloth.

Downloads last month
18
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for Taimwe/qwen2.5-coder-7b-pro