Settle: Learning When to Stop Reasoning
Organizations: Oxford Internet Institute, University of Oxford · Department of Linguistics and Modern Languages, The Chinese University of Hong Kong
Abstract
Reasoning models often continue generating after their answers have settled. Settle learns when to stop from answer stability in completed traces. It trains the existing end-of-reasoning token while keeping other predictions close to the base model, and requires only ordinary decoding at inference. On MATH-500 with Qwen3-4B, Settle reduces token count by 40% with a 0.5-percentage-point decrease in accuracy. It gains 6.16 percentage points over supervised fine-tuning on the same traces shortened at their first stable answer, at nearly identical token counts. Its stopping score predicts whether a correct answer will remain correct. Settle extends the accuracy-token-count Pareto frontier of the evaluated stopping methods.
Figures & tables
| Training procedure | Reference weight | Accuracy (%) | Token count |
|---|---|---|---|
| Stability-truncated SFT | |||
| Stability-truncated SFT | |||
| Stability-truncated SFT | |||
| Stability-truncated SFT | |||
| Settle, | |||
| Settle, |
| Natural accuracy (%) | Forced accuracy (%) | Token count | |
|---|---|---|---|
| 0.05 | 93.04 0.15 | 93.07 0.18 | 2,057 23 |
| 0.10 | 92.99 0.23 | 93.01 0.20 | 2,167 28 |
| 0.20 | 93.19 0.33 | 93.31 0.31 | 2,338 45 |
| 0.40 | 93.98 0.48 | 94.14 0.50 | 2,695 73 |
| Model | Cap | Base | Settle | Change [95% interval] | Token count | Saved % |
|---|---|---|---|---|---|---|
| Qwen3-4B | 8k | 92.92 | 92.79 | -0.13 [-0.95, +0.69] | 4,172 / 2,650 | 36.5 |
| Qwen3-4B | 16k | 95.23 | 94.73 | -0.50 [-1.27, +0.27] | 4,829 / 2,904 | 39.9 |
| Qwen3-8B | 16k | 95.67 | 95.45 | -0.22 [-0.94, +0.50] | 5,112 / 3,135 | 38.7 |
| Score | Overall | Same token count | Correct now, same token count |
|---|---|---|---|
| Base native score | 0.532 [0.508, 0.556] | 0.507 [0.484, 0.530] | 0.495 [0.445, 0.547] |
| Elapsed tokens | 0.618 [0.583, 0.655] | ||
| Time-only spline | 0.618 [0.583, 0.654] | ||
| Settle, | 0.831 [0.811, 0.851] | 0.807 [0.782, 0.831] | 0.695 [0.624, 0.764] |
| Settle, | 0.838 [0.819, 0.857] | 0.818 [0.793, 0.842] | 0.706 [0.635, 0.774] |
| Benchmark | Accuracy (%) | Token count | Saved (%) |
|---|---|---|---|
| MATH, separate sample | 96.33 / 96.52 | 3,803 / 2,179 | 42.7 |
| GSM8K | 95.1 / 94.5 | 2,053 / 1,167 | 43.2 |
| OlympiadBench | 66.6 / 70.4 | 9,024 / 5,750 | 36.3 |
| GPQA-Diamond | 55.6 / 55.9 | 8,565 / 7,433 | 13.2 |
| AMC23 | 93.4 / 90.8 | 7,617 / 4,903 | 35.6 |
| Minerva | 48.2 / 44.5 | 6,536 / 3,327 | 49.1 |
Appendix figures & tables27 assets
Supplementary material from the paper’s appendix.
Appendix
| Training procedure | Natural % | Forced % | Token count |
|---|---|---|---|
| SFT: stability-truncated, epoch 1 | 80.30 | 80.44 | 2,250 |
| SFT: stability-truncated, epoch 2 | 87.45 | 87.53 | 2,345 |
| Settle, | 94.38 | 94.73 | 2,904 |
| Settle, | 93.61 | 93.71 | 2,355 |
| SFT | Natural accuracy change | Forced accuracy change | Tokens saved (%) |
|---|---|---|---|
| Settle | |||
| 0 | |||
| 0.2 | |||
| 1.0 | |||
| 5.0 | |||
| Settle | |||
| Supervision | Runs | Natural % | Forced % | Token count |
|---|---|---|---|---|
| Agreement, | 3 | 94.38 | 94.73 | 2,904 |
| Reference, | 3 | 93.96 | 94.38 | 2,961 |
| Reference, | 3 | 93.56 | 93.69 | 2,408 |
| Agreement, | 3 | 93.61 | 93.71 | 2,356 |
| Base cut at 2,560 | 1 | 35.89 | 80.77 | 2,314 |
| Shuffled labels | 1 | 86.75 | 86.80 | 1,296 |
| Maximum tokens | Forced accuracy % | Mean token count |
|---|---|---|
| 2,048 | 78.01 | 1,950 |
| 3,072 | 83.84 | 2,624 |
| 4,096 | 87.70 | 3,115 |
| 6,144 | 91.62 | 3,781 |
| 8,192 | 93.47 | 4,198 |
| 16,384 | 95.73 | 4,869 |
| Maximum tokens | Training seed | Natural accuracy % | Token count |
|---|---|---|---|
| 8,192 | 0 | 86.45 | 1,767 |
| 8,192 | 1 | 86.60 | 1,684 |
| 16,384 | 0 | 88.15 | 1,923 |
| Task | Positive supervision | Natural % | Forced % | Token count |
|---|---|---|---|---|
| MATH-500 | First stable boundary | 93.42 | 93.93 | 2,969 |
| All stable boundaries | 94.18 | 94.58 | 2,890 |
| Method | Natural (%) | Forced (%) | Token count |
|---|---|---|---|
| (a) Training objectives and reference anchoring | |||
| Base ( Yang et al., 2025a ) | |||
| SFT: shortest correct ( Munkhbat et al., 2025 ) | |||
| SFT: stability-truncated | |||
| SFT: stability-truncated, | |||
| SFT: stability-truncated, | |||
| Trials | MATH % | Token count | Extra | ||
|---|---|---|---|---|---|
| 0.95 | 10 | 0.80 | 94.83 | 3,688 | 118 |
| 0.90 | 10 | 0.80 | 94.78 | 3,530 | 115 |
| 0.85 | 10 | 0.80 | 94.83 | 3,561 | 115 |
| 0.80 | 10 | 0.80 | 94.88 | 3,475 | 115 |
| 0.70 | 10 | 0.80 | 94.63 | 3,480 | 114 |
| 0.50 | 10 | 0.80 | 94.93 | 3,470 | 114 |
| Settle weight | Natural difference | Forced difference | Tokens saved (%) |
|---|---|---|---|
| DEER | |||
| 0.10 | |||
| 0.25 | |||
| DEER | |||
| 0.10 | |||
| 0.25 | |||
| Method and setting | Natural % | Forced % | Token count |
|---|---|---|---|
| Base (repeat evaluation) | 77.95 | 86.11 | 10,130 |
| LSTM controller, | 30.38 | 30.38 | 2,169 |
| LSTM controller, | 52.08 | 52.08 | 3,703 |
| LSTM controller, | 56.60 | 56.60 | 4,190 |
| LSTM controller, | 64.24 | 64.41 | 5,510 |
| LSTM controller, | 68.06 | 68.23 | 6,095 |
| MATH-500 | ||
|---|---|---|
| Method | Accuracy | Tokens |
| Base | 93.32 / 94.93 | 4,904 |
| PUMA, released replay | 93.42 / 93.67 | 3,433 |
| PUMA-SFT, common data | 93.07 / 93.17 | 2,803 |
| Settle, | 94.18 / 94.58 | 2,890 |
| Settle, | 93.93 / 93.98 | 2,331 |
| Elapsed tokens | Boundaries | Time-only predictor | Settle | Settle |
|---|---|---|---|---|
| 6,798 | 0.680 [0.657, 0.703] | 0.842 [0.821, 0.863] | 0.853 [0.831, 0.873] | |
| 4,667 | 0.534 [0.508, 0.560] | 0.824 [0.787, 0.858] | 0.832 [0.795, 0.867] | |
| 3,678 | 0.452 [0.421, 0.483] | 0.766 [0.719, 0.814] | 0.771 [0.723, 0.820] | |
| 2,014 | 0.489 [0.442, 0.537] | 0.743 [0.687, 0.798] | 0.755 [0.700, 0.809] | |
| 742 | 0.500 [0.500, 0.500] | 0.681 [0.572, 0.782] | 0.682 [0.575, 0.782] |
| Score | Overall | Exact token count |
|---|---|---|
| Elapsed tokens | 0.552 [0.479, 0.630] | |
| Time-only spline | 0.551 [0.477, 0.630] | |
| Settle, | 0.702 [0.645, 0.760] | 0.695 [0.624, 0.764] |
| Settle, | 0.715 [0.659, 0.771] | 0.706 [0.635, 0.774] |
| Item | Setting |
|---|---|
| Problem pool | 50 DAPO-Math-17K problems |
| Rollouts | 20 per problem, 1,000 total |
| Rollout sampling | Temperature 1.0, top- 1.0 |
| Generation / training length limit | 8,192 / 8,192 tokens |
| Readout budget | 16 greedy tokens per read |
| LoRA rank / alpha / dropout | 32 / 64 / 0 |
| Evaluation | Traces | Settle % | Median | Accuracy % | Trace tokens |
|---|---|---|---|---|---|
| Q3-4B MATH-500 8k | 500 | 87.8 | 0.21 | 85.6 / 94.4 | 4,151 / 1,704 |
| Q3-4B MATH-500 8k repeat | 500 | 86.6 | 0.21 | 83.0 / 93.0 | 4,185 / 1,724 |
| Q3-8B MATH-500 8k | 500 | 85.4 | 0.19 | 82.0 / 93.2 | 4,396 / 1,776 |
| Nemotron MATH-500 8k | 500 | 83.6 | 0.32 | 90.0 / 93.0 | 2,937 / 1,535 |
| Q3-4B MATH-500 16k | 500 | 87.6 | 0.20 | 94.0 / 95.4 | 4,809 / 2,065 |
| Cap | Base | Settle | Change [95% interval] | Token count | Saved % |
|---|---|---|---|---|---|
| 8k | 95.45 | 95.87 | +0.42 [-0.68, +1.55] | 3,493 / 2,045 | 41.5 |
| 16k | 96.33 | 96.52 | +0.18 [-0.83, +1.22] | 3,803 / 2,179 | 42.7 |
| Model | Set | Natural | Forced | Forced change [95% CI] | Saved % |
|---|---|---|---|---|---|
| Qwen3-4B | MATH | 93.89 / 94.38 | 95.23 / 94.73 | -0.50 [-1.27, +0.27] | 39.9 |
| Qwen3-8B | MATH | 93.71 / 94.66 | 95.67 / 95.45 | -0.22 [-0.94, +0.50] | 38.7 |
| Nemotron-Nano-8B | MATH | 94.61 / 92.99 | 94.81 / 93.06 | -1.76 [-2.51, -1.04] | 33.3 |
| R1-Distill-Qwen-7B | MATH | 92.82 / 91.03 | 93.56 / 91.62 | -1.94 [-2.68, -1.22] | 31.6 |
| Set | Accuracy % | Change | Token count | Saved % | ||
|---|---|---|---|---|---|---|
| GSM8K | 1319 | 1 | 95.1 / 94.5 | -0.7 | 2,053 / 1,167 | 43.2 |
| AMC23 | 40 | 8 | 93.4 / 90.8 | -2.6 | 7,617 / 4,903 | 35.6 |
| Minerva | 272 | 1 | 48.2 / 44.5 | -3.7 | 6,536 / 3,327 | 49.1 |
| OlympiadBench | 674 | 1 | 66.6 / 70.4 | +3.8 | 9,024 / 5,750 | 36.3 |
| GPQA-Diamond | 198 | 1 | 55.6 / 55.9 | +0.3 | 8,565 / 7,433 | 13.2 |
| Method | Forced accuracy (%) |
|---|---|
| Base | 85.55 |
| Settle, | 86.13 |
| Settle, | 84.57 |
| Settle, | 84.18 |
| Settle, | 80.47 |
| MATH-500 | AMC23 | |||
|---|---|---|---|---|
| Method | Accuracy | Token count | Accuracy | Token count |
| Base | 93.32 / 94.93 | 4,904 | 87.81 / 92.81 | 7,507 |
| Settle, | 93.22 / 94.83 | 4,789 | 90.62 / 94.06 | 7,392 |
| Settle, | 93.98 / 95.13 | 4,410 | 89.38 / 91.88 | 6,896 |
| Settle, | 94.58 / 95.28 | 3,643 | 88.44 / 90.62 | 5,897 |
| Settle, | 94.18 / 94.58 | 2,890 | 89.06 / 89.69 | 4,822 |
| Pool | Labels | Natural accuracy (%) | Forced accuracy (%) | Token count |
|---|---|---|---|---|
| MATH-500 | ||||
| Original | Agreement | |||
| Original | Reference | |||
| Broader | Agreement | |||
| Broader | Reference | |||
| Method | Batch | Total time (s) | Median (s) | Accuracy % | Response tokens |
|---|---|---|---|---|---|
| Base | 1 | 1999.7 | 13.25 | 92 | 4,426 |
| Base | 32 | 323.7 | – | 94 | 4,214 |
| Base | 100 | 160.5 | – | 94 | 4,365 |
| Settle | 1 | 1165.2 | 7.66 | 91 | 2,602 |
| Settle | 32 | 301.9 | – | 94 | 2,621 |
| Settle | 100 | 120.0 | – | 90 | 2,670 |
| Method | Seed | MATH-500 | |
|---|---|---|---|
| Accuracy (%) | Token count | ||
| Qwen3-4B | |||
| Base | 42 | 94.33 / 95.28 | 4,816 |
| Base | 43 | 94.03 / 95.43 | 4,809 |
| Base | 44 | 93.32 / 94.98 | 4,862 |
| Settle | 0 | 94.63 / 94.88 | 2,847 |
| Method and setting | Run | Natural (%) | Forced (%) | Tokens |
|---|---|---|---|---|
| Base (repeat evaluation) | 0 | 93.22 | 94.83 | 4,905 |
| 1 | 93.78 | 95.23 | 4,853 | |
| 2 | 93.32 | 94.78 | 4,874 | |
| Halt Vector | 0 | 93.78 | 94.53 | 4,116 |
| 1 | 93.83 | 94.63 | 4,137 | |
| 2 | 93.93 | 94.68 | 4,244 |
| Sampling seed | Natural (%) | Forced (%) | Token count | |
|---|---|---|---|---|
| Ordinary | With forced answers | |||
| Truncated SFT, | ||||
| 42 | 89.36 | 89.41 | 2,347.7 | 2,347.8 |
| 43 | 84.54 | 84.59 | 2,268.7 | 2,268.8 |
| 44 | 88.45 | 88.60 | 2,419.5 | 2,419.6 |
| Truncated SFT, | ||||
| Training seed | Sampling seed | Natural (%) | Forced (%) | Token count | |
|---|---|---|---|---|---|
| 0.05 | 0 | 42 | 92.87 | 92.87 | 2,040.1 |
| 0.05 | 1 | 43 | 93.17 | 93.22 | 2,048.3 |
| 0.05 | 2 | 44 | 93.07 | 93.12 | 2,082.6 |
| 0.10 | 0 | 42 | 93.12 | 93.12 | 2,135.9 |
| 0.10 | 1 | 43 | 92.72 | 92.77 | 2,177.0 |
| 0.10 | 2 | 44 | 93.12 | 93.12 | 2,188.3 |