← All posts

Baselines any reasoning idea has to beat

Standard ways to get more right answers from the same model, measured on GSM8K and HumanEval. Majority voting helped, picking the most confident answer did not. The GSM8K numbers were later found to be cut off by a 320-token cap.

ExperimentE15
Date2026-10-27
BenchmarkGSM8K (128 problems) and HumanEval (164 problems)
ModelQwen2.5-14B-Instruct, Q4_K_M with an importance matrix, 40 of 48 layers on the GPU (llama.cpp)
HardwareOne of my dedicated test rigs: RTX 3080 10 GB, Ryzen 9 5950X, 128 GB RAM, 8 requests at once, GGML_OP_OFFLOAD_MIN_BATCH=128
VerdictBASELINE

What I tested

Known methods only: one greedy answer, majority vote over 4 and 8 samples (temperature 0.7), picking the sample with the highest average token probability, and a best-possible-pick reference that peeks at the answer key.

Pass bar, set before the run

None. These are the reference numbers new ideas are compared against at the same compute.

Result

MethodGSM8KTokens per problem
One answer (greedy)76.6%266
Majority vote, 4 samples78.9%1068
Majority vote, 8 samples83.6%2134
Most confident of 472.7%1068
Most confident of 874.2%2134
Best possible pick of 8 (reference)90.6%2134

HumanEval: one answer 78.7% (161 tokens), most confident of 4 80.5% (642 tokens), best possible pick of 4 90.2% (reference).

Correction: every GSM8K number here used a 320-token output cap, and E16 later showed the cap caused most of the errors. Read the GSM8K rows as cut-off-limited.

What happened

Majority voting gave a real gain on GSM8K and picking the most confident sample did worse than one answer. The gap to the best possible pick suggested room for a smarter picker. Later, E16 showed the 320-token cap was cutting off most wrong answers, so these GSM8K baselines measure truncation more than reasoning. The HumanEval numbers were not affected the same way.

How to rerun

# Start the server (see e15_run.ps1), then:
set GGML_OP_OFFLOAD_MIN_BATCH=128
llama-server --port 8090 -c 8192 -np 8 -t 16 -fa on -m q14-Q4_K_M-imat.gguf -ngl 40
python e15_baselines.py --task gsm8k --tag q4km_imat_ngl40 --n_items 128 --n_samples 8 --workers 8 --resume
python e15_baselines.py --task humaneval --tag q4km_imat_ngl40 --n_items 164 --n_samples 4 --workers 8 --resume

Code

All code for E15: e15_baselines.py, e15_run.ps1.

Prior work

No novelty claim. This is a standard evaluation of existing methods.

Written by Andrew Rose with help from AI tools. Every number comes from the run logs.

Questions or ideas? me@andrewroseit.com or @AndrewRoseIT.