ChatPaper.aiChatPaper

CODESYNC : Synchronisation des grands modèles de langage avec l'évolution dynamique du code à grande échelle

CODESYNC: Synchronizing Large Language Models with Dynamic Code Evolution at Scale

February 23, 2025
Auteurs: Chenlong Wang, Zhaoyang Chu, Zhengxiang Cheng, Xuyi Yang, Kaiyue Qiu, Yao Wan, Zhou Zhao, Xuanhua Shi, Dongping Chen
cs.AI

Résumé

Les grands modèles de langage (LLMs) ont démontré des performances exceptionnelles en génie logiciel, mais rencontrent des difficultés à s'adapter à l'évolution continue des connaissances en matière de code, en particulier concernant les mises à jour fréquentes des API de bibliothèques tierces. Cette limitation, découlant de jeux de données de pré-entraînement statiques, se traduit souvent par du code non exécutable ou des implémentations présentant des lacunes en termes de sécurité et d'efficacité. Pour remédier à cela, cet article présente CODESYNC, un moteur de données conçu pour identifier les motifs de code obsolètes et collecter les mises à jour en temps réel des connaissances sur le code provenant de bibliothèques Python tierces. En s'appuyant sur CODESYNC, nous développons CODESYNCBENCH, un benchmark complet pour évaluer la capacité des LLMs à rester synchronisés avec l'évolution du code, couvrant les mises à jour réelles de 220 API issues de six bibliothèques Python. Notre benchmark propose 3 300 cas de test répartis sur trois tâches d'évaluation ainsi qu'un jeu de données d'ajustement d'instructions prenant en compte les mises à jour, composé de 2 200 échantillons d'entraînement. Des expériences approfondies sur 14 LLMs de pointe révèlent que ces derniers peinent à gérer l'évolution dynamique du code, même avec le soutien de méthodes avancées de mise à jour des connaissances (par exemple, DPO, ORPO et SimPO). Nous pensons que notre benchmark peut offrir une base solide pour le développement de méthodes plus efficaces de mise à jour en temps réel des connaissances sur le code à l'avenir. Le code expérimental et le jeu de données sont disponibles publiquement à l'adresse suivante : https://github.com/Lucky-voyage/Code-Sync.
English
Large Language Models (LLMs) have exhibited exceptional performance in software engineering yet face challenges in adapting to continually evolving code knowledge, particularly regarding the frequent updates of third-party library APIs. This limitation, stemming from static pre-training datasets, often results in non-executable code or implementations with suboptimal safety and efficiency. To this end, this paper introduces CODESYNC, a data engine for identifying outdated code patterns and collecting real-time code knowledge updates from Python third-party libraries. Building upon CODESYNC, we develop CODESYNCBENCH, a comprehensive benchmark for assessing LLMs' ability to stay synchronized with code evolution, which covers real-world updates for 220 APIs from six Python libraries. Our benchmark offers 3,300 test cases across three evaluation tasks and an update-aware instruction tuning dataset consisting of 2,200 training samples. Extensive experiments on 14 state-of-the-art LLMs reveal that they struggle with dynamic code evolution, even with the support of advanced knowledge updating methods (e.g., DPO, ORPO, and SimPO). We believe that our benchmark can offer a strong foundation for the development of more effective methods for real-time code knowledge updating in the future. The experimental code and dataset are publicly available at: https://github.com/Lucky-voyage/Code-Sync.

Summary

AI-Generated Summary

PDF222February 28, 2025