La lucha entre el software de código abierto y el software propietario es bien conocida. Pero estas tensiones, que han existido durante décadas en el mundo del software, ahora se están trasladando al creciente espacio de la inteligencia artificial (IA), generando controversia. El New York Times publicó recientemente una evaluación positiva del CEO de Meta, Mark Zuckerberg, destacando cómo su apoyo a la “IA de código abierto” lo ha vuelto popular en Silicon Valley. Sin embargo, el problema es que los modelos de lenguaje de gran tamaño de Meta, conocidos como Llama, no son realmente de código abierto. ¿O sí lo son? Según la mayoría de las estimaciones, no lo son. Pero esto resalta cómo la noción de “IA de código abierto” solo va a generar más debate en los próximos años.
Esto es algo que la Iniciativa de Código Abierto (OSI, por sus siglas en inglés) está tratando de abordar, liderada por el director ejecutivo Stefano Maffulli, quien ha estado trabajando en el problema durante más de dos años a través de un esfuerzo global que incluye conferencias, talleres, paneles, seminarios web, informes y más.
La OSI ha sido guardiana de la Definición de Código Abierto (OSD) durante más de un cuarto de siglo, estableciendo cómo se puede o debe aplicar el término “código abierto” al software. Una licencia que cumple con esta definición puede considerarse legítimamente “código abierto”, aunque reconoce un espectro de licencias que van desde extremadamente permisivas hasta no tan permisivas. Pero trasladar las convenciones de licencias y nombres del software a la IA es problemático.
Joseph Jacks, evangelista del código abierto y fundador de la firma de capital de riesgo OSS Capital, llega a decir que no existe tal cosa como “IA de código abierto”, señalando que “el código abierto fue inventado explícitamente para el código fuente del software”. En contraste, los “pesos de la red neuronal” (NNWs, por sus siglas en inglés) —un término usado en el mundo de la inteligencia artificial para describir los parámetros o coeficientes a través de los cuales la red aprende durante el proceso de entrenamiento— no son de ninguna manera comparables al software. “Los pesos de la red neuronal no son código fuente de software; son ilegibles por los humanos, ni son depurables”, señala Jacks. “Además, los derechos fundamentales del código abierto tampoco se traducen de manera congruente a los NNWs”.
Esto llevó a Jacks y a su colega de OSS Capital, Heather Meeker, a idear su propia definición en torno al concepto de “pesos abiertos”. Entonces, antes de llegar a una definición significativa de “IA de código abierto”, ya podemos ver algunas de las tensiones inherentes en el intento de llegar allí. ¿Cómo podemos acordar una definición si no podemos acordar que la “cosa” que estamos definiendo existe?
Maffulli, por lo que vale, está de acuerdo. “El punto es correcto”, dijo a TechCrunch. “Uno de los debates iniciales que tuvimos fue si llamarlo IA de código abierto en absoluto, pero todos ya estaban usando el término”. Esto refleja algunos de los desafíos en el ámbito más amplio de la IA, donde abundan los debates sobre si lo que llamamos “IA” hoy en día realmente es IA o simplemente sistemas poderosos enseñados para detectar patrones entre grandes cantidades de datos. Pero los detractores en su mayoría se resignan al hecho de que la nomenclatura “IA” está aquí, y no tiene sentido luchar contra ella.
Fundada en 1998, la OSI es una corporación sin fines de lucro que trabaja en una miríada de actividades relacionadas con el código abierto en torno a la defensa, la educación y su razón de ser principal: la Definición de Código Abierto. Hoy en día, la organización depende de patrocinios para su financiación, con miembros tan prestigiosos como Amazon, Google, Microsoft, Cisco, Intel, Salesforce y Meta.
La participación de Meta con la OSI es particularmente notable en este momento en lo que respecta a la noción de “IA de código abierto”. A pesar de que Meta cuelga su sombrero de IA en el perchero del código abierto, la compañía tiene restricciones notables sobre cómo se pueden usar sus modelos Llama: pueden usarse gratis para casos de uso de investigación y comerciales, pero los desarrolladores de aplicaciones con más de 700 millones de usuarios mensuales deben solicitar una licencia especial a Meta, que se otorgará a su propia discreción. En pocas palabras, los grandes de la tecnología pueden silbar si quieren entrar.
El lenguaje de Meta en torno a sus modelos LLM es algo maleable. Mientras que la compañía llamó a su modelo Llama 2 de código abierto, con la llegada de Llama 3 en abril, se retiró un poco de la terminología, utilizando frases como “disponible abiertamente” y “accesible abiertamente” en su lugar. Pero en algunos lugares, todavía se refiere al modelo como “código abierto”. “Todos los demás que están involucrados en la conversación están perfectamente de acuerdo en que Llama en sí no puede considerarse de código abierto”, dijo Maffulli. “Las personas con las que he hablado que trabajan en Meta, saben que es un poco exagerado”.
Además, algunos podrían argumentar que hay un conflicto de intereses aquí: una compañía que ha mostrado un deseo de aprovechar la marca de código abierto también financia a los guardianes de “la definición”. Esta es una de las razones por las que la OSI está tratando de diversificar su financiación, asegurando recientemente una subvención de la Fundación Sloan, que está ayudando a financiar su impulso global de múltiples partes interesadas para alcanzar la Definición de IA de Código Abierto. TechCrunch puede revelar que esta subvención asciende a alrededor de $250,000, y Maffulli espera que esto pueda alterar la percepción sobre su dependencia de la financiación corporativa.
“Eso es algo que la subvención de Sloan deja aún más claro: podríamos decir adiós al dinero de Meta en cualquier momento”, dijo Maffulli. “Podríamos hacer eso incluso antes de esta subvención de Sloan, porque sé que vamos a recibir donaciones de otros. Y Meta lo sabe muy bien. No están interfiriendo con nada de este proceso, ni Microsoft, ni GitHub, ni Amazon, ni Google; saben absolutamente que no pueden interferir, porque la estructura de la organización no lo permite”.
El borrador actual de la Definición de IA de Código Abierto se encuentra en la versión 0.0.8, y consta de tres partes principales: el “preámbulo”, que establece el alcance del documento; la propia Definición de IA de Código Abierto; y una lista de verificación que recorre los componentes necesarios para un sistema de IA compatible con código abierto. Según el borrador actual, un sistema de IA de Código Abierto debería otorgar libertades para usar el sistema para cualquier propósito sin necesidad de permiso; permitir que otros estudien cómo funciona el sistema e inspeccionen sus componentes; y modificar y compartir el sistema para cualquier propósito.
Pero uno de los mayores desafíos ha sido en torno a los datos: es decir, ¿puede clasificarse un sistema de IA como “código abierto” si la compañía no ha puesto a disposición el conjunto de datos de entrenamiento para que otros lo examinen? Según Maffulli, es más importante saber de dónde provienen los datos y cómo un desarrollador etiquetó, desduplicó y filtró los datos. Y también, tener acceso al código que se utilizó para ensamblar el conjunto de datos a partir de sus diversas fuentes. “Es mucho mejor saber esa información que tener el conjunto de datos simple sin el resto”, dijo Maffulli.
Si bien tener acceso al conjunto de datos completo sería bueno (la OSI lo hace un componente “opcional”), Maffulli dice que no es posible ni práctico en muchos casos. Esto puede deberse a que hay información confidencial o con derechos de autor contenida en el conjunto de datos que el desarrollador no tiene permiso para redistribuir. Además, existen técnicas para entrenar modelos de aprendizaje automático en las que los datos en sí no se comparten realmente con el sistema, utilizando técnicas como el aprendizaje federado, la privacidad diferencial y la encriptación homomórfica.
Y esto resalta perfectamente las diferencias fundamentales entre “software de código abierto” y “IA de código abierto”: las intenciones pueden ser similares, pero no son comparables de manera directa, y esta disparidad es lo que la OSI está tratando de capturar en su definición. En el software, el código fuente y el código binario son dos vistas del mismo artefacto: reflejan el mismo programa en diferentes formas. Pero los conjuntos de datos de entrenamiento y los modelos entrenados subsecuentes son cosas distintas: puedes tomar ese mismo conjunto de datos, y no necesariamente podrás recrear el mismo modelo de manera consistente. “Hay una variedad de lógica estadística y aleatoria que ocurre durante el entrenamiento que significa que no puede hacerlo replicable de la misma manera que el software”, agregó Maffulli.
Entonces, un sistema de IA de código abierto debería ser fácil de replicar, con instrucciones claras. Y aquí es donde entra en juego la faceta de lista de verificación de la Definición de IA de Código Abierto, que se basa en un artículo académico publicado recientemente llamado “El Marco de Apertura del Modelo: Promoviendo la Completitud y la Apertura para la Reproducibilidad, Transparencia y Usabilidad en la Inteligencia Artificial”. Este documento propone el Marco de Apertura del Modelo (MOF, por sus siglas en inglés), un sistema de clasificación que califica los modelos de aprendizaje automático “basado en su completitud y apertura”. El MOF exige que componentes específicos del desarrollo del modelo de IA sean “incluidos y liberados bajo licencias abiertas apropiadas”, incluyendo metodologías de entrenamiento y detalles sobre los parámetros del modelo.
La OSI llama al lanzamiento oficial de la definición la “versión estable”, al igual que una empresa lo haría con una aplicación que ha sido sometida a pruebas y depuración extensivas antes de su lanzamiento. La OSI no la llama intencionalmente la “versión final” porque es probable que partes de ella evolucionen. “No podemos esperar realmente que esta definición dure 26 años como la Definición de Código Abierto”, dijo Maffulli. “No espero que la parte superior de la definición, como ‘¿qué es un sistema de IA?’, cambie mucho. Pero las partes a las que nos referimos en la lista de verificación, esas listas de componentes dependen de la tecnología. Mañana, quién sabe cómo será la tecnología”.
Se espera que la versión estable de la Definición de IA de Código Abierto sea aprobada por la Junta en la conferencia All Things Open a finales de octubre, con la OSI embarcándose en una gira mundial en los meses intermedios que abarcará cinco continentes, buscando más “opiniones diversas” sobre cómo se definirá “IA de código abierto” en el futuro. Pero es probable que cualquier cambio final sea poco más que “pequeños ajustes” aquí y allá. “Esta es la recta final”, dijo Maffulli. “Hemos alcanzado una versión completa de la definición; tenemos todos los elementos que necesitamos. Ahora tenemos una lista de verificación, así que estamos verificando que no haya sorpresas allí; no hay sistemas que deban ser incluidos o excluidos”.


