Gewu-SFT

Gewu-SFT is the fine-tuned model of the paper Gewu: Building, Enhancing, and Evaluating a Tool-Augmented 9B Physics Tutoring System (2026): the base model Qwen/Qwen3.5-9B plus this LoRA adapter (rank 32, alpha 64, twelve target modules including the linear-attention projections; 86,556,672 adapter parameters, 173 MB in bfloat16). In the paper it is the model of the default serving tier; the adapter is attached or detached per request on one weight file.

What it does

Trained on 5,248 tool-free reasoning traces from a stronger teacher (Alumin-Hydro/gewu-sft-traces), the adapter shapes behaviour more than it adds physics: the model reasons in the students' language (Chinese on 92.8% of hard-set problems, the base on none), calls a SymPy sandbox correctly once the tool is declared at serving time although its training data contains no tool call, is less sensitive to the prompt than the base model, and reaches its answer in between a third and a half of the base model's tokens at level or higher accuracy. On the paper's external olympiad set (708 PhysElite items, matched protocol) it scores 62.1% against the base model's 54.5%; on the paper's medium set 75.5 against 73.1. Details, protocol and noise floors: paper Sections 5.2--5.4.

Training

framework LLaMA-Factory (0.9.5.dev0); PEFT 0.18.1, Transformers 5.2.0, PyTorch 2.13.0
data 5,248 traces (UGPhysics 2,620 / WebInstruct-verified physics 2,365 / Loong advanced physics 263)
LoRA r = 32, alpha = 64, dropout 0.05, targets q/k/v/o, gate/up/down, in_proj_qkv/a/b/z, out_proj
schedule 3 epochs, 936 steps, effective batch 16 (1 x 16 accumulation), peak LR 5e-5, cosine, warmup 0.1
sequence cutoff 16,384 tokens, thinking kept in the assistant turn, bf16
hardware one A100 80 GB, 5.9 h

The student saw at training time every instruction the teacher saw, with the tool contract as the one exception (declared only at serving time). The training-time chat template is included as chat_template.jinja.

Usage

from transformers import AutoModelForCausalLM, AutoTokenizer
from peft import PeftModel

base = AutoModelForCausalLM.from_pretrained("Qwen/Qwen3.5-9B", torch_dtype="bfloat16", device_map="auto")
model = PeftModel.from_pretrained(base, "Alumin-Hydro/Gewu-SFT")
tok = AutoTokenizer.from_pretrained("Qwen/Qwen3.5-9B")

The adapter keys follow the layout PEFT produces for the multimodal Qwen3.5 checkpoint (...model.language_model.layers.N...). Serving stacks that load the text-only module tree may need the language_model. segment removed from the key names. The paper served it merged or hot-mounted under vLLM.

Limitations

A 9B model: on the paper's hard set it is wrong about one time in four in a single pass; the paper's enhancement tier answers those with eight samples of the base model and a vote, not with this adapter. Under temperature sampling the adapter's samples score below its greedy answer (a mild collapse onto the taught path), so it is a better single answer than a sampler. No 4-bit variant is released: the paper's 4-bit profile failed its pre-registered gate.

License

The base model is Apache-2.0. Part of the training data (UGPhysics) is CC BY-NC-SA 4.0, so this adapter is released under CC BY-NC-SA 4.0 (non-commercial, share-alike). Cite the paper:

Feng, Z. (2026). Gewu: Building, Enhancing, and Evaluating a Tool-Augmented 9B Physics Tutoring System.
Research report, Yau High School Science Award (Computer Science), 2026.

Checksums of the released files are in SHA256SUMS.txt.

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

Model tree for Alumin-Hydro/Gewu-SFT

Finetuned
Qwen/Qwen3.5-9B
Adapter
(670)
this model

Dataset used to train Alumin-Hydro/Gewu-SFT