Where it appears in the paper
Table with columns: Paper location, Row label| Paper location | Row label |
|---|
| Table 3, corpus ablation | 4B, Qwen-only |
Original run name: qwen3-4b-instruct-2507-full-sft-prm-r2egym-swebench-instructions-k5-qwen-only-opus-distill-32k-multiturn.
Training data
code-critic-model/critic-sft-qwen-only, 1,915 examples.
- Tasks: 483 R2E-Gym instances from matplotlib, moto, and sympy, disjoint from SWE-bench Verified.
- Agent that produced the trajectories: Qwen3-Next-80B-A3B-Instruct, 483 trajectories.
- Teacher: Claude Opus 4.6, queried every 5 agent steps with the high-level prompt.
Training setup
Identical to Qwen3-4B-Critic-SFT apart from the data. Full-parameter SFT with LLaMA-Factory, config finetuning/qwen3_4b_critic_full_sft_l40s_train_multiturn_resumable.yaml.
Table with columns: Setting, Value| Setting | Value |
|---|
| Base model | Qwen/Qwen3-4B-Instruct-2507 |
| Chat template | qwen3_nothink |
| Sequence length | 32,768 tokens |
| Loss | final critique turn only (mask_history: true) |
| Hardware | 8 x L40S, effective batch 8 |
| Optimizer | AdamW, lr 5e-6, cosine, warmup ratio 0.1 |
| Epochs | 3 |
| Precision |
Results
Resolve rate on SWE-bench Verified, from Table 3 of the paper.
Table with columns: Coding agent, No critic, + this critic, + Qwen3-4B-Critic-SFT (CWM + Qwen data)| Coding agent | No critic | + this critic | + Qwen3-4B-Critic-SFT (CWM + Qwen data) |
|---|
| Qwen3-Next-80B-A3B | 20.0 | 24.6 | 24.2 |
| Qwen3-32B | 8.8 | 10.8 | 11.4 |
How to use
Same serving and launch procedure as Qwen3-4B-Critic-SFT: serve with vLLM in bf16 and pass the served name to scripts/run_critic_max150.sh with --prm. The served name must have an entry in mini-swe-agent/configs/litellm_model_registry.json; add one for this model if you use a new name.
Citation
@misc{gandhi2026steerdontsolvetraining,
title={Steer, Don't Solve: Training Small Critic Models for Large Code Agents},
author={Shubham Gandhi and Yiqing Xie and Atharva Naik and Ruichen Zhu and Carolyn Rose},
year={2026},
eprint={2606.21811},
archivePrefix={arXiv},
primaryClass={cs.SE},
url={https://arxiv.org/abs/2606.21811}
}