← Latest papers
💬 NLP

SWE-rebench V2: Language-Agnostic SWE Task Collection at Scale

The paper introduces SWE-rebench V2, a language-agnostic automated pipeline that generates a large-scale, diverse dataset of over 32,000 verified and 120,000+ synthetic software engineering tasks across 20 languages to address the scarcity of training data for reinforcement learning-based software engineering agents.

Original authors: Ibragim Badertdinov, Maksim Nekrashevich, Anton Shevtsov, Alexander Golubev

Published 2026-03-02
📖 5 min read🧠 Deep dive

Original authors: Ibragim Badertdinov, Maksim Nekrashevich, Anton Shevtsov, Alexander Golubev

Original paper licensed under CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). This is an AI-generated explanation of the paper below. It is not written or endorsed by the authors. For technical accuracy, refer to the original paper. Read full disclaimer

Imagine you are trying to teach a robot to be a software engineer. You want it to fix bugs, add new features, and manage code in real-world projects. To teach it, you need a massive library of practice problems: "Here is a broken program, here is the test that proves it's broken, now fix it."

For a long time, this library was very small, mostly written in just one language (Python), and the problems were often messy or impossible to run automatically. It was like trying to teach a chef using only recipes for one specific type of soup, and half the recipes were missing ingredients.

SWE-rebench V2 is like a brand-new, automated factory that builds a massive, diverse library of these coding problems. Here is how it works, explained through a few simple analogies:

1. The Problem: The "Language Barrier" and the "Setup Nightmare"

Previously, if you wanted to test a coding AI on a Java project, you had to manually set up the kitchen, buy the specific pots, and figure out the stove settings. If you wanted to test it on a Rust project, you had to do it all over again with completely different tools. This was slow, expensive, and limited the number of languages you could teach the AI.

Furthermore, many existing "practice problems" were like riddles with missing clues. The instructions said, "Fix the bug," but didn't say which bug or how to know you fixed it.

2. The Solution: The "Universal Translator" Factory

The authors built SWE-rebench V2, which is an automated pipeline. Think of it as a Universal Translator and Kitchen Builder that works for any language.

  • Language Agnostic: It doesn't care if the code is in Python, Go, Java, or even obscure languages. It uses a "template" approach. It knows the basic rules of cooking (installing tools, running tests) and just swaps out the specific ingredients (the programming language) as needed.
  • The "Interactive Setup Agent": This is the factory's most clever worker. When a new project arrives, this worker doesn't just guess how to set it up. It tries to build the environment, hits a wall (an error), reads the error, tries a different tool, and keeps trying until the project runs perfectly. It's like a robot that keeps trying to assemble IKEA furniture until it finally figures out which screw goes where, without needing a human to help.

3. The Harvest: A Massive Library

Using this factory, they didn't just find a few problems; they harvested 32,000+ high-quality tasks from over 3,600 different real-world projects across 20 programming languages.

  • The "Gold" Collection (32k tasks): These are the "perfect" problems. They have been verified to run, they have clear instructions, and they have a "pass/fail" test that proves if the AI solved it. These are ready for the AI to train on immediately.
  • The "Rough Draft" Collection (120k+ tasks): They also released a much larger set of 120,000 tasks. These are like "rough drafts." They might not have a perfect test suite yet, but they have the instructions and the code changes. This is great for teaching the AI the process of coding, even if the final grading is a bit fuzzy.

4. Quality Control: The "Editor" and the "Detective"

Just because you have a million problems doesn't mean they are good. The pipeline includes a smart "Editor" (an AI judge) that reads the problem descriptions. If a problem is too vague ("Fix the thing that's broken"), the Editor throws it out. It only keeps problems where the instructions are clear enough for a human (or a smart robot) to understand what to do.

They also added a "Detective" layer. They ran the problems through seven different top-tier AI models to see where things went wrong.

  • The "Confounder" Tags: Sometimes an AI fails not because it's dumb, but because the test was unfair (e.g., the test checks for a specific variable name that wasn't mentioned in the instructions). The system tags these issues. This allows researchers to say, "Let's train the AI on the 'clean' problems first, and then introduce the 'unfair' problems later to make it tougher."

5. Why This Matters

Think of this as the "Open Source Textbook" for the next generation of AI engineers.

  • Before: AI was learning to code by reading a few books in one language, often with typos.
  • Now: AI has access to a massive, multi-lingual library of real-world problems, complete with working kitchens (environments) and clear grading rubrics (tests).

This allows researchers to train AI agents that can actually work in the messy, diverse, and complex world of real software development, not just in a controlled, perfect lab environment. It's the difference between teaching a pilot in a simulator that only flies in perfect weather, versus one that has flown through thousands of real storms in different types of planes.

Drowning in papers in your field?

Get daily digests of the most novel papers matching your research keywords — with technical summaries, in your language.

Try Digest →