ChatPaper.aiChatPaper

CODESYNC: Синхронизация крупных языковых моделей с динамической эволюцией кода в масштабе

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

February 23, 2025
Авторы: Chenlong Wang, Zhaoyang Chu, Zhengxiang Cheng, Xuyi Yang, Kaiyue Qiu, Yao Wan, Zhou Zhao, Xuanhua Shi, Dongping Chen
cs.AI

Аннотация

Крупные языковые модели (LLMs) продемонстрировали выдающиеся результаты в области разработки программного обеспечения, однако сталкиваются с трудностями в адаптации к постоянно развивающимся знаниям о коде, особенно в отношении частых обновлений API сторонних библиотек. Это ограничение, вызванное статическими наборами данных для предварительного обучения, часто приводит к неисполняемому коду или реализациям с неоптимальной безопасностью и эффективностью. В связи с этим в данной статье представлен CODESYNC — механизм данных для выявления устаревших шаблонов кода и сбора обновлений знаний о коде в реальном времени из сторонних библиотек Python. На основе CODESYNC мы разработали CODESYNCBENCH — комплексный эталонный тест для оценки способности LLMs оставаться синхронизированными с эволюцией кода, который охватывает реальные обновления для 220 API из шести библиотек Python. Наш эталонный тест включает 3300 тестовых случаев для трех задач оценки и набор данных для настройки инструкций с учетом обновлений, состоящий из 2200 обучающих примеров. Масштабные эксперименты с 14 современными LLMs показывают, что они испытывают трудности с динамической эволюцией кода, даже при поддержке передовых методов обновления знаний (например, DPO, ORPO и SimPO). Мы считаем, что наш эталонный тест может стать прочной основой для разработки более эффективных методов обновления знаний о коде в реальном времени в будущем. Экспериментальный код и набор данных доступны публично по адресу: 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

PDF212February 28, 2025