The swe_bench.py tool combines all benchmark functionality into one command and supports Claude Code, Codex, and Gemini backends.
# Run full benchmark (300 instances) - DEFAULT
python swe_bench.py
# Quick test (10 instances with evaluation)
python swe_bench.py quick
# Check all scores and statistics
python swe_bench.py check
# Evaluate your previous test interactively
python swe_bench.py eval --interactive# Quick test (10 instances)
python swe_bench.py run --quick
# Standard test (50 instances)
python swe_bench.py run --standard
# Full test (300 instances)
python swe_bench.py run --full
# Custom number
python swe_bench.py run --limit 25
# With specific model (September 2025)
python swe_bench.py run --model opus-4.1 --quick
python swe_bench.py run --model sonnet-3.7 --limit 20
python swe_bench.py run --model claude-opus-4-1-20250805 --full
# Skip evaluation (generation only)
python swe_bench.py run --quick --no-eval
# More parallel Docker workers
python swe_bench.py run --limit 20 --max-workers 4
# Use Codex backend
python swe_bench.py run --quick --backend codex
# Use Gemini backend
python swe_bench.py run --quick --backend gemini# List available models (Claude by default)
python swe_bench.py list-models
# Codex models
python swe_bench.py list-models --backend codex
# Gemini models
python swe_bench.py list-models --backend gemini
# Use aliases for convenience
python swe_bench.py run --model opus-4.1 --quick # Latest Opus
python swe_bench.py run --model sonnet-3.7 --quick # Latest Sonnet 3.x
python swe_bench.py run --model best --quick # Best performance
python swe_bench.py run --model fast --quick # Fastest/cheapest
# Or use full model names
python swe_bench.py run --model claude-opus-4-1-20250805 --quick
# Any model accepted by Claude's /model command works
python swe_bench.py run --model custom-model-name --quick
# With Codex backend
python swe_bench.py run --model codex-4.2 --backend codex --limit 5
# With Gemini backend
python swe_bench.py run --model gemini-3-pro-preview --backend gemini --limit 5# Interactive selection (shows list, you choose)
python swe_bench.py eval --interactive
# Specific file (use actual filename from predictions/)
python swe_bench.py eval --file predictions_YYYYMMDD_HHMMSS.jsonl
# All from specific date
python swe_bench.py eval --date 2025-09-02
# Last N predictions
python swe_bench.py eval --last 5
# Date range
python swe_bench.py eval --date-range 2025-09-01 2025-09-03
# Pattern matching
python swe_bench.py eval --pattern "*_163*"
# Dry run (preview only)
python swe_bench.py eval --last 3 --dry-run# Basic view
python swe_bench.py scores
# With statistics
python swe_bench.py scores --stats
# Show trends
python swe_bench.py scores --trends
# Show pending evaluations
python swe_bench.py scores --pending
# Filter to evaluated only
python swe_bench.py scores --filter evaluated
# Export to CSV
python swe_bench.py scores --export results.csv
# Last N entries
python swe_bench.py scores --last 10These shortcuts make common tasks easier:
# Quick test (same as: run --limit 10)
python swe_bench.py quick
# Full benchmark (same as: run --limit 300)
python swe_bench.py full
# Check scores (same as: scores --stats --pending)
python swe_bench.py check- Generation Score: % of issues where patches were created (misleading)
- Evaluation Score: % of issues actually fixed (real score)
Example output:
Generation Score: 100.0% (patches created)
Evaluation Score: 33.3% (issues fixed) ← REAL SCORE
| Test Size | Generation Time | Evaluation Time | Total Time |
|---|---|---|---|
| Quick (10) | ~20-30 min | ~30-50 min | ~1-2 hours |
| Standard (50) | ~2-3 hours | ~3-5 hours | ~5-8 hours |
| Full (300) | ~12-15 hours | ~20-30 hours | ~35-45 hours |
- Start small: Use
quickfor testing - Check before eval: Use
checkto see pending evaluations - Batch evaluate: Use
eval --last 5to evaluate multiple at once - Monitor progress: The tool shows real-time progress
- Save time: Use
--no-evalwhen just testing generation
# 1. Run a quick test
python swe_bench.py quick
# 2. Check the scores
python swe_bench.py check
# 3. If you skipped eval, run it later
python swe_bench.py eval --last 1
# 4. Export results for analysis
python swe_bench.py scores --export my_results.csv