El desarrollo de software de código abierto generalmente sigue los principios de reciprocidad y producción entre pares, promoviendo la mejora de módulos de producción, canales de comunicación y comunidades interactivas. Ejemplos típicos incluyen Linux y Mozilla Firefox.
El software de código cerrado (software propietario), debido a razones comerciales u otras, no hace público el código fuente y solo proporciona programas legibles por computadora (como en formato binario). El código fuente solo es manejado y controlado por los desarrolladores. Ejemplos típicos incluyen Windows y Android.
El código abierto es un modelo de desarrollo de software basado en la apertura, el intercambio y la colaboración, que fomenta la participación colectiva en el desarrollo y mejora del software, impulsando el progreso tecnológico continuo y la aplicación generalizada.
El software que elige el desarrollo de código cerrado tiene más probabilidades de convertirse en un producto estable y enfocado, pero el software de código cerrado generalmente cuesta dinero y, si tiene algún error o carece de funciones, solo se puede esperar a que el desarrollador resuelva el problema.
En cuanto a qué es un modelo de gran escala de código abierto, la industria no ha llegado a un consenso claro como lo ha hecho con el software de código abierto.
El código abierto de los grandes modelos de lenguaje y el código abierto de software son similares en concepto, ambos se basan en la apertura, el intercambio y la colaboración, fomentando la participación comunitaria en el desarrollo y mejora, impulsando el progreso tecnológico y aumentando la transparencia.
Sin embargo, hay diferencias significativas en la implementación y los requisitos.
El código abierto de software se centra principalmente en aplicaciones y herramientas, con menores requisitos de recursos para el código abierto, mientras que el código abierto de grandes modelos de lenguaje implica grandes cantidades de recursos computacionales y datos de alta calidad, y puede tener más restricciones de uso. Por lo tanto, aunque ambos tipos de código abierto tienen como objetivo promover la innovación y la difusión tecnológica, el código abierto de grandes modelos de lenguaje enfrenta más complejidades, y las formas de contribución de la comunidad también son diferentes.
Li Yanhong también enfatizó la diferencia entre los dos, diciendo que el código abierto del modelo no es igual al código abierto del software: "El código abierto del modelo solo puede obtener un montón de parámetros, y aún necesita hacer SFT (ajuste fino supervisado) y alineación de seguridad. Incluso si se obtiene el código fuente correspondiente, no se sabe qué proporción y qué tipo de datos se utilizaron para entrenar estos parámetros, lo que hace imposible lograr que muchas personas contribuyan al fuego alto. Obtener estas cosas no te permite iterar y desarrollar sobre los hombros de gigantes."
El código abierto de todo el proceso de los grandes modelos de lenguaje incluye hacer público y transparente todo el proceso de desarrollo del modelo, desde la recopilación de datos, el diseño del modelo, el entrenamiento hasta la implementación. Este enfoque no solo incluye la publicación de conjuntos de datos y la apertura de la arquitectura del modelo, sino que también abarca el intercambio de código del proceso de entrenamiento y la publicación de los pesos del modelo preentrenado.
En el último año, el número de grandes modelos de lenguaje ha aumentado significativamente, y muchos afirman ser de código abierto, pero ¿qué tan abiertos son realmente?
Andreas Liesenfeld, investigador de inteligencia artificial de la Universidad de Radboud en los Países Bajos, y Mark Dingemanse, lingüista computacional, también descubrieron que aunque el término "código abierto" se usa ampliamente, muchos modelos son como máximo "pesos abiertos", ocultando la mayoría de los otros aspectos de la construcción del sistema.
Por ejemplo, aunque empresas tecnológicas como Meta y Microsoft promocionan sus grandes modelos de lenguaje como "código abierto", no han hecho pública información importante relacionada con la tecnología subyacente. Lo que les sorprendió fue que las empresas e instituciones de IA con menos recursos tuvieron un desempeño más encomiable.
El equipo de investigación analizó una serie de proyectos populares de grandes modelos de lenguaje "de código abierto", evaluando su grado real de apertura en varios aspectos, desde código, datos, pesos, API hasta documentación. El estudio también incluyó a ChatGPT de OpenAI como punto de referencia de código cerrado, destacando el estado real de los proyectos "de código abierto".
✔ para abierto, ~ para parcialmente abierto, X para cerrado
Los resultados muestran diferencias significativas entre los proyectos. Según este ranking, OLMo del Allen Institute for AI es el modelo de código abierto más abierto, seguido por BloomZ de BigScience, ambos desarrollados por organizaciones sin fines de lucro.
El documento afirma que aunque Llama de Meta y Gemma de Google DeepMind se autodenominan de código abierto o abiertos, en realidad solo tienen pesos abiertos, lo que significa que los investigadores externos pueden acceder y usar el modelo preentrenado, pero no pueden examinar o personalizar el modelo, ni saber cómo se ajustó finamente el modelo para tareas específicas.
El reciente lanzamiento de LLaMA 3 y Mistral Large 2 ha atraído mucha atención. En términos de apertura del modelo, LLaMA 3 ha hecho públicos los pesos del modelo, permitiendo a los usuarios acceder y utilizar estos pesos preentrenados y ajustados por instrucciones. Además, Meta también proporciona algo de código básico para el preentrenamiento y el ajuste fino por instrucciones del modelo, pero no ha proporcionado el código de entrenamiento completo, y los datos de entrenamiento de LLaMA 3 tampoco se han hecho públicos. Sin embargo, esta vez Meta trajo un informe técnico de 93 páginas sobre LLaMA 3.1 405B.
La situación de Mistral Large 2 es similar, manteniendo un alto grado de apertura en términos de pesos del modelo y API, pero con un menor grado de apertura en términos de código completo y datos de entrenamiento, adoptando una estrategia que equilibra los intereses comerciales y la apertura, permitiendo el uso para investigación pero con algunas restricciones para el uso comercial.
Google afirma que la compañía es "muy precisa en el lenguaje" al describir el modelo, refiriéndose a Gemma como abierto en lugar de código abierto. "Los conceptos existentes de código abierto no siempre se aplican directamente a los sistemas de IA", dijeron.
Un contexto importante para este estudio es la Ley de Inteligencia Artificial de la Unión Europea, que, cuando entre en vigor, impondrá una regulación más laxa a los modelos clasificados como abiertos, por lo que la definición de código abierto podría volverse aún más importante.
Los investigadores afirman que la única forma de innovar es ajustando el modelo, para lo cual se necesita suficiente información para construir su propia versión. Además, los modelos también deben someterse a escrutinio; por ejemplo, si un modelo se ha entrenado en una gran cantidad de muestras de prueba, pasar una prueba específica puede no ser un logro.
También se muestran complacidos por la aparición de tantas alternativas de código abierto, ya que ChatGPT es tan popular que es fácil olvidar que no se sabe nada sobre sus datos de entrenamiento u otros medios entre bastidores. Esto es un peligro para aquellos que desean comprender mejor el modelo o construir aplicaciones basadas en él, y las alternativas de código abierto hacen posible la investigación fundamental crucial.
Silicon Star también ha recopilado estadísticas sobre la situación de código abierto de algunos grandes modelos de lenguaje nacionales:
Como podemos ver en la tabla, similar a la situación en el extranjero, los modelos con código abierto más completo son básicamente liderados por instituciones de investigación, principalmente porque el objetivo de las instituciones de investigación es promover el progreso de la investigación científica y el desarrollo de la industria, y están más inclinadas a abrir sus resultados de investigación.
Las empresas comerciales, por otro lado, utilizan sus ventajas de recursos para desarrollar modelos más poderosos y obtienen ventajas competitivas a través de estrategias apropiadas de código abierto.
Desde GPT-3 hasta BERT, el código abierto ha traído un impulso importante al ecosistema de los grandes modelos.
Al hacer públicas sus arquitecturas y métodos de entrenamiento, los investigadores y desarrolladores pueden realizar más exploraciones y mejoras sobre estas bases, dando lugar a más tecnologías y aplicaciones de vanguardia.
La aparición de grandes modelos de código abierto ha reducido significativamente las barreras de desarrollo, permitiendo a los desarrolladores y pequeñas y medianas empresas utilizar estas tecnologías de IA avanzadas sin tener que construir modelos desde cero, ahorrando así una gran cantidad de tiempo y recursos. Esto ha permitido que más proyectos e productos innovadores se materialicen rápidamente, impulsando el desarrollo de toda la industria. Los desarrolladores comparten activamente métodos de optimización y casos de aplicación en plataformas de código abierto, lo que también ha promovido la madurez tecnológica y la aplicación.
Para la educación y la investigación científica, los grandes modelos de lenguaje de código abierto proporcionan recursos valiosos. Los estudiantes y los desarrolladores novatos pueden dominar rápidamente las tecnologías de IA avanzadas estudiando y utilizando estos modelos, acortando la curva de aprendizaje y aportando sangre fresca a la industria.
Sin embargo, la apertura de los grandes modelos de lenguaje no es una característica binaria simple. La arquitectura del sistema basada en Transformer y su proceso de entrenamiento son extremadamente complejos y difíciles de clasificar simplemente como abiertos o cerrados. El código abierto de los grandes modelos no es una etiqueta simple, sino más bien un espectro, que va desde completamente abierto hasta parcialmente abierto, con diversos grados.
El código abierto de los grandes modelos de lenguaje es un trabajo complejo y detallado, y no todos los modelos deben ser de código abierto.
Tampoco se debe exigir un código abierto completo de una manera de "chantaje moral", ya que esto implica una gran cantidad de consideraciones técnicas, de recursos y de seguridad, y es necesario equilibrar la apertura y la seguridad, la innovación y la responsabilidad. Al igual que en otros aspectos del campo tecnológico, solo las formas diversas de contribución pueden construir un ecosistema tecnológico más rico.
La relación entre los modelos de código abierto y cerrado podría compararse con la coexistencia de software de código abierto y cerrado en la industria del software.
Los modelos de código abierto promueven la amplia difusión e innovación de la tecnología, mientras que los modelos de código cerrado proporcionan soluciones más profesionales y seguras en campos específicos. Ambos se complementan entre sí y juntos impulsan el desarrollo de la tecnología de inteligencia artificial.
En el futuro, es probable que veamos la aparición de más modos híbridos, como el código abierto parcial o condicional, para equilibrar el intercambio tecnológico y los intereses comerciales.
Ya sea de código abierto o cerrado, lo importante es garantizar la seguridad, fiabilidad y ética de los modelos. Esto requiere el esfuerzo conjunto de la industria, la academia y los organismos reguladores para establecer estándares y normas apropiados que garanticen el desarrollo saludable de la tecnología de IA.
En general, los grandes modelos de lenguaje de código abierto y cerrado tienen sus propias ventajas y limitaciones. Los modelos de código abierto promueven la amplia difusión e innovación de la tecnología, mientras que los modelos de código cerrado proporcionan soluciones más profesionales y seguras en campos específicos. La coexistencia y competencia de ambos impulsará el desarrollo de toda la industria de IA, brindando a los usuarios más opciones y mejores experiencias.
En el futuro, es probable que veamos la aparición de más modos híbridos, como el código abierto parcial o condicional, para equilibrar el intercambio tecnológico y los intereses comerciales. Independientemente del modo adoptado, es crucial garantizar la seguridad, fiabilidad y ética de los modelos, lo que requiere el esfuerzo conjunto de la industria, la academia y los organismos reguladores.