- Os modelos 8B e 70B (tanto os modelos base quanto os ajustados por fine-tuning) foram lançados. Eles mostram desempenho forte em cada classe de modelo.
- O modelo 400B ainda está em treinamento, mas já está se aproximando do território do GPT-4 (ex.: MMLU 84.8 vs. 86.5 do GPT-4)
Tokenizador
- O número de tokens aumentou 4x, de 32K (Llama 2) para 128K (Llama 3)
- Com mais tokens, é possível comprimir mais o comprimento da sequência. Eles citam 15% menos tokens e melhora no desempenho downstream
Arquitetura
- No Llama 2, apenas os modelos grandes usavam Grouped Query Attention (GQA), mas agora todos os modelos, incluindo o menor modelo 8B, usam GQA
- GQA é um esquema de compartilhamento de parâmetros para as chaves/valores da Attention, reduzindo o tamanho do cache KV durante a inferência
- Esta é uma mudança boa e bem-vinda para reduzir a complexidade e otimizar
Comprimento de sequência
- O número máximo de tokens da janela de contexto aumentou para 8192, saindo de 4096 (Llama 2) e 2048 (Llama 1)
- Esse aumento é bem-vindo, mas ainda é consideravelmente pequeno em comparação com o padrão atual (por exemplo: GPT-4 é 128K)
- Muitas pessoas provavelmente esperavam mais nesse eixo. Talvez seja possível depois com fine-tuning(?)
Dados de treinamento
- O Llama 2 foi treinado com 2T tokens, e o Llama 3 aumentou para um dataset de treinamento de 15T
- Houve muita atenção à qualidade dos dados, 4x mais tokens de código e 5% de tokens non-en em mais de 30 idiomas
- 5% é bastante baixo em relação à mistura non-en:en, então este modelo é majoritariamente em inglês. Ainda assim, ser maior que 0 já é muito bom
Leis de escala
- 15T é um dataset enorme para treinar um modelo "pequeno" como o de 8B parâmetros, e isso é algo novo e muito bem-vindo, que normalmente não é feito
- Para treinar um modelo 8B no ponto "compute optimal" de Chinchilla, seria preciso treiná-lo com algo em torno de ~200B tokens
- Se você só se importa com o "bang-for-the-buck" do desempenho do modelo, isso já seria suficiente
- Mas a Meta treinou além desse ponto em ~75x, o que é incomum, mas pessoalmente acho muito bem-vindo.
- Todos nós ganhamos modelos muito competentes, bem pequenos, fáceis de trabalhar e fáceis de fazer inferência
- A Meta menciona que, mesmo nesse ponto, o modelo ainda não parece estar "convergido" no sentido padrão
- Ou seja, os LLMs com que sempre trabalhamos ainda carecem de treinamentos muito mais longos, 100-1000x maiores, e não estão perto do ponto de convergência
- Espero que a tendência de lançar modelos muito menores, treinados por muito mais tempo, continue no futuro
Sistema
- É mencionado que o Llama 3 foi treinado em 16K GPUs, com throughput observado de 400 TFLOPS
- Embora não seja mencionado, suponho que sejam H100 fp16, que marcam 1.979 TFLOPS no material de marketing da NVIDIA
- Mas todos sabemos que o pequeno asterisco deles (*with sparsity) faz muito trabalho, e para obter os TFLOPS reais é preciso dividir esse número por 2 para chegar a ~990
- (Por que sparsity é contabilizado como FLOPS?)
- De qualquer forma, 400/990 ~= 40% de utilização, o que não é nada mal com essa quantidade de GPUs!
- Chegar a isso nessa escala exige uma grande quantidade de engenharia realmente sólida
Resumo
- O Llama 3 parece ser um lançamento de modelo muito competente e é muito bem-vindo
- Ele se mantém fiel ao básico, dedica muito tempo a sistemas sólidos e trabalho de dados, e explora os limites de modelos treinados por longos períodos
- O modelo 400B também é muito aguardado, e pode ser o primeiro lançamento open source em nível de GPT-4
- Acho que muita gente vai pedir comprimentos de contexto maiores
Ainda não há comentários.