gadgetsgenial.es

Etiqueta: Open Source

  • IA y código abierto: la polémica reescritura de software que sacude al mundo del open source

    IA y código abierto. Los conflictos que vienen. Chardet solo es el primer caso.
    IA y código abierto. Los conflictos que vienen. Chardet solo es el primer caso.

    Vivimos en una era distinta. Todo está cambiando.

    El auge de la inteligencia artificial generativa está transformando rápidamente la industria tecnológica, pero una nueva controversia ha puesto de relieve uno de sus efectos más complejos: la reescritura de software mediante el uso de la IA.

    Modelos de lenguaje avanzados y agentes de programación son capaces de recrear grandes bases de código en cuestión de horas o días. Esto está permitiendo que desarrolladores reescriban proyectos existentes y los publiquen bajo licencias diferentes, lo que pone a prueba conceptos fundamentales del mundo del software como el copyright, las licencias y el movimiento copyleft.

    El caso más reciente surgió en la comunidad de Python con el popular proyecto chardet.


    La controversia de chardet

    La librería Python chardet fue creada para detectar el tipo de codificación utilizado para una cadena de caracteres o una página web. Fue creada en 2006 por Mark Pilgrim y se ha convertido en una herramienta extremadamente popular con unos 130 millones de descargas mensuales.

    El proyecto fue publicado bajo la licencia LGPL, una licencia copyleft que exige que las versiones derivadas mantengan las mismas condiciones de distribución.

    En 2012, Mark Pilgrim dejó el proyecto y el mantenimiento del mismo pasó a manos de Dan Blanchard quien estuvo actualizándolo hasta ahora.

    Recientemente, Blanchard lanzó chardet 7.0.0, describiéndolo como:

    • Una reescritura completa desde cero
    • Hasta 48 veces más rápida
    • Distribuida bajo la licencia MIT, mucho más permisiva

    Para crear esta nueva versión, Mark utilizó Claude de Anthropic, completando el trabajo en tan solo cinco días.

    El cambio de licencia tenía un objetivo claro: facilitar que la biblioteca pudiera integrarse en la biblioteca estándar de Python.


    El creador original se opone

    Poco después del lanzamiento, Mark Pilgrim reapareció en GitHub para protestar.

    Según él, los mantenedores no tienen derecho a cambiar la licencia del proyecto.

    Pilgrim argumentó que incluso si fuera cierto que el código fue reescrito, los desarrolladores habían estado expuestos durante años al código original, lo que podría convertir la nueva versión en una obra derivada bajo los términos de la LGPL.

    También cuestionó el argumento de que usar IA cambiara la situación legal:

    “Añadir un generador de código sofisticado no concede ningún derecho adicional”.


    El debate del “clean room”

    El conflicto gira en torno al concepto de implementación “clean room”.

    Históricamente, este método se utilizó para recrear software sin violar derechos de autor. El caso más famoso ocurrió en 1982 cuando Compaq clonó el BIOS de IBM.

    El proceso requería dos equipos separados:

    1. El primero analizaba el producto original y escribía una especificación
    2. El otro creaba un nuevo código basándose únicamente en esa especificación

    Este proceso podía tardar meses.

    Actualmente, un modelo de IA puede realizar ese proceso en cuestión de horas.

    Blanchard reconoce que su método no fue un clean room tradicional, ya que conoce el proyecto desde hace más de una década. Sin embargo, sostiene que lo importante es que el resultado final sea estructuralmente independiente.

    Para demostrarlo utilizó JPlag, una herramienta de detección de plagio de código. Según sus pruebas, la similitud máxima entre el nuevo código y versiones anteriores es inferior al 1.3 %.


    El problema de fondo: el entrenamiento de la IA

    El uso de IA introduce una complicación completamente nueva.

    Incluso si el desarrollador comenzó con un repositorio vacío, el modelo Claude probablemente fue entrenado con código público, incluyendo potencialmente el código original de chardet.

    Esto plantea una pregunta jurídica inédita:

    ¿Puede una IA entrenada con código copyleft generar legalmente una versión no derivada de ese mismo software?

    La respuesta todavía no está clara.


    Un posible terremoto para la industria

    Muchos expertos creen que el caso chardet es solo el primer indicio de un problema mucho mayor.

    En listas de correo del desarrollo del kernel de Linux ya se debate la posibilidad de que agentes de IA reescriban grandes partes del sistema operativo bajo licencias distintas.

    Zoë Kooyman, directora de la Free Software Foundation, criticó duramente la práctica:

    “No hay nada ‘limpio’ en un modelo de lenguaje que ha ingerido el código que se le pide reimplementar”.


    La incertidumbre legal

    La situación legal tampoco está definida.

    El año pasado, la Corte Suprema de los EEUU rechazó revisar el caso Thaler v. Perlmutter, confirmando que el contenido generado exclusivamente por IA no puede tener copyright.

    Esto deja abiertas preguntas importantes:

    • ¿Cuánta participación humana se necesita para reclamar derechos de autor?
    • ¿Quién es responsable legalmente de una reescritura generada por IA?

    Ahora bien, el que no se pueda proteger código escrito por la IA no significa que la nueva versión de chardet sea una copia de la versión original.


    ¿El fin del modelo económico del software?

    Algunos pioneros del software libre creen que estamos ante un punto de inflexión.

    Armin Ronacher, creador del framework Flask, señala que las licencias copyleft siempre han dependido de la “dificultad”de reescribir código.

    La IA prácticamente ha eliminado ese obstáculo.

    Uno de los críticos más contundentes de esta nueva situación es Bruce Perens, autor de la Open Source Definition.

    Según Perens, esta tecnología podría transformar completamente la economía del software:

    “Estoy rompiendo el vidrio y activando la alarma de incendios. La economía del desarrollo de software está acabada”.

    Incluso demostró el problema recreando con IA una plataforma completa de System Reliability Engineering (SRE) en cuestión de días y bajo otra licencia.

    Hay que decir que esto no es nada nuevo y es algo que ya vemos que está beneficiando a sistemas operativos minoritarios como Linux y macOS ya que se ha vuelto muy sencillo portar aplicaciones de Windows a esos sistemas operativos.


    Un punto de inflexión tecnológico

    La capacidad de la IA para reescribir software plantea un dilema profundo tanto para empresas propietarias como para el movimiento de código abierto.

    Si cualquier base de código puede ser recreada rápidamente mediante el uso de la IA, los límites tradicionales entre software original, derivado y reimplementado podrían desaparecer.

    Como señaló Perens, quizá estamos viviendo un momento comparable a la invención de la imprenta:

    el conocimiento ha alcanzado una masa crítica, y las reglas que lo rodean están a punto de cambiar para siempre.