SWE-bench Verified es el estándar de oro para evaluar agentes de codificación: 500 problemas del mundo real + pruebas de OpenAI. ¿Suena a prueba de balas? No del todo. Demostramos que pasar sus pruebas unitarias != coincidir con la verdad de referencia. En nuestro artículo de ACL, corregimos evaluaciones con errores: ¡el 24% de los agentes subieron o bajaron en la tabla de clasificación! 1/7
Ejemplo: django PR-13933. El agente corrigió un mensaje de error pero rompió silenciosamente la ejecución normal. Todas las pruebas están aprobadas, mientras que el parche causaría un fallo en producción. 3/7
Para abordar la insuficiencia de casos de prueba en SWE-bench, desarrollamos UTBoost, un generador de casos de prueba basado en LLM para proyectos completos en Python. En el fondo, UTBoost primero localiza el código relevante de manera detallada (nivel de archivo -> nivel de función -> nivel de línea), y luego genera automáticamente pruebas al estilo de pytest. 4/7
Dado los casos de prueba generados, verificamos su corrección y reevaluamos a los agentes en las tablas de clasificación actuales de SWE-bench Lite y Verified: - SWE-bench Lite: +28.4% más parches incorrectos detectados - SWE-bench Verified: +15.7% - Cambios en los rangos del 40.9 % (Lite) y 24.4 % (Verified) 5/7
Lección: Probar es difícil y aún más difícil cuando la IA escribe el código. Los benchmarks deben evolucionar con suites más fuertes y en constante crecimiento. Esperamos que UTBoost sea un paso hacia evaluaciones más confiables. 6/7
Este es un trabajo conjunto con @BoshCavendish, @maxYuxuanZhu y @PinjiaHE 7/7
24,88K