MultiPL-E: een schaalbare en polyglotte benadering voor het benchmarken van neurale codegeneratie
Author
Venue
IEEE Transactions on Software Engineering (TSE) 2023
Abstract
Grote taalmodellen hebben aangetoond dat ze zowel natuurlijke taal als programmeertaaltekst kunnen genereren. Dergelijke modellen openen de mogelijkheid voor meertalige codegeneratie: kunnen codegeneratiemodellen kennis van de ene taal naar de andere generaliseren? Hoewel hedendaagse codegeneratiemodellen semantisch correcte Python-code kunnen genereren, is er weinig bekend over hun mogelijkheden met andere talen. Wij stellen MultiPL-E voor, een systeem voor het vertalen van unit-testgedreven benchmarks voor codegeneratie naar nieuwe talen. We creëren de eerste grootschalige meertalige benchmark voor codegeneratie door MultiPL-E te gebruiken om twee populaire Python-benchmarks voor codegeneratie te vertalen naar 18 extra programmeertalen.
We gebruiken MultiPL-E om de HumanEval-benchmark en de MBPP-benchmark uit te breiden naar 18 talen die een breed scala aan programmeerparadigma's en populariteit omvatten. Met behulp van deze nieuwe parallelle benchmarks evalueren we de meertalige prestaties van drie state-of-the-art codegeneratiemodellen: Codex, CodeGen en InCoder. We constateren dat Codex zijn prestaties in Python evenaart of zelfs overtreft voor verschillende andere talen. Het scala aan programmeertalen dat in MultiPL-E vertegenwoordigd is, stelt ons in staat om de impact van taalfrequentie en taalkenmerken op de modelprestaties te onderzoeken. Ten slotte is de MultiPL-E-aanpak van het compileren van benchmarks voor codegeneratie naar nieuwe programmeertalen zowel schaalbaar als uitbreidbaar, waardoor het eenvoudig is om nieuwe modellen, benchmarks en talen te evalueren.
