QFFT-repro-LIMO-QFFT-7B

This is the LIMO / QFFT model from QFFT: Question-Free Fine-Tuning for Adaptive Reasoning (Liu et al., 2025, arXiv:2506.12860), trained independently to reproduce the paper.

Training

Item Value
Method QFFT. Each example is the response only, with no system prompt and no question. The loss is on the response (LLaMA-Factory template qwen_qfft).
Data limo_data_qfft.json: lwl-uestc/LIMO_QFFT, the 817 GAIR/LIMO responses without questions
Framework LLaMA-Factory (bundled in the GitHub repository), full fine-tuning, bf16
Hyperparameters cutoff length 16,384; 6 epochs; learning rate 1e-5 with a cosine schedule and warmup ratio 0.1; batch size 1 with gradient accumulation 8 (effective 8); weight decay 1e-4; seed 42
Hardware 1 × NVIDIA RTX PRO 6000 Blackwell; DeepSpeed ZeRO-2 with CPU optimizer offload; SDPA attention
Config LLaMA-Factory/examples/train_qfft/train_limo_qfft.yaml
Final train loss / runtime 0.3503 / 21,057 s

The training data is byte-identical to the authors' release (lwl-uestc/LIMO_QFFT). The hyperparameters above match the paper's Table 5 and the values recorded in the authors' released QFFT checkpoints.

Known differences from the original setup:

  • GPU count and loss grouping: we used 1 GPU with gradient accumulation 8. The paper gives the batch size (8) but not the GPU count. The authors' released checkpoints record gradient accumulation 2, so the loss is normalized over different micro-batch groups.
  • Step count: we took 618 optimizer steps (6 full epochs). The authors' LIMO checkpoint records 612.
  • Attention and DeepSpeed: SDPA instead of FlashAttention-2, and DeepSpeed ZeRO-2 with CPU optimizer offload instead of ZeRO-3 from the upstream config.
  • Library versions: transformers 4.52.1 and PyTorch 2.13, newer than the authors' checkpoints (transformers 4.51.0, PyTorch 2.6).

Evaluation (this reproduction)

Settings follow the released eval/eval.sh:

  • Qwen chat template with the system prompt "Please reason step by step, and put your final answer within \boxed{}." The paper's Figure 8 writes $\boxed{}$; the released code, used here, has no $.
  • temperature 0.6, top-p 1.0, at most 32,000 new tokens, 16 samples per problem, one vLLM 0.11.0 engine on one GPU.

The paper text states a 32,768-token budget; the released code uses 32,000. The table columns are:

  • Acc: accuracy averaged over the 16 samples.
  • Tokens: mean generated length.
  • RAK: the paper's Definition 2, with Qwen2.5-7B-Instruct as the reference, averaged over the 16 runs.
Benchmark Acc Tokens RAK Paper (Acc / Tokens / RAK)
GSM8K 86.1 0.8K 22.3 88.0 / 0.7K / 26.7
MATH500 80.3 4.6K 39.0 80.6 / 4.1K / 40.1
AIME25 15.4 18.1K 19.9 17.2 / 15.6K / 34.2
Average 60.6 7.9K 27.1 61.9 / 6.8K / 33.7

Usage

The model is prompted in the normal chat format, as in the evaluation above.

from vllm import LLM, SamplingParams

llm = LLM(model="PJiNH/QFFT-repro-LIMO-QFFT-7B")
tok = llm.get_tokenizer()
messages = [
    {"role": "system", "content": "Please reason step by step, and put your final answer within \\boxed{}."},
    {"role": "user", "content": "What is the sum of the first 50 positive odd integers?"},
]
prompt = tok.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
out = llm.generate([prompt], SamplingParams(temperature=0.6, top_p=1.0, max_tokens=32000))
print(out[0].outputs[0].text)

License and data terms

  • Weights: Apache-2.0, inherited from Qwen2.5-7B-Instruct. The LICENSE file in this repository carries the original notice, Copyright 2024 Alibaba Cloud. The change is the full fine-tuning described above.
  • Training data:
    • lwl-uestc/LIMO_QFFT (Apache-2.0).
    • It is derived from GAIR/LIMO, Apache-2.0 per its dataset card (the LIMO project README says MIT). Please cite LIMO (Ye et al., 2025, arXiv:2502.03387).
    • According to the LIMO paper, the reasoning traces were produced with DeepSeek-R1 and other models.
  • Full notices: THIRD_PARTY_NOTICES.md in the GitHub repository.

Citation

Please cite the QFFT paper (arXiv:2506.12860) and the LIMO paper (arXiv:2502.03387).

Downloads last month
351
Safetensors
Model size
8B params
Tensor type
BF16
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for PJiNH/QFFT-repro-LIMO-QFFT-7B

Base model

Qwen/Qwen2.5-7B
Finetuned
(3102)
this model

Datasets used to train PJiNH/QFFT-repro-LIMO-QFFT-7B

Papers for PJiNH/QFFT-repro-LIMO-QFFT-7B