La IA puede escribir tu código, pero no puede arreglarlo cuando falla

Microsoft Research Fuente original

Microsoft Research ha puesto a prueba la capacidad real de depuración en nueve modelos de IA líderes, incluidos los más avanzados de Anthropic y OpenAI. El resultado es revelador: incluso Claude 3.7 Sonnet, el mejor del grupo, fracasó en resolver el 51.6% de problemas reales de depuración, mientras que los modelos de OpenAI quedaron muy por detrás, con o1 resolviendo apenas el 30.2%.

Hemos estado midiendo el progreso de la IA en programación de forma equivocada. La escritura de código representa solo una fracción del trabajo de un ingeniero. La mayor parte de su tiempo lo dedican a la depuración: explorar bases de código existentes, rastrear rutas de ejecución, examinar variables y formular hipótesis. Sin embargo, nuestros modelos de IA carecen casi por completo de datos de entrenamiento que muestren este proceso.

Esta desconexión explica por qué los CEO pueden pensar que la IA reemplazará pronto a los programadores mientras los equipos de ingeniería reaccionan con escepticismo. "Debug-gym" de Microsoft busca cambiar esto enseñando a los modelos a utilizar herramientas reales de depuración, creando un entorno donde la IA puede establecer puntos de interrupción, imprimir valores de variables y navegar por el código como lo hacen los desarrolladores humanos.

La brecha entre escribir código y mantenerlo podría ser la trinchera que proteja los empleos de ingeniería más tiempo del esperado. Los sistemas que impresionan en demostraciones controladas a menudo colapsan al enfrentar las complejas realidades de producción, donde el contexto, la intuición y la experiencia son cruciales para resolver problemas inesperados.

El verdadero avance no vendrá con IA que escriba más código, sino con sistemas que entiendan profundamente el código existente y puedan repararlo. Esta investigación nos recuerda que estamos en la infancia de la automatización en desarrollo de software. La colaboración humano-máquina seguirá siendo el modelo dominante mientras nuestros sistemas aprenden no solo a crear, sino también a mantener, corregir y evolucionar.

Debuger

Compartir: