curso
¿Qué es Llama 3.1 405B de Meta? Cómo funciona, casos de uso y más
El martes 23 de julio de 2024, Meta anunció Llama 3.1, la última versión de su serie Llama de grandes modelos lingüísticos (LLM).
Aunque es una actualización menor del modelo Llama 3, introduce Llama 3.1 405B: un modelo de 405.000 millones de parámetros, el LLM de código abierto más grande del mundo hasta la fecha, lo cual supera al de NVIDIA Nemotron-4-340B-Instruct.
Las evaluaciones experimentales sugieren que rivaliza con modelos líderes como el GPT-4, GPT-4oy Claude 3.5 Sonnet en varias tareas.
Sin embargo, dado que competidores como Mistral y Falcon optan por modelos más pequeños, surgen dudas sobre la relevancia de los grandes LLM de peso abierto en el panorama actual.
Sigue leyendo para conocer nuestra opinión, así como información sobre las actualizaciones del ecosistema Llama.
¿Qué es Llama 3.1 405B?
Llama 3.1 es una actualización puntual de Llama 3 (anunciada en abril de 2024). Llama 3.1 405B es la versión estrella del modelo, que, como su nombre indica, tiene 405.000 millones de parámetros.
Fuente: Meta AI
Llama3.1 405B en la clasificación LMSys Chatbot Arena
Tener 405.000 millones de parámetros lo sitúa en la pugna por una posición alta en la LMSys Chatbot Arena Leaderboarduna medida de rendimiento puntuada a partir de los votos ciegos de los usuarios.
En los últimos meses, el primer puesto ha alternado entre versiones de OpenAI GPT-4, Claude Antrópico 3y Google Gemini. Actualmente, GPT-4o ostenta la corona, pero el más pequeño Claude 3.5 Sonnet ocupa el segundo lugar, y es probable que el inminente Claude 3.5 Opus se haga con la primera posición si consigue salir al mercado antes de que OpenAI actualice GPT-4o.
Eso significa que la competición en la gama alta es dura, y será interesante ver cómo se enfrenta Llama 3.1 405B a estos competidores. Mientras esperamos a que Llama 3.1 405B aparezca en la tabla de clasificación, más adelante en el artículo se ofrecen algunas pruebas comparativas.
Capacidad multilingüe
La principal actualización de Llama 3 a Llama 3.1 es una mejor compatibilidad con idiomas distintos del inglés. Los datos de entrenamiento de Llama 3 eran en un 95% ingleses, por lo que su rendimiento en otros idiomas fue deficiente. La actualización 3.1 ofrece compatibilidad con alemán, francés, italiano, portugués, hindi, español y tailandés.
Contexto más largo
Los modelos Llama 3 tenían una ventana de contexto -la cantidad de texto sobre la que se puede razonar a la vez- de 8000 tokens (unas 6000 palabras). Llama 3.1 lo eleva a una cifra más moderna, 128.000, lo que lo hace competitivo con otros LLM de última generación.
Esto soluciona un punto débil importante para la familia Llama. Para casos de uso empresarial como resumir documentos largos, generar código que implique contexto a partir de una gran base de código o conversaciones de chatbot de asistencia ampliada, es esencial una ventana de contexto larga que pueda almacenar cientos de páginas de texto.
Contrato de licencia de modelo abierto
Los modelos Llama 3.1 están disponibles bajo el Acuerdo de licencia de modelo abierto personalizado de Meta. Esta licencia permisiva concede a los investigadores, desarrolladores y empresas la libertad de utilizar el modelo tanto para la investigación como para aplicaciones comerciales.
En una importante actualización, Meta también ha ampliado la licencia para permitir a los desarrolladores utilizar los resultados de los modelos Llama, incluido el modelo 405B, para mejorar otros modelos.
En esencia, esto significa que cualquiera puede utilizar las capacidades del modelo para avanzar en su trabajo, crear nuevas aplicaciones y explorar las posibilidades de la IA, siempre que se atenga a las condiciones establecidas en el acuerdo.
¿Cómo funciona Llama 3.1 405B?
Esta sección explica los detalles técnicos del funcionamiento de Llama 3.1 405B, incluida su arquitectura, el proceso de entrenamiento, la preparación de los datos, los requisitos computacionales y las técnicas de optimización.
Arquitectura del transformador con retoques
Llama 3.1 405B se basa en una arquitectura de transformador estándar de solo decodificador, un diseño común a muchos grandes modelos lingüísticos de éxito.
Aunque la estructura central sigue siendo la misma, Meta ha introducido pequeñas adaptaciones para mejorar la estabilidad y el rendimiento del modelo durante el entrenamiento. En particular, se excluye intencionadamente la arquitectura de mezcla de expertos (MoE) y se prioriza la estabilidad y la escalabilidad en el proceso de entrenamiento.
Fuente: Meta AI
El diagrama ilustra cómo procesa el lenguaje Llama 3.1 405B. Comienza dividiendo el texto de entrada en unidades más pequeñas llamadas tokens y luego se convierten en representaciones numéricas llamadas incrustaciones de tokens.
A continuación, estas incrustaciones se procesan a través de múltiples capas de autoatención, donde el modelo analiza las relaciones entre los distintos tokens para comprender su significado y contexto dentro de la entrada.
La información obtenida de las capas de autoatención pasa después a través de una red de realimentación, que procesa y combina la información para deducir el significado. Este proceso de autoatención y procesamiento prealimentado se repite varias veces para profundizar en la comprensión del modelo.
Por último, el modelo utiliza esta información para generar una respuesta token a token, en función de los resultados anteriores para crear un texto coherente y pertinente. Este proceso iterativo, conocido como descodificación autorregresiva, permite que el modelo produzca una respuesta fluida y contextualmente adecuada al estímulo de entrada.
Proceso de formación en varias fases
El desarrollo de Llama 3.1 405B implicó un proceso de formación en varias fases. Inicialmente, el modelo se sometió a un preentrenamiento en una vasta y diversa colección de conjuntos de datos que abarcaban billones de tokens. Esta exposición a cantidades masivas de texto permite al modelo aprender gramática, hechos y capacidades de razonamiento a partir de los patrones y estructuras que encuentra.
Tras el preentrenamiento, el modelo se somete a rondas iterativas de ajuste fino supervisado (SFT) y optimización directa de preferencias (DPO). El SFT implica el entrenamiento en tareas y conjuntos de datos específicos con retroalimentación humanaguiando al modelo para que produzca los resultados deseados.
La DPO, en cambio, se centra en perfeccionar las respuestas del modelo en función de las preferencias recogidas de los evaluadores humanos. Este proceso iterativo mejora progresivamente la capacidad del modelo para seguir instrucciones, mejorar la calidad de sus respuestas y garantizar la seguridad.
Calidad y cantidad de datos
Meta afirma haber hecho mucho hincapié en la calidad y la cantidad de los datos de entrenamiento. En el caso de Llama 3.1 405B, esto supuso un riguroso proceso de preparación de los datos, que incluía un amplio filtrado y limpieza para mejorar la calidad general de los conjuntos de datos.
Curiosamente, el propio modelo 405B se utiliza para generar datos sintéticos, que luego se incorporan al proceso de entrenamiento para perfeccionar aún más las capacidades del modelo.
Ampliación computacional
Entrenar un modelo tan grande y complejo como Llama 3.1 405B requiere una enorme potencia de cálculo. Para ponerlo en perspectiva, Meta utilizó más de 16.000 de las GPU más potentes de NVIDIA, las H100, para entrenar este modelo de forma eficiente.
También introdujeron mejoras significativas en toda su infraestructura de formación para garantizar que pudiera hacer frente a la inmensa escala del proyecto, lo que permitió que el modelo aprendiera y mejorara eficazmente.
Cuantificación para la inferencia
Para que Llama 3.1 405B sea más utilizable en aplicaciones del mundo real, Meta aplicó una técnica llamada cuantización, que consiste en convertir los pesos del modelo de una precisión de 16 bits (BF16) a una precisión de 8 bits (FP8). Es como pasar de una imagen de alta resolución a otra de resolución ligeramente inferior: conserva los detalles esenciales al tiempo que reduce el tamaño del archivo.
Del mismo modo, la cuantización simplifica los cálculos internos del modelo, para que funcione mucho más rápido y eficazmente en un solo servidor. Esta optimización hace que sea más fácil y rentable para otros utilizar las capacidades del modelo.
Casos prácticos de Llama 3.1 405B
Llama 3.1 405B ofrece varias aplicaciones potenciales gracias a su naturaleza de código abierto y a sus grandes capacidades.
Generación de datos sintéticos
La capacidad del modelo para generar texto que se asemeje mucho al lenguaje humano puede utilizarse para crear grandes cantidades de datos sintéticos.
Estos datos sintéticos pueden ser valiosos para entrenar otros modelos lingüísticos, mejorar las técnicas de aumento de datos (hacer que los datos existentes sean más diversos) y desarrollar simulaciones realistas para diversas aplicaciones.
Modelo de destilación
Los conocimientos contenidos en el modelo 405B pueden transferirse a modelos más pequeños y eficaces mediante un proceso llamado destilación.
Piensa en la destilación de modelos como enseñar a un alumno (un modelo de IA más pequeño) los conocimientos de un experto (el modelo Llama 3.1 405B más grande). Este proceso permite al modelo más pequeño aprender y realizar tareas sin necesitar el mismo nivel de complejidad o recursos informáticos que el modelo más grande.
Esto permite ejecutar capacidades avanzadas de IA en dispositivos como teléfonos inteligentes u ordenadores portátiles, que tienen una potencia limitada en comparación con los potentes servidores utilizados para entrenar el modelo original.
Un ejemplo reciente de destilación de modelos es el GPT-4o minide OpenAI, que es una versión destilada de GPT-4o.
Investigación y experimentación
Llama 3.1 405B es una valiosa herramienta de investigación que permite a científicos y desarrolladores explorar nuevas fronteras en el procesamiento del lenguaje natural y la inteligencia artificial.
Su naturaleza abierta fomenta la experimentación y la colaboración, acelerando el ritmo de los descubrimientos.
Soluciones específicas para cada sector
Al adaptar el modelo a datos específicos de sectores concretos, como la sanidad, las finanzas o la educación, es posible crear soluciones de IA personalizadas que aborden los retos y requisitos exclusivos de esos ámbitos.
Llama 3.1 405B: énfasis en la seguridad
Meta afirma poner un énfasis significativo en garantizar la seguridad de sus modelos Llama 3.1.
Fuente: Meta AI
Antes de lanzar Llama 3.1 405B, realizaron amplios ejercicios de "red teaming". En estos ejercicios, los expertos internos y externos actúan como adversarios, intentando encontrar formas de hacer que el modelo se comporte de forma perjudicial o inadecuada. Esto ayuda a identificar posibles riesgos o vulnerabilidades en el comportamiento del modelo.
Además de las pruebas previas a la implementación, Llama 3.1 405B se somete a un ajuste de seguridad. Este proceso implica técnicas como el aprendizaje por refuerzo a partir de la retroalimentación humana (RLHF)en las que el modelo aprende a alinear sus respuestas con los valores y preferencias humanos. Esto ayuda a mitigar los resultados perjudiciales o sesgados, para que el modelo sea más seguro y fiable para su uso en el mundo real.
Meta también presentó Llama Guard 3, un nuevo modelo de seguridad multilingüe diseñado para filtrar y marcar los contenidos dañinos o inapropiados generados por Llama 3.1 405B. Esta capa adicional de protección ayuda a garantizar que los resultados del modelo cumplen las directrices éticas y de seguridad.
Fuente: Meta AI
Otra función de seguridad es Prompt Guard, cuyo objetivo es evitar los ataques de inyección por prompts. Estos ataques consisten en insertar instrucciones maliciosas en los avisos al usuario para manipular el comportamiento del modelo. Prompt Guard filtra tales instrucciones y salvaguarda el modelo de posibles usos indebidos.
Fuente: Meta AI
Además, Meta ha incorporado Code Shield, una función centrada en la seguridad del código generado por Llama 3.1 405B. Code Shield filtra las sugerencias de código inseguro en tiempo real durante el proceso de inferencia y ofrece protección de ejecución segura de comandos para siete lenguajes de programación, todo ello con una latencia media de 200 ms. Esto ayuda a mitigar el riesgo de generar código que pueda explotarse o suponer una amenaza para la seguridad.
Fuente: Meta AI
Puntos de referencia Llama 3.1 405B
Meta ha sometido a Llama 3.1 405B a una evaluación rigurosa en más de 150 conjuntos de datos de referencia diversos. Estos puntos de referencia abarcan un amplio espectro de tareas y destrezas lingüísticas, que van desde los conocimientos generales y el razonamiento hasta la codificación, las matemáticas y las capacidades multilingües.
Fuente: Meta AI
Llama 3.1 405B rinde de forma competitiva con los principales modelos de código cerrado, como GPT-4, GPT-4o y Claude 3.5 Sonnet, en muchas pruebas de rendimiento. En particular, demuestra especial fortaleza en tareas de razonamiento, alcanzando puntuaciones de 96,9 en ARC Challenge y 96,8 en GSM8K. También destaca en la generación de código, con una puntuación de 89,0 en la prueba HumanEval.
Además de las pruebas comparativas automatizadas, Meta AI ha realizado amplias evaluaciones humanas para valorar el rendimiento de Llama 3.1 405B en escenarios reales.
Fuente: Meta AI
Aunque la Llama 3.1 405B es competitiva en estas evaluaciones, no supera sistemáticamente a los demás modelos. Funciona a la par que el GPT-4-0125-Preview (el modelo GPT-4 de OpenAI lanzado para preestreno a principios de 2024) y el Sonnet Claude 3.5, puesto que gana y pierde aproximadamente el mismo porcentaje de evaluaciones. Queda ligeramente por detrás de GPT-4o, ya que solo gana el 19,1% de las comparaciones.
¿Dónde puedo acceder a Llama 3.1 405B?
Puedes acceder a Llama 3.1 405B a través de dos canales principales:
- Descarga directa desde Meta: Los modelos pueden descargarse directamente del sitio web oficial de Llama de Meta: llama.meta.com
- Hugging Face: Llama 3.1 405B también está disponible en la plataforma Hugging Face un popular centro para compartir y acceder a modelos de machine learning.
Al poner el modelo a disposición del público, Meta pretende permitir que investigadores, desarrolladores y organizaciones utilicen sus capacidades para diversas aplicaciones y contribuyan al avance continuo de la tecnología de la IA. Más información sobre los principios de Meta respecto a la IA de código abierto en la carta de Mark Zuckerberg.
Familia de modelos Llama 3.1
Aunque la Llama 3.1 405B acapara titulares por su tamaño, la familia Llama 3.1 ofrece otros modelos diseñados para atender a diferentes casos de uso y limitaciones de recursos. Estos modelos comparten los avances de la versión 405B, pero están adaptados a necesidades específicas.
Llama 3.1 70B: Versátil
El modelo Llama 3.1 70B logra un equilibrio entre rendimiento y eficacia, lo que lo convierte en un firme candidato para una amplia gama de aplicaciones.
Destaca en tareas como el resumen de textos largos, la creación de agentes conversacionales multilingües y la ayuda en la codificación.
Aunque es más pequeño que el modelo 405B, sigue siendo competitivo con otros modelos abiertos y cerrados de tamaño similar en diversas pruebas comparativas. Su reducido tamaño también facilita su implementación y gestión en hardware estándar.
Fuente: Meta AI
Llama 3.1 8B: Ligero y eficaz
El modelo Llama 3.1 8B prioriza la velocidad y el bajo consumo de recursos. Es ideal para escenarios en los que estos factores son cruciales, como la implementación en dispositivos periféricos, plataformas móviles o en entornos con recursos computacionales limitados.
Incluso con su menor tamaño, ofrece un rendimiento competitivo en comparación con modelos de tamaño similar en diversas tareas (consulta la tabla anterior).
Si te interesa ajustar Llama 3.1 8B, lee más en este tutorial sobre Cómo ajustar Llama 3.1 para la clasificación de textos.
Mejoras compartidas en todos los modelos Llama 3.1
Todos los modelos Llama 3.1 comparten varias mejoras clave:
- Ventana de contexto ampliada (128.000 tokens): La ventana de contexto, que representa la cantidad de texto que el modelo puede considerar a la vez, se ha aumentado significativamente a 128.000 tokens. Esto permite a los modelos procesar entradas mucho más largas y mantener el contexto en conversaciones o documentos extensos.
- Multilingüe: Ahora todos los modelos admiten ocho idiomas: inglés, alemán, francés, italiano, portugués, hindi, español y tailandés. Esta variedad lingüística más amplia permite su aplicabilidad a un público global.
- Mejora del uso y razonamiento de las herramientas: Se han mejorado las capacidades de uso de herramientas y de razonamiento de los modelos, ahora más versátiles y hábiles en el manejo de tareas complejas.
- Mayor seguridad: En todos los modelos Llama 3.1 se han aplicado pruebas de seguridad y ajustes rigurosos para mitigar los riesgos potenciales y promover el uso responsable de la IA. Esto incluye esfuerzos para reducir los sesgos y los resultados perjudiciales.
LLM grandes frente a pequeños: el debate
El lanzamiento de Llama 3.1 405B, aunque impresionante en escala, suscita un debate sobre el tamaño óptimo de los modelos lingüísticos en el panorama actual de la IA.
Como se ha dicho brevemente en la introducción, competidores como Mistral y Falcon han optado por modelos más pequeños y han argumentado que ofrecen un enfoque más práctico y accesible. Estos modelos más pequeños suelen requerir menos recursos informáticos, por lo que son más fáciles de desplegar y ajustar a tareas específicas.
Sin embargo, los defensores de los modelos grandes como Llama 3.1 405B argumentan que su gran tamaño les permite captar una mayor profundidad y amplitud de conocimientos, lo que conduce a un rendimiento superior en una gama más amplia de tareas. También señalan el potencial de estos grandes modelos para servir como "modelos básicos" sobre los que pueden construirse modelos más pequeños y especializados mediante la destilación.
El debate entre LLM grandes y pequeños se reduce en última instancia a un compromiso entre capacidades y practicidad. Aunque los modelos más grandes ofrecen un mayor potencial de rendimiento avanzado, también conllevan una mayor demanda computacional y un posible impacto medioambiental debido a su consumo de energía. Los modelos más pequeños, en cambio, pueden sacrificar algo de rendimiento a cambio de una mayor accesibilidad y facilidad de implementación.
El lanzamiento por parte de Meta de la Llama 3.1 405B junto con variantes más pequeñas como los modelos 70B y 8B parece reconocer esta compensación. Al ofrecer una gama de tamaños de modelos, satisfacen las distintas necesidades y preferencias de la comunidad de IA.
En última instancia, la elección entre LLM grandes y pequeños dependerá del caso de uso específico, los recursos disponibles y las características de rendimiento deseadas. A medida que el campo siga evolucionando, es probable que ambos enfoques coexistan, encontrando cada uno su nicho en el diverso panorama de las aplicaciones de la IA.
Conclusión
El lanzamiento de la familia Llama 3.1, en particular el modelo 405B, representa una notable contribución al campo de los grandes modelos lingüísticos de código abierto.
Aunque su rendimiento no supere sistemáticamente a todos los modelos cerrados, sus capacidades y el compromiso de Meta con la transparencia y la colaboración ofrecen un nuevo camino para el desarrollo de la IA.
La disponibilidad de múltiples tamaños de modelos y mejoras compartidas amplía las aplicaciones potenciales para investigadores, desarrolladores y organizaciones.
Al compartir abiertamente esta tecnología, Meta está fomentando un entorno de colaboración que podría acelerar el progreso en este campo, para que la IA avanzada sea más accesible.
Aún está por ver el impacto de Llama 3.1 en el futuro de la IA, pero su lanzamiento subraya la creciente importancia de las iniciativas de código abierto en la búsqueda de tecnologías de IA responsables y beneficiosas.
Preguntas frecuentes
¿Es Llama 3.1 405B mejor que GPT-4o y GPT-4?
Llama 3.1 405B rinde de forma competitiva con GPT-4 y GPT-4o y destaca en ciertos puntos de referencia como las tareas de razonamiento y la generación de código. Sin embargo, las evaluaciones humanas sugieren que queda ligeramente por detrás del GPT-4o en rendimiento general.
¿Es Llama 3.1 405B mejor que Claude 3.5 Sonnet?
Llama 3.1 405B y Claude 3.5 Sonnet demuestran un rendimiento comparable en muchos puntos de referencia y evaluaciones humanas, y cada modelo tiene puntos fuertes en áreas diferentes.
¿Es Llama 3.1 405B mejor que Géminis?
Las comparaciones directas entre Llama 3.1 405B y Géminis son limitadas, ya que no se han comparado ampliamente entre sí. Sin embargo, el rendimiento de Llama 3.1 405B en varias pruebas comparativas sugiere que podría ser competitivo con Géminis.
¿Es Llama 3.1 405B de código abierto?
Sí, Llama 3.1 405B se publica bajo el Acuerdo de licencia de modelo abierto personalizado de Meta, que permite tanto la investigación como el uso comercial.
¿Cuántos tamaños diferentes hay disponibles en la familia de modelos Llama 3.1?
La familia Llama 3.1 consta de varios modelos de distintos tamaños, como el modelo insignia 405B, un modelo 70B y un modelo 8B.
Aprende IA con estos cursos
programa
Desarrollo de grandes modelos lingüísticos
curso
IA generativa para empresas
blog
¿Qué es Mistral Large 2? Cómo funciona, casos de uso y más
Ryan Ong
8 min
blog
12 alternativas de código abierto a GPT-4
blog
¿Qué es GPT-4 y por qué es importante?
tutorial
Ajuste fino de LLaMA 2: Guía paso a paso para personalizar el modelo de lenguaje grande
tutorial
Guía introductoria para el ajuste preciso de los LLM
Josep Ferrer
12 min
tutorial