atlas

Research map / Multi-agent systems and games / LLM agents

Training Software Engineering Agents and Verifiers with SWE-Gym

ICML 2025 · Multi-agent systems and games › LLM agents · approach: Software engineering agent benchmarks · 1 citations (OpenAlex)

Read the paperCheck your idea against 108,967 papers

AI-extracted summary. Written by AI from the paper's full text. Numbers and claims can be wrong or missing context, so check the paper before you cite or build on it.

Introduces SWE-Gym, an executable training environment of 2,438 real-world Python GitHub-issue tasks, and uses rejection-sampling fine-tuning of Qwen2.5-Coder agents plus trained verifiers to reach 32.0% on SWE-Bench Verified with open weights.

Problem

Software engineering agents rely on proprietary LMs because open models lack training environments with executable runtimes, reproducible unit tests, and real task instructions for learning-based post-training.

Approach

Builds a manually configured, executable, test-verified environment from real GitHub pull requests across 11 Python repositories, then uses sampled successful agent trajectories (rejection sampling) to fine-tune open-weight LMs as agents and to train outcome-reward verifiers for best-of-k selection at inference.

Key results

Measured effects reported in the paper

What was changedWhereMeasuredEffect
Fine-tune OpenHands on 491 SWE-Gym trajectoriesQwen-2.5-Coder-Instruct 32B · SWE-Bench Literesolve rate: 3.0% → 15.3%Helped
Fine-tune OpenHands on 491 SWE-Gym trajectoriesQwen-2.5-Coder-Instruct 32B · SWE-Bench Verifiedresolve rate: 7.0% → 20.6%Helped
Fine-tune on successful trajectories sampled from the policy being updated, mixed with 491 off-policy trajectories (ablation)OpenHands Qwen-2.5-Coder-Instruct 32B · SWE-Bench Literesolve rate: 15.3 to 8.7%Hurt
Add a first online rejection-sampling iteration (ablation)MoatlessTools Qwen-2.5-Coder-Instruct 7B · SWE-Bench Literesolve rate: 7.0% to 9.0%Helped
Add a second online rejection-sampling iteration (ablation)MoatlessTools Qwen-2.5-Coder-Instruct 7B · SWE-Bench Literesolve rate: 9.0% to 10.0%Helped
Add a second online rejection-sampling iteration (ablation)MoatlessTools Qwen-2.5-Coder-Instruct 32B · SWE-Bench Literesolve rate: 19.7% to 19.7%No clear effect
Use a verifier to select among sampled agent trajectoriesOpenHands Qwen2.5-Coder-Instruct 32B · SWE-Bench Verifiedresolve rate: 20.6@1 to 29.8@8, and up to 32.0@16Helped
Fine-tune the verifier with LoRA instead of full parameters (ablation)OpenHands verifier Qwen2.5-Coder-Instruct 32B · SWE-Bench VerifiedBest@8 resolve rate: 29.8@8; 27.2@8Helped
Train the verifier with a mixture of on-policy and off-policy trajectories instead of only one source (ablation)OpenHands verifier Qwen2.5-Coder-Instruct 32B · SWE-Bench VerifiedBest@8 resolve rate: 27@8Helped
Use a 32B verifier rather than a 7B verifier to rank 8 trajectories (ablation)MoatlessTools policy on SWE-Bench Lite · SWE-Bench Literesolve rate: 19.7 to 26.3%Helped
Cap selected successful trajectories at two per task rather than use no cap (ablation)MoatlessTools Qwen-2.5-Coder-Instruct 7B · SWE-Bench Literesolve rate: 9.3 to 9.7Helped
Increase the number of randomly sampled training trajectories (ablation)OpenHands policy · SWE-Bench Verifiedresolve rateHelped

Surprising findings

Limitations

Experimental setup

Datasets: SWE-Gym SWE-Bench training split

Benchmarks: SWE-Bench Verified SWE-Bench Lite

Metrics: resolve rate empty patch rate stuck in loop rate pass@k best@k

Baselines: SWE-Bench Lite zero-shot Qwen2.5-Coder-Instruct Lingma SWE-GPT SWE-Llama SWE-Gym zero-shot base model

Builds on: SWE-Bench OpenHands MoatlessTools rejection sampling fine-tuning

Closest papers by meaning

Writing a paper in this area? scime draft is a free LaTeX editor with AI included, real-time co-authors and a check of your references and venue rules before you submit. It also imports OpenAI Prism projects.

Open scime draft

Get the next scime Dispatch and a monthly field update

Free. We send a confirmation link first; every email has a one-click unsubscribe. Privacy