RSI-Bench

Can a model tell whether its change helped?

RE-Bench, MLE-bench, PaperBench and AI4AI-Bench all score whether an agent can produce an improvement. None score whether it can recognise one. That is the thing a self-improvement loop actually runs on. Read +1.2% off two noisy seeds, call it a win, and you walk downhill spending real compute.

240 items. Each is two training arms differing on one axis: depth, width, learning rate, method. You get 2 seeds per arm with loss curves, can buy more at 1 unit each from a budget of 20, then call it helped, no_effect or hurt. Ground truth is up to 216 seeds per arm. The runs are already done, so this replays from cache in a minute on a laptop.

accuracy vs what it cost

051015200.30.40.50.60.70.80.9seeds boughtaccuracyt-test at fixed kgrok-4.6claude-sonnet-5claude-opus-5sequentialclaude-haiku-4-5constant

Above the dashed line means a better call from the same seeds.

the error that compounds

rate of calling a change good when it was notgrok-4.60.098claude-opus-50.108claude-sonnet-50.043claude-haiku-4-50.091sequential0.019ttest-k80.013ttest-k120.006ttest-k20.000

The t-test almost never does this. The models do it 7 to 20 times more often.

is the confidence worth anything

00.510.00.51.0statedcorrecthaiku-4-5opus-5grok-4.6sonnet-5

On the diagonal is honest. Below it is bluffing.

all of it

policyaccspendedgebrierfp_helpedmissed_helpn
grok-4.60.8734.5+0.2480.0950.0980.07979
claude-haiku-4-50.6910.6+0.2340.1900.0910.36455
claude-sonnet-50.8614.6+0.2330.1060.0430.15436
claude-opus-50.8234.6+0.1950.1190.1080.08062
sequential0.7798.3+0.0630.1490.0190.325240
ttest-k120.81720.0+0.0000.1390.0060.300240
ttest-k20.4210.0+0.0000.2300.0000.900240
ttest-k30.5422.0+0.0000.1910.0060.662240
ttest-k40.6134.0+0.0000.1840.0130.575240
ttest-k60.7138.0+0.0000.1670.0060.412240
ttest-k80.76212.0+0.0000.1500.0130.338240
constant0.3330.0-0.0870.2220.0001.000240

edge is accuracy minus what a Welch t-test gets for the same mean spend. Baselines run all 240 items; model rows cover what has been scored so far, so small n is provisional.

github.com/teddytennant/rsi-bench