MultiPL-E: un enfoque escalable y poliglota para la evaluación comparativa de la generación de código neuronal
Author
Venue
IEEE Transactions on Software Engineering (TSE) 2023
Abstract
Los modelos de lenguaje a gran escala han demostrado su capacidad para generar tanto texto en lenguaje natural como en lenguaje de programación. Estos modelos abren la posibilidad de la generación de código multilingüe: ¿podrían los modelos de generación de código generalizar el conocimiento de un lenguaje a otro? Aunque los modelos contemporáneos de generación de código pueden generar código Python semánticamente correcto, se sabe poco sobre sus capacidades con otros lenguajes. Proponemos MultiPL-E, un sistema para traducir pruebas de referencia de generación de código basadas en pruebas unitarias a nuevos lenguajes. Creamos el primer banco de pruebas de generación de código masivamente multilingüe utilizando MultiPL-E para traducir dos populares bancos de pruebas de generación de código en Python a 18 lenguajes de programación adicionales.
Utilizamos MultiPL-E para ampliar los benchmarks HumanEval y MBPP a 18 lenguajes que abarcan una amplia gama de paradigmas de programación y niveles de popularidad. Mediante estos nuevos benchmarks paralelos, evaluamos el rendimiento multilingüe de tres modelos de generación de código de vanguardia: Codex, CodeGen e InCoder. Observamos que Codex iguala o incluso supera su rendimiento en Python en varios otros lenguajes. La variedad de lenguajes de programación representados en MultiPL-E nos permite explorar el impacto de la frecuencia y las características de los lenguajes en el rendimiento de los modelos. Por último, el enfoque de MultiPL-E de compilar pruebas de rendimiento de generación de código para nuevos lenguajes de programación es escalable y extensible, lo que facilita la evaluación de nuevos modelos, pruebas de rendimiento y lenguajes.
