El nuevo generador de pruebas basado en LLM de Meta ofrece una mirada al futuro del desarrollo
- Meta publicó un artículo titulado "Automated Unit Test Improvement using Large Language Models at Meta".
- El artículo muestra cómo usar IA para acelerar el desarrollo y reducir los errores en el software.
- Al integrar LLM en el flujo de trabajo de los desarrolladores, propone mejoras de software precisas y completas para mejorar la cobertura de código actual.
Puntos clave
- TestGen-LLM usa el enfoque "Assured LLM-based Software Engineering" (Assured LLMSE).
- Usa un enfoque de ensamble que genera mejoras de código con varios LLM, prompts e hiperparámetros, y selecciona la mejor mejora.
- TestGen-LLM fue diseñado específicamente para mejorar pruebas existentes escritas por humanos.
Estadísticas
- En la evaluación de productos Reels y Stories de Instagram, el 75% de los casos de prueba generados por TestGen-LLM compiló correctamente, el 57% pasó de forma confiable y el 25% aumentó la cobertura.
- TestGen-LLM pudo mejorar el 10% de todas las clases a las que se aplicó, y los desarrolladores aceptaron el 73% de las mejoras de pruebas para llevarlas a producción.
- En el "test-a-thon" donde ingenieros de Meta generaron pruebas para aumentar la cobertura de pruebas de Instagram, la mediana de líneas de código agregadas por las pruebas de TestGen-LLM fue de 2.5.
Insights accionables
- Es un buen ejemplo de cómo usar LLM para mejorar de forma eficiente la productividad de desarrollo y la confiabilidad del software.
- El verdadero valor de los LLM está en encontrar y capturar casos límite inesperados.
- Para usar LLM en producción se necesita orquestación, pipelines y procesamiento.
Cómo funciona TestGen-LLM
- TestGen-LLM aplica una serie de filtros semánticos a soluciones candidatas generadas por los LLM internos de Meta para conservar solo las pruebas más valiosas.
- Filtro 1: capacidad de compilación, filtro 2: ejecución (si la prueba pasa), filtro 3: inestabilidad, filtro 4: mejora de cobertura.
- Estos filtros de procesamiento garantizan la mejora de la suite de pruebas.
Conclusión
- Este artículo es una buena forma de seguir los avances de los LLM en el espacio de confiabilidad del software, donde muchos desarrolladores ya los están usando.
- Los LLM podrán encontrar errores y probar sistemas de software cada vez más complejos.
Opinión de GN⁺
- Este artículo ofrece una visión interesante sobre cómo la inteligencia artificial puede influir en el futuro del desarrollo de software.
- Herramientas como TestGen-LLM pueden ser de gran ayuda para automatizar el trabajo de los desarrolladores y aumentar la eficiencia.
- El avance de estas tecnologías apunta a reducir la complejidad del desarrollo de software, mejorar la calidad y ahorrar tiempo a los desarrolladores.
1 comentarios
Opiniones de Hacker News