Copilot de Github es el TEMA del mes, para algunos ya venía siendo un tema, pero hablemos sobre Copilot y la propiedad intelectual antes de entrar en el jugoso tema de la demanda que estará al final.
Siéntense, relájense y empezamos esta aventura.
¿Qué es Copilot?
Copilot es una Inteligencia Artificial en la nube desarrollada por GitHub, propiedad de Microsoft, y OpenAI para ayudar a los programadores a crear código más rápido.
Esta disponible para Visual Studio Code, Visual Studio, Neovim y JetBrainsintegrated.
¿Cómo funciona Copilot?
Básicamente te «sugiere código», es muy parecido a un autocompletar, por lo que empiezas a escribir y Copilot completa la línea con el código que cree que funcionará mejor.
En octubre 2021 ya escribía el 30% del código que creaban los desarrolladores, en 5 años esperan llegar al 80%.
Si no estás familiarizado con como se entrenan las I.A escríbenos por RRSS y puede que saquemos un post al respecto, de momento diré que las inteligencias artificiales necesitan: datos.
Muchos, muchos, muuuuchooooss datos, cantidades ingentes de datos para ofrecer la respuesta más óptima a un problema concreto.
(problema= prompt/línea de código que quieres escribir).
Lo relevante para nuestro análisis es lo que dice el blog de Github (Microsoft)
“GitHub Copilot is trained on billions of lines of public code”.
Blog de Github
Copilot emplea y utiliza código con licencias libres / open source que para su entrenamiento.
Lo que ha causado que esté hoy más que nunca en el punto de mira.
Pero vayamos por partes:
¿Qué pasa con la propiedad intelectual?
Para empezar, hablemos de las obras que usan para entrenar Inteligencias artificiales, el input.
Cuando una persona física crea una obra automáticamente tendrá derechos de autor, no necesitará registrarla, ni realizar cualquier otra acción.
Como autor tendrá todos los derechos sobre la obra en exclusiva y si terceras personas (como Copilot) quieren usarlo, tendrán que:
- pedir permiso para usarlo (contratos)
- revisar que la obra tiene una licencia de uso y cumplir sus requisitos
- usarla de acuerdo a los limites de la propiedad intelectual.
Para entrenar una Inteligencia artificial de manera legal tendremos que estar en uno de estos tres supuestos.
De lo contrario será una infracción al derecho de autor o en el caso de las licencias un incumplimiento del contrato.
(inciso para compis legales: una sentencia del TJUE explica que el incumplimiento de una licencia puede ser, a su vez, un incumplimiento del contrato)
Por lo que el incumplimiento o la infracción conlleva el derecho a pedir una indemnización.
En Estados Unidos y los países de common law usan el famoso Fair Use, que es un estudio caso por caso donde se dictamina que el uso que se le da a una obra cumple 3 reglas.
Muchas decisiones judiciales de Estados Unidos han dictaminado que la copia masiva de «materia prima» para crear bases de datos que entrenen inteligencias artificiales es Fair Use.
Por ejemplo: Perfect 10 v. Amazon.com, Inc., 508 F.3d 1146, 1165 (9th Cir. 2007); Kelly v. Arriba Soft Corp., 336 F.3d 811, 818 (9th Cir. 2003), Authors Guild v. Google, Inc., 804 F.3d 202 (2d Cir. 2015); Authors Guild v. HathiTrust, 755 F.3d 87 (2d Cir. 2014); A.V. ex rel. Vanderhye v. iParadigms, LLC, 562 F.3d 630, 640 (4th Cir. 2009);
En países como España, Francia o Alemania tenemos una lista cerrada de supuestos donde es posible usar obras de otros sin permiso (los limites a la propiedad intelectual)
Desde hace relativamente poco tenemos un nuevo límite en Europa que permite que se usen obras sin el permiso del autor para hacer minería de datos y de textos.
De entrada y según lo que estamos viendo, la bandera de los límites y el Fair use tienen grandes posibilidades de vencer en cuanto a entrenamiento de Inteligencias artificiales como Copilot se refiere.
Sin embargo, los límites, también tienen límites, así que podemos gozar de este uso sin permiso siempre que no causemos perjuicios injustificados a los intereses del autor o que vaya en contra de la explotación normal de la obra.
El perjuicio lo podemos observar en lo manifestado por algunas voces, como la de Jon Juarez (me encanta como artista y como persona seguidle pls), puede servir como una gran maquinaria para «lavar» el derecho de autor.
Es decir, de dejar sin protección las obras que están en las bases de datos que entrenan a las Inteligencias artificiales.
Muchos prompts utilizan el nombre de artistas famosos para generar obras.
En el caso del código regurgita trozos sin nombrar al autor por lo que estamos invisibilizando el esfuerzo de los autores y vulnerando sus derechos morales.
Trata al código como si fuera de nadie, cuando en sí, ese código es de alguien y, seguramente, tendrá una licencia (lo trataremos más adelante)
Por todo esto podríamos argumentar que sí, el uso de las obras para entrenar inteligencias artificiales puede dañar la normal explotación de las obras y, además, va en contra de nuestros intereses como autores porque vulnera nuestros derechos morales, está abierto al público general, rebajan las posibilidades de obtener trabajos, etc., etc. y un larguísimo etc.
(Interesante para otras tantas cosas que tengo que escribir, no me da la vida, pero sigamos)
El peligro está en los Términos y condiciones y en el output
Si en el uso de nuestras obras para la construcción de bases de datos de entrenamiento para inteligencias artificiales estábamos un poco atados de pies y manos, ahora tenemos un verdadero peligro por delante.
Verás, en este post de blog hablábamos sobre la imposibilidad de proteger las imágenes generadas por inteligencia artificial.
Esto es totalmente trasladable al código.
Cuanto menos intervención humana, menos posibilidades de proteger la obra resultante.
Entonces cualquier persona, repito, cualquier persona podría usarlo porque básicamente esas creaciones están en dominio público (lo que decíamos de usar a las Inteligencias artificiales como lavado de copyright)
Esto parecerá alguna tontería para algunos, pero piensa por un momento que el código que le estas aportando a una empresa puede ser usado por cualquiera ¿dónde esta la ventaja competitiva?
¿Cómo puedo decirle a un cliente que le doy el uso exclusivo de lo que he creado? Si no tenemos derechos exclusivos sobre ello.
Para darte una mayor idea, los contratos de cesión de derechos de software tendrá una frase tipo esta:
«El autor garantiza la originalidad del software y mantendrá indemne a la empresa ante reclamaciones por propiedad intelectual realizada por terceros»
Cualquier contrato de cesión de derechos de software que se precie.
Pues imaginate que por algún casual Copilot te regurgita el software de Tim Davis, que tiene controlado eso de localizar su código
Y dices «Ah no, no, yo no quise infringir los derechos de Tim Davis, para nada, es culpa de Copilot»
Pues te darás de bruces con los términos y condiciones de Copilot
The code, functions, and other output returned to you by GitHub Copilot are called “Suggestions.” GitHub does not claim any rights in Suggestions, and you retain ownership of and responsibility for Your Code, including Suggestions you include in Your Code.
Términos y condiciones de Copilot en GitHub
Lo traduzco: el código, funciones y otros resultados arrojados para ti por Github Copilot se llaman «Sugerencias». Github no reclama ningún derecho sobre las Sugerencias, y tu retienes toda la titularidad y toda la responsabilidad sobre tu código, incluyendo las Sugerencias que insertes en tu código
Fascinante.
Te meten en un lío pero es cosa tuya.
El peligro como ves es doble:
- Te arriesgas a que si no escribes mucho código no se proteja tu obra.
- Te arriesgas a que te pongan un código que pueda derivar en posibles reclamaciones que te afectarán a ti y solo a ti.
Ahora añádele lo que dicen en la documentación de Github Copilot
«You are responsible for ensuring the security and quality of your code. We recommend you take the same precautions when using code generated by GitHub Copilot that you would when using any code you didn’t write yourself. «
La documentación de Github Copilot
lo traduzco: «Eres responsable de asegurar la seguridad y calidad de tu código. Te recomendamos que tomes las mismas precauciones cuando uses código generado por Github Copilot que tomarías cuando usas cualquier código que no has escrito tú mismo»
¿A alguien se le ocurre cómo hacer esa magia si no sabemos la fuente del código o su autor?
Licencias de software libre y Copilot
Desde que nació Copilot hace casi un año estoy en medio de discusiones sobre la idoneidad o no de usar el código para entrenar Inteligencias artificiales.
Porque si le pones límites a los usos deja de ser código libre, pero a su vez, Copilot y otras inteligencias artificiales no están cumpliendo con los requisitos que piden las licencias libres.
Copilot como infracción de licencias libres
Me explico, la mayoría de las licencias piden que respetes los Notice de derechos de autor como requisito mínimo.
A partir de allí requieren entre otras que:
- si has hecho cambios que anotes cuales fueron
- añadas una copia de la licencia o la dejes accesible
- te obligan a que las transformaciones que realices sean compartidas bajo la misma licencia libre.
- poner a disposición el código fuente
Como puedes ver el requisito mínimo de mantener las Notices no la he visto por ningún sitio (si lo ves y me lo indicas prometo actualizar este post)
Si no se cumple al menos lo de mantener el Notice, hasta la la licencia más sencilla, como la MIT, no se estaría cumpliendo.
Ahora imagina lo que pasa en el caso de Tim Daves, que tiene una LGPL 2.1 o cualquier otra persona que tenga su código bajo GPL.
Las licencias te permiten usar un código siempre que cumplas los requisitos, de lo contrario es un incumplimiento del contrato.
Pero y si las cumpliera hay una pregunta mucho más complicada ¿Qué licencia se aplica a los resultados que crean los desarrolladores usando copilot? Porque ya hemos visto que la responsabilidad última es del desarrollador.
Copilot y la licencia sobre el código resultante.
Si alguna vez has tenido que elegir una licencia, sabes que es una decisión importante.
Tienes que ver que todas las librerías tienen licencia compatibles, que la que cubre el trabajo completo es adecuada para los fines que queremos.
Si Copilot está alimentada por miles de líneas de código con Licencias imagínate
- la MIT,
- CDDL,
- GPL,
- MOZILLA,
- UNLICENSE,
- JSON,
- Open Public License,
Dentro de un solo proyecto ¿Qué licencia es aplicable a nuestro código?
Porque en esa lista hay más de una que nos obliga a liberar el código, usar el mismo tipo de licencia o incluso enviar al versión modificada a un desarrollador inicial en específico.
Un quebradero de cabeza que además hace que en mi cabeza suene mucho mas fuere las palabras de los términos y condiciones de Copilot:
» y tu retienes toda la titularidad y toda la responsabilidad sobre tu código, incluyendo las Sugerencias que insertes en tu código«
Añádele eso de que tenías que tomar las mismas precauciones usando copilot que tomarías cuando usas código de otras personas.
Creo que ya he retratado bastante la problemática ¿verdad?
Demanda a Copilot
Pues con todo lo anterior no es de extrañar que se haya presentado una demanda contra Github, Microsoft y OpenIA
En la demanda no sólo se está tratando la violación de las licencias de software libre (incumplimiento del contrato), que, en mi opinión, podría sortearse con acogerse a los límites de la propiedad intelectual y al Fair use.
Sino que incluye la siguiente batería:
- violación a la privacidad y los términos y condiciones del propio Github
- violación de la Digital Millenium Copyright Act (DMCA) que prohíbe eliminar la mención al autor
- violación de la CCPA (California Consumer Privacy Act), que regula el tratamiento de datos personales.
- Interferencia ilícita en una relación contractual (al no proporcionar a los usuarios de Copilott información adecuada sobre las licencias que tendrían que cumplir)
- Fraude (por las supuestas mentiras de Github en sus términos y condiciones y su política de privacidad)
- Imitación fraudulenta según la ley Lanham (porque si no lees los TyC los usuarios pueden creer que los resultados generados por Copilot pertenecen a Copilot)
- Enriquecimiento injusto (personalmente lo veo y es otro de esos puntos sobre el que quería escribir)
- Competencia desleal
- Negligencia por el manejo negligente de datos personales
La demanda alcanza la cuantiosa cifra mínima de 9 mil millones de dólares.
Para más información creo que el blog desdelinux explican muy bien
Y si dominas el inglés Matthew Butterick te lo explica él mismo.
El P.D donde te cuento un par de cosas
Estaré en la LibreCon en Bilbao el 15 y 16 de noviembre, luego me iré a Stuttgart (Alemania) a un Congreso sobre Software Libre, en mi Instagram subiré algún vídeo hablando de lo que sucede por allí y podré usar mi frase estrella en alemán jaja!