CODESYNC: Synchronisierung großer Sprachmodelle mit dynamischer Code-Entwicklung im großen Maßstab
CODESYNC: Synchronizing Large Language Models with Dynamic Code Evolution at Scale
February 23, 2025
Autoren: Chenlong Wang, Zhaoyang Chu, Zhengxiang Cheng, Xuyi Yang, Kaiyue Qiu, Yao Wan, Zhou Zhao, Xuanhua Shi, Dongping Chen
cs.AI
Zusammenfassung
Große Sprachmodelle (LLMs) haben in der Softwareentwicklung außergewöhnliche Leistungen gezeigt, stehen jedoch vor Herausforderungen bei der Anpassung an sich kontinuierlich weiterentwickelndes Code-Wissen, insbesondere im Hinblick auf die häufigen Aktualisierungen von APIs Drittanbieter-Bibliotheken. Diese Einschränkung, die sich aus statischen Vorab-Trainingsdatensätzen ergibt, führt oft zu nicht ausführbarem Code oder Implementierungen mit suboptimaler Sicherheit und Effizienz. Zu diesem Zweck stellt dieses Papier CODESYNC vor, eine Daten-Engine zur Identifizierung veralteter Codemuster und zur Sammlung von Echtzeit-Code-Wissen-Updates aus Python-Bibliotheken Dritter. Aufbauend auf CODESYNC entwickeln wir CODESYNCBENCH, einen umfassenden Benchmark zur Bewertung der Fähigkeit von LLMs, mit der Code-Evolution Schritt zu halten, der reale Aktualisierungen für 220 APIs aus sechs Python-Bibliotheken abdeckt. Unser Benchmark bietet 3.300 Testfälle über drei Evaluierungsaufgaben hinweg sowie ein aktualisierungsbewusstes Instruktions-Tuning-Dataset, das aus 2.200 Trainingsbeispielen besteht. Umfangreiche Experimente mit 14 modernsten LLMs zeigen, dass diese mit der dynamischen Code-Evolution zu kämpfen haben, selbst mit der Unterstützung fortschrittlicher Methoden zur Wissensaktualisierung (z. B. DPO, ORPO und SimPO). Wir glauben, dass unser Benchmark eine solide Grundlage für die Entwicklung effektiverer Methoden zur Echtzeit-Aktualisierung von Code-Wissen in der Zukunft bieten kann. Der experimentelle Code und das Dataset sind öffentlich verfügbar unter: 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