16 puntos por xguru 2024-04-19 | Aún no hay comentarios. | Compartir por WhatsApp
  • Se publicaron los modelos 8B y 70B (tanto el modelo base como las versiones ajustadas). Muestran un rendimiento sólido dentro de cada clase de modelo.
  • El modelo 400B sigue en entrenamiento, pero ya se está acercando al territorio de GPT-4 (por ejemplo, MMLU 84.8 vs. 86.5 de GPT-4)

Tokenizador

  • La cantidad de tokens aumentó 4 veces, de 32K (Llama 2) a 128K (Llama 3)
  • Con más tokens se puede comprimir mejor la longitud de secuencia. Citan 15% menos tokens y una mejora en el rendimiento downstream

Arquitectura

  • En Llama 2, solo los modelos grandes usaban Grouped Query Attention (GQA), pero ahora todos los modelos, incluido el más pequeño de 8B, usan GQA
  • GQA es un esquema de compartición de parámetros para las claves/valores de la atención, que reduce el tamaño de la caché KV durante la inferencia
  • Es un cambio bueno y bienvenido que reduce la complejidad y optimiza el sistema

Longitud de secuencia

  • El máximo de tokens de la ventana de contexto aumentó a 8192 desde 4096 (Llama 2) y 2048 (Llama 1)
  • Este aumento es bienvenido, pero sigue siendo bastante pequeño frente al estándar actual (por ejemplo, GPT-4 es de 128K)
  • Mucha gente probablemente esperaba más en este eje. Tal vez luego sea posible con fine-tuning (?)

Datos de entrenamiento

  • Llama 2 fue entrenado con 2T tokens, y Llama 3 aumentó a un dataset de entrenamiento de 15T
  • Se puso mucha atención en la calidad de los datos, 4 veces más tokens de código y 5% de tokens non-en en más de 30 idiomas
  • Ese 5% es bastante bajo frente a la mezcla non-en:en, así que este modelo sigue siendo mayormente en inglés. Aun así, que sea mayor que 0 ya es bastante bueno

Leyes de escalado

  • 15T es un dataset muy grande para entrenar un modelo “pequeño” como uno de 8B parámetros, y eso es algo nuevo y muy bienvenido que normalmente no se hace
  • Para entrenar un modelo de 8B en el punto “compute optimal” de Chinchilla, habría que entrenarlo con ~200B tokens
  • Si solo te interesa el “bang-for-the-buck” del rendimiento del modelo, con eso bastaría
  • Pero Meta lo entrenó ~75 veces más allá de ese punto, lo cual es inusual, pero personalmente me parece algo muy bienvenido
  • Todos terminamos obteniendo un modelo muy competente, muy pequeño, fácil de trabajar y fácil de ejecutar en inferencia
  • Meta menciona que incluso en este punto el modelo no parece “converger” en el sentido estándar
  • Es decir, los LLM con los que siempre trabajamos están subentrenados por un factor de 100 a 1000 veces o más, y ni se acercan al punto de convergencia
  • Ojalá continúe esta tendencia de publicar modelos mucho más pequeños y entrenados durante más tiempo

Sistema

  • Se menciona que Llama 3 fue entrenado a 400 TFLOPS de throughput observado en 16K GPU
  • No se menciona, pero supongo que son H100 fp16, que en el material de marketing de NVIDIA figuran con 1,979 TFLOPS
  • Pero todos sabemos que su pequeño asterisco (*with sparsity) está haciendo mucho trabajo, y para obtener los TFLOPS reales hay que dividir ese número entre 2 para llegar a ~990
  • (¿Por qué se cuenta la sparsity como FLOPS?)
  • De cualquier forma, 400/990 ~= 40% de utilización, ¡nada mal con esa cantidad de GPU!
  • Llegar a eso a esta escala requiere una enorme cantidad de ingeniería realmente sólida

Resumen

  • Llama 3 parece ser un lanzamiento de modelo muy competente y muy bienvenido
  • Se mantiene fiel a lo básico, dedica mucho tiempo a un trabajo sólido de sistemas y datos, y explora los límites de los modelos entrenados a largo plazo
  • También hay mucha expectativa por el modelo 400B, que podría convertirse en el primer lanzamiento open source de nivel GPT-4
  • Creo que mucha gente va a pedir una longitud de contexto más larga

Aún no hay comentarios.

Aún no hay comentarios.