CodeFusion: Предобученная диффузионная модель для генерации кода
CodeFusion: A Pre-trained Diffusion Model for Code Generation
October 26, 2023
Авторы: Mukul Singh, José Cambronero, Sumit Gulwani, Vu Le, Carina Negreanu, Gust Verbruggen
cs.AI
Аннотация
Представьте разработчика, который может изменять только последнюю строку своего кода. Как часто ему придётся начинать писать функцию с нуля, прежде чем она станет правильной? Авторегрессивные модели для генерации кода из естественного языка имеют схожее ограничение: они не позволяют легко пересматривать ранее сгенерированные токены. Мы представляем CodeFusion — предобученную диффузионную модель генерации кода, которая устраняет это ограничение, итеративно очищая полную программу, учитывая закодированный естественный язык. Мы оцениваем CodeFusion на задаче генерации кода из естественного языка для Bash, Python и правил условного форматирования (CF) Microsoft Excel. Эксперименты показывают, что CodeFusion (75 млн параметров) демонстрирует результаты, сопоставимые с современными авторегрессивными системами (350 млн — 175 млрд параметров), по точности в топ-1 и превосходит их в топ-3 и топ-5 благодаря лучшему балансу между разнообразием и качеством.
English
Imagine a developer who can only change their last line of code, how often
would they have to start writing a function from scratch before it is correct?
Auto-regressive models for code generation from natural language have a similar
limitation: they do not easily allow reconsidering earlier tokens generated. We
introduce CodeFusion, a pre-trained diffusion code generation model that
addresses this limitation by iteratively denoising a complete program
conditioned on the encoded natural language. We evaluate CodeFusion on the task
of natural language to code generation for Bash, Python, and Microsoft Excel
conditional formatting (CF) rules. Experiments show that CodeFusion (75M
parameters) performs on par with state-of-the-art auto-regressive systems
(350M-175B parameters) in top-1 accuracy and outperforms them in top-3 and
top-5 accuracy due to its better balance in diversity versus quality.