¿Cambiará la Inteligencia Artificial Generativa la forma en que desarrollamos aplicaciones Qt? Nos hicimos esta pregunta, y en lugar de pensarlo demasiado, decidimos hacerlo realidad. Implementamos una integración de Github Copilot en Qt Creator 11 como una Vista Previa Técnica.

¿Cómo funciona la Inteligencia Artificial Generativa en Qt Creator?

Lo hemos visto tantas veces que los desarrolladores se cansan de programar código repetitivo, crear casos de prueba interminables y buscar en línea sugerencias de código.

La integración de GitHub Copilot hace que los desarrolladores sean más efectivos al escribir código, permitiéndoles centrarse en la lógica comercial en lugar de reinventar la rueda.

GitHub Copilot sugiere líneas de código, funciones completas y casos de prueba en el editor de Qt Creator. GitHub Copilot ofrece nuevo código "basado en el contexto y las convenciones de estilo del proyecto". Los desarrolladores pueden aplicar sugerencias en su totalidad o solo partes de ellas.

GitHub Copilot in Qt Creator

GitHub Copilot es una herramienta comercial de asistente de código de IA. Puede probarlo gratuitamente durante 30 días, después de lo cual cuesta al menos $10 al mes para individuos o $19 al mes para una licencia de empresa en el momento de escribir esta publicación.

Aumentando la productividad con Inteligencia Artificial...

La integración de GitHub Copilot es la primera funcionalidad de IA integrada por The Qt Company en las herramientas de desarrollo de Qt. Todo lo que haremos en el futuro en Inteligencia Artificial seguirá nuestra misión de optimizar la productividad en todo el proceso de desarrollo de productos. Queremos aumentar la innovación. Queremos convertir ideas en software. Más importante aún, queremos que nos vean como un socio para su creatividad. La IA podría significar para nosotros Inteligencia Artificial Aumentada en lugar de puramente Inteligencia Artificial.

Qt se enfocará en la Inteligencia Artificial Aumentada, que lo apoyará como compañero virtual en lugar de tratar de reemplazarlo.

GitHub Copilot es un excelente ejemplo de esta intención. Github Copilot hace sugerencias que se pueden tomar, modificar o simplemente ignorar (de esa manera, es incluso mejor que un colega humano porque no necesita ser educado en sus rechazos).

Consideraciones sobre el uso de la IA Generativa

La integración de GitHub Copilot es un desafío tecnológico y comercial. Obviamente, GitHub Copilot es un servicio de terceros, sin duda uno excelente, pero eso significa que viene con un conjunto adicional de términos y condiciones que no están bajo el control de The Qt Company. Los términos y condiciones de la IA Generativa son complicados. En primer lugar, las leyes y la ética en torno a la generación de código aumentado todavía se están desarrollando. No hay reglas comúnmente aceptadas. En segundo lugar, si los términos y condiciones de los proveedores de AI Generativa son aceptables depende de cómo juzgue los derechos de las fuentes utilizadas para capacitar los algoritmos.

¿Es la IA Generativa solo una forma automatizada de lavar código de fuente abierta no permisivo? ¿Qué nivel de justificaciones menores hacen que una "copia" de código sin permiso, sin copyleft, como en términos de Licencia Pública General (GPL), sea aceptable como nueva PI? ¿Es el cambio de un nombre de variable o una declaración de variable diferente suficiente? No se considerará un cambio suficiente si lo modifica manualmente un humano. Entonces, ¿por qué estaría bien si lo hace la IA Generativa? Los términos y condiciones específicos del producto de GitHub Copilot trasladan la responsabilidad de usar cualquier sugerencia a usted. The Qt Company no puede y no asumirá ninguna responsabilidad por las sugerencias, ya que GitHub Copilot nos sirve información de manera de "caja negra". Curiosamente, GitHub no está interesado en una violación de PI si el usuario no ha activado "todas las características de filtrado disponibles". En el momento de escribir esto, los filtros para no usar software público de código abierto no permisivo están desactivados por defecto.

Cheating Illustration

En Qt recomendamos evaluar cuidadosamente los términos y condiciones relacionados con el uso de cualquier AI generativo, tanto para uso de código abierto como comercial.

Recomendamos activar los filtros y examinar las sugerencias del código de código abierto no permisivo antes de utilizar el servicio. Jugar con GitHub Copilot puede ser divertido sin activar los filtros momentáneamente. Sin embargo, recomendamos, tal como lo hace GitHub indirectamente en los términos y condiciones, crear solo código de producto con todos los filtros aplicados. No nos malinterpreten: en Qt nos encanta cuando adoptar un nuevo lenguaje de programación es más fácil y la productividad es mayor con sugerencias inteligentes. Sin embargo, no queremos que se haga a expensas de la propiedad intelectual. En caso de duda, no utilice una sugerencia particular de AI generativo o intente utilizar algunas de las millones de líneas de código de QML y C del marco de software de bibliotecas de Qt, que pueden ser totalmente compatibles con licencia comercial.

Además, recomendamos no permitir que GitHub Copilot use fragmentos o sugerencias para entrenar el algoritmo de AI. Esa podría ser la forma más sólida, aunque no perfecta, de evitar que vea su código con una pequeña modificación que se sugiera a otra persona.