Skip to main content

control_sampling

Function control_sampling 

Source
pub const fn control_sampling() -> (f32, i32, f32, f32)
Expand description

The sampling the control arm applies, on top of a request’s seed.

§Why the temperature alone was not enough

The first version of this control set only CONTROL_TEMPERATURE, and it failed to degrade anything — measured on Qwen3.5-4B, it scored above both real arms. The reason is the sampler chain’s order, which ADR 0003 finding 5 measured: llama.cpp applies the truncation samplers before temperature. With a reasoning recipe’s top_k: 20 and top_p: 0.95 already in force, temperature 2.0 was only flattening a distribution over twenty surviving tokens — a much tamer change than the number suggests.

So the control disables every truncation sampler as well. A temperature that cannot be absorbed by a top_k running ahead of it is the only kind that demonstrates anything.

§It differs from the gglib arm in more than one value, and that is fine

An earlier comment here claimed the control differed in exactly the temperature, so a gap could only be that. That was already untrue: naming a temperature claims the coupled trio, so the control’s presence_penalty and repeat_penalty fall to the class floor rather than matching the model’s recipe. Isolating one variable is a job for an ablation; this arm’s job is to be large and known-bad, and breadth serves that.