Koda Mostró Cómo Entrenó el Modelo Next Edit Suggestions para Predecir Cambios de Código
Koda explicó cómo entrenó un modelo Next Edit Suggestions para IDE: en lugar de predecir la continuación de la línea, predice el próximo cambio en el código…
Procesado por IA desde Habr AI; editado por Hamidun News
Koda compartió cómo entrenó un modelo Next Edit Suggestions para autocompletado que intenta predecir no el siguiente token, sino la siguiente corrección significativa de código por parte de un desarrollador. Este enfoque mueve el IDE de un completado ordinario a un asistente que entiende el flujo de refactorización, cambio de nombre y pequeñas correcciones por lotes. NES se diferencia del autocompletado clásico porque tiene en cuenta el historial de cambios recientes y opera no solo bajo el cursor, sino en cualquier parte del archivo.
El modelo no solo puede agregar código, sino también eliminar o reemplazar fragmentos. Los escenarios prácticos para este modo son claros: cambio de nombre en masa, actualización de llamadas después de cambios de firma, continuación de una refactorización en curso, replicación de correcciones similares, alineación de estilo, eliminación de código muerto e incluso pequeñas correcciones de lint. En Koda, creen que frente al auge de los agentes de IA, tal herramienta sigue siendo útil: muchas correcciones pequeñas son más rápidas de confirmar con una sola pulsación de tecla que formular una indicación separada.
Durante el entrenamiento, el equipo primero seleccionó un modelo base bajo restricciones estrictas de latencia. En sus servidores GPU objetivo, los desarrolladores midieron la velocidad de inferencia y redujeron la selección a Qwen2.5-Coder-1.
5B y DeepSeek-Coder-1.3B. Basándose en métricas combinadas, Qwen fue elegido como base para ajuste fino supervisado.
La fuente de datos fueron registros parciales anonimizados de su propio modelo de completamiento de código acumulados durante un año. Estos registros FIM se agruparon por usuario, sesión y archivo para reconstruir cadenas de cambios de código local. El problema era que una corrección real del programador en los registros a menudo se dividía en decenas de microeventos.
Entonces los ingenieros pegaban tales subsecuencias en cambios únicos significativos usando el algoritmo Incremental Difference Detecting descrito en el artículo de investigación NES. Después de esto, filtraron por separado ejemplos donde la corrección de destino estaba realmente vinculada causalmente al historial de edición, en lugar de ser simplemente otro fragmento lógico de código. Al final, de millones de muestras candidatas, quedaron solo decenas de miles.
Además, el equipo hizo sobremuestreo de ediciones de reemplazo para equilibrar mejor los tipos de inserción, reemplazo y eliminación. A continuación, Koda comparó su modelo de 1.500 millones de parámetros con soluciones NES abiertas de Continue, Zed y Sweep, y mencionó Cursor Tab, GitHub Copilot NES y JetBrains AI Assistant como puntos de referencia cerrados.
En su propio conjunto de prueba de 500 ejemplos, Koda-next-edit mostró 27,2% para Exact Match y 28,2% para Judge, mientras que Zeta 2 obtuvo 17,0% y 20,4% respectivamente. En varios conjuntos de datos, la empresa da mayor prioridad a la evaluación Judge, ya que es más adecuada para comparar modelos con diferentes formatos de respuesta. Por promedio simple, su modelo ocupó el primer lugar, y por resultado de promedio ponderado se mantuvo entre los líderes incluso frente a modelos más grandes de 7B y 8B parámetros.
Por separado, Koda destaca el conjunto de datos NEP como un punto de referencia más independiente, ya que no es 'nativo' de ninguno de los sistemas comparados. La función ya apareció en modo beta en el complemento KodaCode 0.9.
0 para VS Code. El equipo planea enriquecer aún más el contexto con fragmentos de código similares y sugerencias de linter, y probar modelos más grandes si pueden mantener la latencia requerida. Otra dirección de desarrollo es la interfaz del complemento: para NES es importante no solo predecir la corrección, sino también mostrarla de manera que permita al desarrollador aceptar o rechazar rápidamente la sugestión sin perder el ritmo.
La historia de Koda demuestra que el mercado de herramientas de IA para programadores no se limita a agentes que intentan hacer todo a la vez. Entre la edición manual y la ejecución completamente autónoma, existe una gran capa de tareas donde el mayor valor proviene de consejos rápidos, locales y predecibles directamente en el editor. Si tales modelos continúan creciendo en calidad sin perder velocidad, esta clase de asistentes podría convertirse en el formato más generalizado de IA en el desarrollo cotidiano.
¿Quieres dejar de leer sobre IA y empezar a usarla?
AI News es un feed curado de noticias de IA. Hamidun Academy te enseña a usar la IA en tu trabajo.