ChatPaper.aiChatPaper

Addestramento di Modelli Linguistici per Generare Codice di Qualità con Feedback di Analisi del Programma

Training Language Models to Generate Quality Code with Program Analysis Feedback

May 28, 2025
Autori: Feng Yao, Zilong Wang, Liyuan Liu, Junxia Cui, Li Zhong, Xiaohan Fu, Haohui Mai, Vish Krishnan, Jianfeng Gao, Jingbo Shang
cs.AI

Abstract

La generazione di codice con modelli linguistici di grandi dimensioni (LLM), spesso definita "vibe coding", è sempre più adottata in produzione, ma non riesce a garantire la qualità del codice, in particolare per quanto riguarda la sicurezza (ad esempio, vulnerabilità da SQL injection) e la manutenibilità (ad esempio, annotazioni di tipo mancanti). I metodi esistenti, come il fine-tuning supervisionato e l'elaborazione post-hoc basata su regole, si affidano ad annotazioni laboriose o euristiche fragili, limitandone la scalabilità e l'efficacia. Proponiamo REAL, un framework di apprendimento per rinforzo che incentiva gli LLM a generare codice di qualità produttiva utilizzando feedback guidato dall'analisi del programma. Nello specifico, REAL integra due segnali automatizzati: (1) l'analisi del programma che rileva difetti di sicurezza o manutenibilità e (2) i test unitari che garantiscono la correttezza funzionale. A differenza dei lavori precedenti, il nostro framework è indipendente dal prompt e non richiede riferimenti, consentendo una supervisione scalabile senza intervento manuale. Esperimenti su più dataset e scale di modelli dimostrano che REAL supera i metodi all'avanguardia nelle valutazioni simultanee di funzionalità e qualità del codice. Il nostro lavoro colma il divario tra prototipazione rapida e codice pronto per la produzione, consentendo agli LLM di offrire sia velocità che qualità.
English
Code generation with large language models (LLMs), often termed vibe coding, is increasingly adopted in production but fails to ensure code quality, particularly in security (e.g., SQL injection vulnerabilities) and maintainability (e.g., missing type annotations). Existing methods, such as supervised fine-tuning and rule-based post-processing, rely on labor-intensive annotations or brittle heuristics, limiting their scalability and effectiveness. We propose REAL, a reinforcement learning framework that incentivizes LLMs to generate production-quality code using program analysis-guided feedback. Specifically, REAL integrates two automated signals: (1) program analysis detecting security or maintainability defects and (2) unit tests ensuring functional correctness. Unlike prior work, our framework is prompt-agnostic and reference-free, enabling scalable supervision without manual intervention. Experiments across multiple datasets and model scales demonstrate that REAL outperforms state-of-the-art methods in simultaneous assessments of functionality and code quality. Our work bridges the gap between rapid prototyping and production-ready code, enabling LLMs to deliver both speed and quality.
PDF134June 4, 2025