Qwen3.5-2B-Focused

A small reasoning model that stops second-guessing itself.

Qwen3.5-2B-Focused is a 2B reasoning model that knows when to stop. The usual 2B thinker finds the answer, then writes "Wait, let me double checkโ€ฆ", checks it, writes "Wait" again, and keeps going until the token budget runs out, sometimes 2000 tokens after the answer was already right there. Focused does this far less and finishes more of its tasks.

How: no fine-tuning, no extra data, no new layers. We found the direction in the model's activations that means "I should re-verify what I already have" and cut 75% of it out of the weights. Same file size, same architecture, same GGUF (Q8_0).

Built on saidutta69/Qwen3.5-2B-heretic (a Heretic abliteration of Qwen/Qwen3.5-2B).

In short

On 100 fresh tasks with a 4000-token budget, compared with the same model before the edit:

  • 14 more tasks reached a final answer, and none got worse (52 โ†’ 66).
  • Correct answers: 49 โ†’ 61 (lenient parse).
  • Typical task is about 40% shorter: median 3909 โ†’ 2243 tokens.

What it does not do: make the model smarter. If the model cannot solve a problem, it still cannot (see below).

How it works

  1. We recorded the model's internal state right before it starts a re-verification phrase (Wait, Hmm, Actually, Let's check, verify, re-readโ€ฆ) and right before ordinary sentences, on 33 reasoning traces.
  2. The difference between the two gives one direction in layer 18, the "intent to re-verify". It is not just the word "Wait": a probe trained on Let's check also detects Wait (AUC 0.74 one way, 0.79 the other), so the model really has a shared notion of "double-checking now".
  3. In layers 13โ€“18 we edited the weights that write into the residual stream (ffn_down and the attention output, ssm_out on DeltaNet layers, attn_output on layer 15): W โ† W โˆ’ 0.75 ยท d (dแต€ W), re-quantized to Q8_0. Only 12 tensors change, by about 1.6% each.

The direction was built from traces that share no tasks with the evaluation below. No gradient training anywhere.

Results

100 freshly generated tasks (arithmetic, modular arithmetic, ordering, calendar, contradiction, insufficient information, algorithmic), answers checked by code, one sample per task, 4000-token budget, recommended Qwen sampling. Raw outputs: eval_100_fresh_tasks.json, tasks: tasks_fresh.json.

before edit Focused
finished thinking and answered 52 66 (+14 / โˆ’0)
correct, lenient parse 49 61 (p = 0.004)
correct, strict ANSWER: format 47 56 (+15 / โˆ’6, p = 0.078)
median tokens per task 3909 2243
total tokens 296k 250k
finished, but parsed answer wrong 3 5

Why not all 100? "Finished" means the model closed its thinking and wrote a final answer inside the 4000-token budget. The other 34 tasks ran out of budget while still working, and they are the same 34 for both versions: 15 calendar, 8 ordering, 6 modular arithmetic, 4 algorithmic and 1 arithmetic task. These are problems a 2B model cannot crack: it never finds an answer, so there is nothing to stop re-checking. Focused helps where an answer was found but the model kept doubting it.

Strict-format misses (6) are all the same thing: the model wrote ANSWER: CONTRADICTION: โ€ฆ instead of ANSWER: CONTRADICTION; the content is right. We read the 5 "parsed wrong" answers of Focused by hand: 2 are format issues, 2 ran out of budget inside the visible answer, 1 is wrong in substance (task 99). The 3 for the unedited model were not audited by hand.

Standard benchmarks: ARC-Challenge

Checks that the weight edit did not damage general knowledge. Full test split of ARC-Challenge (1,172 questions), zero-shot multiple choice scored by log-likelihood (the lm-evaluation-harness setup, reimplemented in our script bench/eval_arc.py; the model is loaded in 4-bit nf4; acc_norm divides each answer's log-likelihood by its length in tokens). Same script and settings for every model; per-question results are kept, so models are compared pairwise with an exact McNemar test on the questions where they disagree.

Metric Base (Heretic) Focused Change
Accuracy (acc) 35.67% (418/1172) 35.75% (419/1172) +1 question
Normalized accuracy (acc_norm) 39.08% (458/1172) 39.51% (463/1172) +5 questions

Paired check: the two models disagree on only 17 questions for acc (8 solved only by Base, 9 only by Focused, p = 1.00) and 13 for acc_norm (4 vs 9, p = 0.27). No measurable change: ARC-Challenge is preserved.

Limitations

  • One sample per task, one base model, one task generator. Single-run noise is about ยฑ2 tasks per 30.
  • Calendar tasks stay at 0/15. These are questions like "What day of the week was March 6, 1845?" (English and Russian). A 2B model cannot work out the weekday of an arbitrary date in its head; it starts long calendar arithmetic, gets lost and never answers. The edit removes needless re-checking, it does not add knowledge, so these stay unsolved.
  • Strength matters. At 100% the edit also removes useful self-checking and produced confident wrong answers; 75% is the tested compromise.
  • Verified only on this base model.
  • Standard benchmarks: only ARC-Challenge so far (no measurable change, see Results). MMLU, GSM8K and others not yet tested.

Usage

llama-cli -m Qwen3.5-2B-Focused-Q8_0.gguf --temp 1.0 --top-p 0.95 --top-k 20 --presence-penalty 1.5

Checksum: see SHA256SUMS.

Reproduce the edit

pip install gguf numpy
hf download saidutta69/Qwen3.5-2B-heretic Qwen3.5-2B-heretic-Q8_0.gguf --local-dir .
# sha256 of that file: 3e488e2593dee03aec0a7da1e48311dd8569838c00b0d675072965666c7e9c46
python apply_edit.py Qwen3.5-2B-heretic-Q8_0.gguf out.gguf 0.75

intent_direction_L18.npy is the direction. The rebuild is not bit-identical: 4 bytes out of 2 GB differ from the published file because the direction is stored as float32 (max weight difference 2e-4). Behavior is the same, the sha256 will not match.

Lineage and license

Qwen/Qwen3.5-2B โ†’ abliterated with Heretic by saidutta69 (Qwen3.5-2B-heretic, the Q8_0 file above) โ†’ this edit. Apache-2.0, inherited from Qwen3.5-2B. The GGUF metadata inside the file still says Qwen/Qwen3.5-2B-Base as base model; that comes from the upstream conversion and is not what we used.

Downloads last month
249
GGUF
Model size
2B params
Architecture
qwen35
Hardware compatibility
Log In to add your hardware

8-bit

Inference Providers NEW
This model isn't deployed by any Inference Provider. ๐Ÿ™‹ Ask for provider support

Model tree for AmaLS367/Qwen3.5-2B-Focused-GGUF

Finetuned
Qwen/Qwen3.5-2B
Quantized
(1)
this model
Adapters
1 model