Avance de CodeMaker AI en el desarrollo de software: logra una precisión del 91 % al recrear 90 000 líneas de código, lo que establece un nuevo punto de referencia para la generación de código impulsada por IA y el modelo perfeccionado

En una era en la que la IA transforma las industrias, Inteligencia artificial CodeMaker ha logrado un avance histórico al recrear de forma autónoma una biblioteca de software de 90.000 líneas con una asombrosa similitud del 91 % con el código base original. Este logro marca un cambio significativo en la forma en que se puede utilizar la IA en el desarrollo de software, lo que demuestra el potencial para reducir los esfuerzos de codificación manual y acelerar drásticamente los plazos de desarrollo. Inteligencia artificial CodeMaker Está optimizado para comprender y generar estructuras de código complejas, procesa más de 3200 archivos y reproduce el código en menos de dos horas. Al aprovechar técnicas avanzadas de aprendizaje automático, Inteligencia artificial CodeMaker ha demostrado que la generación de código a gran escala, que antes resultaba ardua para los desarrolladores humanos, ahora se puede lograr con precisión, velocidad y rentabilidad. Las implicaciones de este desarrollo se extienden mucho más allá de la simple generación de código, ya que representa una nueva frontera en el papel de la IA en la automatización y ampliación de tareas complejas dentro del panorama de la ingeniería de software.

CodeMaker AI: El experimento

El núcleo de Inteligencia artificial CodeMakerEl experimento de implicó ajustar un modelo de aprendizaje automático específicamente en una base de código, lo que le permitió a la IA generar código de forma autónoma. El ajuste fino se refiere a tomar un modelo previamente entrenado y entrenarlo aún más en un conjunto de datos específico para adaptarlo a una tarea en particular. Para este proyecto, la IA se ajustó en una base de código de producción completa, lo que la hizo capaz de generar código que se alinea con estilos de codificación, espacios de dominio y estructura específicos.

El código recreado se publicó en GitHub para su examen público y las estimaciones basadas en el modelo COCOMO sugieren que recrear manualmente el código habría llevado alrededor de 25 años de tiempo de desarrollo. Esta cruda comparación subraya la eficiencia que aporta la IA al desarrollo de software.

Proceso de ajuste fino

El proceso de ajuste fino implicó entrenar el modelo de IA con 129 millones de tokens del código base, lo que llevó 11 horas y 44 minutos por $1949,75. Luego, el modelo se utilizó para recrear el código borrado en el directorio `src/main/java` usando Inteligencia artificial CodeMakerFunción de generación de código por lotes de. El comando utilizado para esta operación fue:

—bash
codemaker generate code --model user-model **/src/main/**/*.java

Este proceso de generación de lotes se completó en 1 hora y 42 minutos, lo que demuestra la eficiencia de Inteligencia artificial CodeMaker en tareas de generación de código a gran escala.

Comparación y evaluación de códigos

Para evaluar la precisión del código generado por IA, Inteligencia artificial CodeMaker Se emplearon dos métricas clave: tasa de error y tasa de similitud. La tasa de error se definió como la distancia de Levenshtein entre los archivos originales y generados, midiendo la distancia entre ambos archivos. La tasa de similitud se calculó de la siguiente manera:

—Python
similarity_rate = 1 - (dist(a, b) / max(len(a), len(b)))

Esta métrica respondió a la pregunta de qué tan similares eran dos archivos, y los resultados se promediaron entre todos los archivos del conjunto de datos. Se utilizaron dos modelos para la comparación: un modelo de parámetros 7B básico y un modelo de parámetros 7B ajustado. Los resultados fueron los siguientes:

El modelo perfeccionado superó al modelo base, lo que redujo la tasa de error y aumentó la similitud. Esto resalta la importancia del ajuste fino específico de las tareas para los modelos de IA en la generación de software.

Implicaciones de la IA en el desarrollo de software

Las implicaciones de Inteligencia artificial CodeMakerLos logros de van mucho más allá de este único experimento. A medida que la IA continúa evolucionando, abre posibilidades para automatizar la generación de código y otros aspectos del desarrollo de software, como las pruebas, la documentación e incluso la depuración.

Ciclos de desarrollo acelerados

Uno de los beneficios más inmediatos de usar IA como Inteligencia artificial CodeMaker En el desarrollo de software, la aceleración de los ciclos de desarrollo es fundamental. Al automatizar la generación de código, los desarrolladores pueden centrarse más en tareas de nivel superior, como la arquitectura del sistema, el diseño y la resolución de problemas. Esto podría conducir a un desarrollo de productos más rápido y a un menor tiempo de comercialización de las soluciones de software.

Eficiencia de costos

En el experimento, Inteligencia artificial CodeMaker Generó 90.000 líneas de código en poco más de una hora, por una fracción del costo y el tiempo que requieren los desarrolladores humanos. Los ahorros financieros y de tiempo que ofrece la IA podrían ser un punto de inflexión para las empresas que buscan reducir los costos de desarrollo y, al mismo tiempo, mantener un código de alta calidad.

Dando forma al papel de los desarrolladores

A medida que las herramientas de IA como CodeMaker se vuelven más sofisticadas, el papel de los desarrolladores de software puede cambiar. En lugar de centrarse en escribir código desde cero, los desarrolladores podrían dedicar más tiempo a supervisar el código generado por IA, afinar los modelos para tareas específicas y abordar desafíos de diseño de alto nivel. El futuro del desarrollo de software podría ser un esfuerzo colaborativo entre la creatividad humana y la eficiencia de las máquinas.

Reproducibilidad: retos y logros

La reproducibilidad es una preocupación clave en el software generado por IA, y Inteligencia artificial CodeMaker El experimento proporciona información valiosa sobre los desafíos y los éxitos de la recreación del código.

Tasas de error y ajuste fino del modelo

Como se puede observar al comparar los modelos básicos y perfeccionados, el perfeccionamiento es esencial para mejorar la precisión y la similitud del código generado por IA. El modelo perfeccionado logró una similitud significativa, pero aún no pudo recrear el código original a la perfección. Esto plantea inquietudes sobre las limitaciones de los modelos de IA actuales para replicar por completo bases de código complejas.

Ambigüedad en el código

Uno de los desafíos de la reproducibilidad es la ambigüedad inherente a la codificación. El código no siempre es una representación exacta de la funcionalidad; a menudo, existen múltiples formas de implementar la misma función. Esto puede dificultar que los modelos de IA determinen la versión “correcta” del código sin contexto adicional.

Por ejemplo, considere el siguiente fragmento de código:

—Java
public MockitoException(String message) {
    super(message);
    unfilteredStackTrace = getStackTrace();
    ConditionalStackTraceFilter filter = new ConditionalStackTraceFilter();
    filter.filter(this);
}

Después de la refactorización, el código podría verse así:

—Java
public MockitoException(String message) {
       super(message);      
       filterStackTrace();
}

Si el modelo de IA comprende la intención detrás del código original, puede reproducir la versión refactorizada. Sin embargo, en este caso, la ambigüedad surge porque la IA no puede inferir el razonamiento detrás de la simplificación del código.

El papel del ajuste fino

A pesar de estos desafíos, el ajuste fino sigue siendo la mejor solución para mejorar la reproducibilidad del código generado por IA. El entrenamiento de modelos en bases de código específicas puede aumentar la precisión y la relevancia del código generado, aunque todavía puede ser necesaria una replicación perfecta.

Direcciones futuras

El éxito de Inteligencia artificial CodeMaker demuestra que la IA puede desempeñar un papel importante en el desarrollo de software, pero también destaca áreas para mayor investigación y desarrollo.

Especialización por sobre generalización

Una de las conclusiones clave de este experimento es que la especialización es más eficaz que la generalización en lo que respecta al código generado por IA. Entrenar modelos en bases de código específicas, en lugar de intentar generalizar a todos los lenguajes de programación y estilos de codificación, produce mejores resultados. Las bases de código son un ejemplo de datos que tienen poca generalización. Esta observación podría conducir al desarrollo de modelos de IA especializados adaptados a tareas muy específicas a cambio de lograr una alta precisión en los resultados.

Formación continua y deriva del conocimiento

Otra consideración importante es la deriva de conocimientos, que se produce cuando evoluciona una base de código. Como el modelo de IA se entrena con una versión estática del código, puede volverse menos eficaz a medida que cambia la base de código. Esto sugiere que los modelos de IA deben volver a entrenarse continuamente para mantenerse al día con las actualizaciones y modificaciones del código. La frecuencia del reentrenamiento dependerá de la tasa de cambio en la base de código y del nivel de error aceptable en el código generado por IA.

Hacia la inteligencia artificial general en la codificación

Mientras Inteligencia artificial CodeMaker Representa un avance significativo, pero lograr una verdadera IA de propósito general en el desarrollo de software aún no ha alcanzado su objetivo. La codificación requiere generar código y habilidades de resolución de problemas que van más allá de las capacidades de la IA. Sin embargo, los usuarios pueden ver más avances en esta área a medida que los modelos de IA se vuelvan más sofisticados y mejores en el manejo de tareas complejas.

Operaciones de escalado

Al extrapolar el rendimiento del modelo, es posible estimar el costo y el tiempo necesarios para procesar incluso la base de código abierto más grande, como el núcleo de Linux. Reconstruir las 35,8 millones de líneas de código costaría aproximadamente 70.000 dólares y llevaría alrededor de 7 días. Debido a los avances en hardware y software, se espera que tanto el costo como el tiempo mejoren con el tiempo.

Conclusión

Inteligencia artificial CodeMakerLa capacidad de recrear 90.000 líneas de código con un 91 % de similitud marca un hito importante en el uso de la IA para el desarrollo de software. Al ajustar los modelos de IA en bases de código específicas, Inteligencia artificial CodeMaker Se ha demostrado que la IA puede acelerar significativamente los ciclos de desarrollo, reducir los costos y mejorar la eficiencia. Sin embargo, persisten desafíos como la reproducibilidad, la ambigüedad en el código y la deriva del conocimiento, y se necesita más investigación para abordar estas cuestiones. Inteligencia artificial CodeMaker El equipo ha puesto a disposición del público todo el código base recreado en GitHublo que alienta a los desarrolladores a explorar y analizar el código generado. Este enfoque de acceso abierto permite a la comunidad comprender mejor las capacidades y limitaciones de la IA. Los desarrolladores interesados ​​en aprender más sobre Inteligencia artificial CodeMakerLos proyectos, modelos de ajuste o soluciones de automatización innovadoras pueden visitar su sitio web oficial para obtener información detallada y actualizaciones.


Fuentes



Gracias a Inteligencia artificial CodeMaker Equipo para el liderazgo intelectual/ Recursos para este artículo. Inteligencia artificial CodeMaker ha apoyado y patrocinado este contenido/artículo.


Asif Razzaq es el director ejecutivo de Marktechpost Media Inc. Como ingeniero y emprendedor visionario, Asif está comprometido con aprovechar el potencial de la inteligencia artificial para el bien social. Su iniciativa más reciente es el lanzamiento de una plataforma de medios de inteligencia artificial, Marktechpost, que se destaca por su cobertura en profundidad de noticias sobre aprendizaje automático y aprendizaje profundo que es técnicamente sólida y fácilmente comprensible para una amplia audiencia. La plataforma cuenta con más de 2 millones de visitas mensuales, lo que ilustra su popularidad entre el público.

⏩ ⏩ SEMINARIO WEB GRATUITO SOBRE IA: ‘SAM 2 para video: cómo optimizar sus datos’ (miércoles 25 de septiembre, 4:00 a. m. a 4:45 a. m. EST)

Leer más
Back to top button