ChatPaper.aiChatPaper

CODESYNC: Sincronización de Modelos de Lenguaje a Gran Escala con la Evolución Dinámica de Código

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

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

Resumen

Los Modelos de Lenguaje de Gran Escala (LLMs, por sus siglas en inglés) han demostrado un rendimiento excepcional en ingeniería de software, pero enfrentan desafíos para adaptarse al conocimiento de código en constante evolución, particularmente en relación con las actualizaciones frecuentes de las APIs de bibliotecas de terceros. Esta limitación, derivada de conjuntos de datos de preentrenamiento estáticos, a menudo resulta en código no ejecutable o implementaciones con seguridad y eficiencia subóptimas. Con este fin, este artículo presenta CODESYNC, un motor de datos para identificar patrones de código obsoletos y recopilar actualizaciones de conocimiento de código en tiempo real de bibliotecas de terceros en Python. Basándonos en CODESYNC, desarrollamos CODESYNCBENCH, un punto de referencia integral para evaluar la capacidad de los LLMs para mantenerse sincronizados con la evolución del código, que cubre actualizaciones del mundo real para 220 APIs de seis bibliotecas de Python. Nuestro punto de referencia ofrece 3,300 casos de prueba en tres tareas de evaluación y un conjunto de datos de ajuste de instrucciones consciente de actualizaciones que consta de 2,200 muestras de entrenamiento. Experimentos extensos en 14 LLMs de vanguardia revelan que estos luchan con la evolución dinámica del código, incluso con el apoyo de métodos avanzados de actualización de conocimiento (por ejemplo, DPO, ORPO y SimPO). Creemos que nuestro punto de referencia puede ofrecer una base sólida para el desarrollo de métodos más efectivos para la actualización de conocimiento de código en tiempo real en el futuro. El código experimental y el conjunto de datos están disponibles públicamente en: 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