Benchmark · agentic
SWE-bench Verified
Evalúa si un agente de IA puede resolver issues reales de GitHub de principio a fin. El conjunto «Verified» son 500 tareas validadas por humanos, tomadas de repositorios Python de código abierto populares.
Leer más
- Ejemplo
- Dado un informe de error y el repositorio, el modelo debe producir un patch de código — por ejemplo, arreglar una función de parseo de fechas que falla para que la suite de pruebas del proyecto pase.
- Puntuación
- % de issues resueltos — normalmente se reporta como pass@1 (un solo intento). Cuanto más alto, mejor.
- Verificación
- Totalmente automático: el patch generado se aplica y las pruebas unitarias ocultas reales del proyecto se ejecutan en un sandbox. Una tarea cuenta solo si todas las pruebas objetivo pasan y no se produce ninguna regresión.
- Por qué importa
- El principal benchmark de agentes de programación en escenarios reales y una cifra destacada en cada lanzamiento frontier; el progreso aquí refleja cuán cerca están los agentes de la ingeniería de software autónoma.
Ejemplo resuelto
Tarea
Repositorio
django/django en un commit base fijo. Informe de error: django.utils.text.slugify("___This-is-a-Test___", allow_unicode=True) devuelve '___this-is-a-test___', pero los guiones bajos y guiones iniciales y finales deberían eliminarse para que el resultado sea 'this-is-a-test'. El modelo recibe únicamente el texto del issue junto con el repositorio y debe producir un patch en formato unified diff.Solución
--- a/django/utils/text.py
+++ b/django/utils/text.py
@@ def slugify(value, allow_unicode=False):
value = re.sub(r"[^\w\s-]", "", value.lower())
- return re.sub(r"[-\s]+", "-", value)
+ return re.sub(r"[-\s]+", "-", value).strip("-_")
Explicación
slugify colapsa los separadores internos pero nunca recorta los
-/_ circundantes, así que añadir .strip("-_") al re.sub final los elimina; el patch es mínimo y preserva todo el demás comportamiento. SWE-bench Verified aplica el patch al repositorio en el commit base y califica ejecutando la suite oculta — pasa solo si cada prueba FAIL_TO_PASS pasa a estar en verde mientras todas las pruebas PASS_TO_PASS siguen en verde.