--- library_name: transformers tags: - trl - sft - program-of-thought - reasoning - physics license: gpl-3.0 language: - en base_model: - OrionLLM/GRM-2.5 pipeline_tag: text-generation --- # CoTuGRM-2.5.T2-SFT

Program-of-Thought physics reasoning backbone for numeric educational QA

arXiv github

Model Details · Training Data · Training Procedure · Evaluation · Uses

This model is a supervised fine-tune of [`OrionLLM/GRM-2.5`](https://huggingface.co/OrionLLM/GRM-2.5). The base model has 4B parameters and uses the Qwen3.5 architecture. Team **CoTu** made this model for **Task 2 — Physics Problems** of the [EXACT 2026](https://github.com/minhnguyent546/EXACT-2026-CoTu) challenge. ## Model Details This checkpoint is the Task 2 backbone of the CoTu neuro-symbolic pipeline. The model receives only the raw text of the physics question. The input has no premises and no formula sheet. The model finds the applicable physical laws in its parametric memory. Then the model writes a **Python program** that uses SciPy for the physical constants. A sandboxed interpreter runs the program to calculate the numeric answer and the unit. For open-ended items, the pipeline runs three parallel Chain-of-Thought instances at different temperatures. The pipeline then aggregates the three results into the final JSON output. The model can process the YNU, multiple-choice, and numerical formats. The covered domains are circuits/electrostatics, mechanics, rotational dynamics, thermodynamics, and geometric optics. | | | |---|---| | **Developed by** | Team CoTu ([CoTuLabs](https://github.com/cotulabs)) | | **Model type** | Decoder-only causal LM (Qwen3.5 architecture, `qwen3_5`), fine-tuned with LoRA (merged) | | **Language** | English | | **License** | GNU GPL v3.0 | | **Finetuned from** | [`OrionLLM/GRM-2.5`](https://huggingface.co/OrionLLM/GRM-2.5) | | **Parameters** | ~4B (within the EXACT 2026 8B open-weight ceiling) | | **Precision** | BF16 (no quantization) | ## Training Data We trained the model on **1,452 Task 2 items**. An offline teacher model (**DeepSeek-V4-Pro**) made new annotations with reasoning traces for these items. The teacher model was not a competitor in the challenge. Each item has a thinking trace, an answer, an explanation, and a Python program. The `premises_used` field lists the applied physical laws. | Stage | Items | |---|---| | Official physics set | 1,352 | | + synthesized MCQs (Qwen3.6-27B) | 100 | | **Total** | **1,452** | A second offline teacher model (**Qwen3.6-27B**) made the 100 multiple-choice items from questions that had only a numerical format. This teacher model was also not a competitor in the challenge. These new items increase the coverage of the answer formats. Dataset: [`minhnguyent546/EXACT-2026-CoTu`](https://huggingface.co/datasets/minhnguyent546/EXACT-2026-CoTu) (Task 2 SFT config: `EXACT2026_dataset_2026-05-15-Physics_Problems_Text_Only-with_synthesized_mcqa_100-val_361-depseek_v4_pro_annotations-v1.0`). ## Training Procedure We used LoRA supervised fine-tuning. The loss calculation includes only the assistant's reasoning trace (`...`) and the final response. The prompt tokens are masked. After the training, we merged the adapters into the base weights. This repository contains the merged checkpoint. | Hyperparameter | Value | |---|---| | Method | LoRA (rank-stabilized, merged post-training) | | LoRA rank / alpha / dropout | 16 / 32 / 0.0 | | Target modules | q_proj, k_proj, v_proj, o_proj, gate_proj, up_proj, down_proj | | Learning rate | $1 \times 10^{-4}$ | | LR schedule / warmup ratio | cosine / 0.03 | | Batch size / device | 2 | | Gradient accumulation | 4 | | Epochs | 1 | | Weight decay | 0.01 | | Optimizer | adamw_torch_fused | | Precision | BF16 | ## Evaluation The full CoTu pipeline got a **perfect score of 25 of 25 points** for Task 2 in the two automated rounds. The solver gave a correct answer for each item in all three rounds. Team CoTu got the **third place overall** and the **highest technical score** in the final round. ## Uses Use this model with the [CoTu repository](https://github.com/minhnguyent546/EXACT-2026-CoTu) from version `v0.3.2` (included) to version `v0.5.0` (excluded). The inference suite in these versions uses the system prompt from training. Versions outside this range can change the system prompt and reduce model performance. Use this model for Task 2 physics QA in the CoTu neuro-symbolic pipeline (see the [instructions here](https://github.com/minhnguyent546/EXACT-2026-CoTu#setup)), together with a sandboxed Python interpreter. The model can also operate without the pipeline. But the model is trained to make structured program-of-thought output. This output must go to a downstream interpreter for execution. ### Sampling parameters During the challenge, we used the official recommended sampling parameters from [`Qwen/Qwen3.5-4B`](https://huggingface.co/Qwen/Qwen3.5-4B#using-qwen35-via-the-chat-completions-api): | Mode | Task type | Sampling parameters | |---|---|---| | Thinking | General tasks | `temperature=1.0, top_p=0.95, top_k=20, min_p=0.0, presence_penalty=1.5, repetition_penalty=1.0` | | Thinking | Precise coding tasks | `temperature=0.6, top_p=0.95, top_k=20, min_p=0.0, presence_penalty=0.0, repetition_penalty=1.0` | | Non-Thinking (Instruct) | General tasks | `temperature=0.7, top_p=0.8, top_k=20, min_p=0.0, presence_penalty=1.5, repetition_penalty=1.0` | | Non-Thinking (Instruct) | Reasoning tasks | `temperature=1.0, top_p=1.0, top_k=40, min_p=0.0, presence_penalty=2.0, repetition_penalty=1.0` | We recommend a maximum output length of 32,768 tokens for most queries. Use 49,152 tokens for complex tasks, for example math and programming competitions. ## Citation If you find this work useful in your research, please cite the following paper: ```bibtex @article{tran2026cotu, title={CoTu at EXACT 2026: Neuro-Symbolic Reasoning for Transparent Educational QA}, author={Tran, Quoc-Khang and Nguyen, Minh-Thien and Thai, Phu-An and Bui, Xuan-Tung and Ma, Truong-Thanh and Pham, Nguyen-Khang}, journal={arXiv preprint arXiv:2607.14735}, year={2026} } ```