El 29 de junio de 2021, GitHub, propiedad de Microsoft, anunció por primera vez su herramienta de autocompletado impulsada por Inteligencia Artificial para programadores, capacitados en repositorios de GitHub y otro código fuente disponible públicamente.

La transición a la disponibilidad general significa principalmente que Copilot deja de estar disponible de forma gratuita. Los desarrolladores interesados tendrán que pagar 10 dólares al mes o bien 100 dólares por año para usar el servicio, con una prueba gratuita de 60 días. De acuerdo a GitHub, aunque sería poco frecuente, definitivamente existe la posibilidad de que Copilot genere fragmentos de código que coincidan con los del conjunto de entrenamiento.

Hay quienes desde hace tiempo critican a Copilot por varios problemas que supone el uso de Inteligencia Artificial, particularmente por el tema de licencias en los casos en los cuales un segmento de código con licencia GPLv2 o GPLv3 sea utilizado en un proyecto de código cerrado u otro proyecto con licenciamiento incompatible con las licencias GPLv2 o GPLv3. Cuando se trata de proyectos de Software Libre, el que Copilot inserte código originalmente escrito con licenciamiento GPLv2 o GPLv3 puede ser poco relevante para éste si el proyecto utiliza licenciamiento GPLv2 o GPLv3 o un licenciamiento compatible con éstos. Drew Devault alerta sobre la posibilidad de que Copilot incluya código con licencia GPLv2 o GPLv3 en proyectos de código cerrado, lo cual obligaría a cumplir los términos de este licenciamiento para todo el proyecto:

Las licencias de software libre imponen obligaciones al usuario a través de los términos que rigen la atribución, la sublicencia, la distribución, las patentes, las marcas comerciales y las relaciones con leyes como la Ley de derechos de autor del milenio digital (DMCA). La comunidad del software libre no es ajena a las dificultades para hacer cumplir estas obligaciones, que algunos grupos ven como demasiado onerosas. Pero por más onerosas que se puedan considerar estas obligaciones, uno está obligado a cumplirlas. Si cree que la fuerza de los derechos de autor debería proteger su software patentado, entonces debe aceptar que protege igualmente los trabajos de código abierto, a pesar de los inconvenientes o costos asociados con esta verdad.

Copilot de GitHub está capacitado en el software que se rige por estos términos, sin cumplirlos y permitiendo que los clientes accidentalmente incumplan estos términos ellos mismos. Algunos discuten sobre los riesgos de una sorpresa de copyleft, en la que alguien incorpora un trabajo con licencia GPL en su producto y se sorprende al descubrir que también está obligado a lanzar su producto bajo los términos de la GPL. Copilot institucionaliza este riesgo y cualquier usuario que desee utilizarlo para desarrollar software que no sea libre sería aconsejable que no lo haga, de lo contrario, podría verse legalmente obligado a respetar estos términos y, en última instancia, quizás se le exija que publique sus trabajos bajo el términos de una licencia que no es deseable para sus objetivos.

Esencialmente, el argumento se reduce a si el modelo constituye o no un trabajo derivado de sus entradas. Microsoft argumenta que no. Sin embargo, estas licencias no son específicas en cuanto a los medios de derivación; el enfoque clásico de copiar y pegar de un proyecto a otro no tiene por qué ser el único medio para aplicar estos términos. El modelo existe como resultado de aplicar un algoritmo a estas entradas y, por lo tanto, el modelo en sí es un trabajo derivado de sus entradas. El modelo, luego utilizado para crear nuevos programas, remite sus obligaciones a esos trabajos.

Todo esto supone la mejor interpretación del argumento de Microsoft, con una gran confianza en el hecho de que el modelo se convierte en un programador de propósito general, habiendo aprendido significativamente de sus aportes y aplicando este conocimiento para producir un trabajo original. Si un programador humano adopta el mismo enfoque, estudiando software libre y aplicando esas lecciones, pero no el código en sí mismo, a proyectos originales, estaría de acuerdo en que su conocimiento aplicado no está creando obras derivadas. Sin embargo, no es así como funciona el aprendizaje automático. El aprendizaje automático es esencialmente un motor de reproducción y reconocimiento de patrones glorificado, y no representa una generalización genuina del proceso de aprendizaje. Es quizás capaz de una cantidad limitada de originalidad, pero también es capaz de degradarse al simple caso de copiar y pegar.

En otras palabras, será un infierno legal para algunos proyectos que decidan utilizar Copilot y hará falta que Microsoft asuma responsabilidad en caso de que algún proyecto se vea perjudicado por algún tema legal relacionado con los licenciamientos.

Fuente: InfoQ, vía Slashdot y Drew Devault.

Siguiente Entrada Entrada Anterior