Het trainen van taalmodelen om kwalitatief hoogwaardige code te genereren met feedback van programma-analyse
Training Language Models to Generate Quality Code with Program Analysis Feedback
May 28, 2025
Auteurs: Feng Yao, Zilong Wang, Liyuan Liu, Junxia Cui, Li Zhong, Xiaohan Fu, Haohui Mai, Vish Krishnan, Jianfeng Gao, Jingbo Shang
cs.AI
Samenvatting
Codegeneratie met grote taalmodellen (LLMs), vaak aangeduid als vibe coding,
wordt steeds vaker in productieomgevingen gebruikt, maar slaagt er niet in om
codekwaliteit te garanderen, met name op het gebied van beveiliging (bijv.
SQL-injectie kwetsbaarheden) en onderhoudbaarheid (bijv. ontbrekende
typeannotaties). Bestaande methoden, zoals supervised fine-tuning en
regelgebaseerde nabewerking, zijn afhankelijk van arbeidsintensieve annotaties
of broze heuristieken, wat hun schaalbaarheid en effectiviteit beperkt. Wij
stellen REAL voor, een reinforcement learning-framework dat LLMs stimuleert om
productiekwaliteit code te genereren met behulp van feedback op basis van
programma-analyse. Specifiek integreert REAL twee geautomatiseerde signalen:
(1) programma-analyse die beveiligings- of onderhoudbaarheidsproblemen detecteert
en (2) unittests die functionele correctheid waarborgen. In tegenstelling tot
eerdere werken is ons framework prompt-agnostisch en referentievrij, wat
schaalbare supervisie mogelijk maakt zonder handmatige interventie. Experimenten
over meerdere datasets en modelschalen tonen aan dat REAL state-of-the-art
methoden overtreft in gelijktijdige beoordelingen van functionaliteit en
codekwaliteit. Ons werk overbrugt de kloof tussen snelle prototyping en
productieklaar code, waardoor LLMs zowel snelheid als kwaliteit kunnen leveren.
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.