LLMs e seus custos computacionais
Nos últimos anos, houve um crescimento significativo no tamanho e na capacidade dos Large Language Models (LLMs) no campo da IA. Esses modelos têm demonstrado desempenhos excepcionais em várias tarefas de processamento de linguagem natural. Porém, seus tamanhos crescentes se tornaram um desafio de implantação. Adicionalmente, eles têm levantado preocupações sobre seus impactos ambientais e econômicos devido ao alto consumo de energia.
Qual é o consumo de energia de um LLM?
Não existe um número preciso sobre o consumo de energia de um LLM. Esse valor varia com o tamanho e uso do modelo. Segundo Sajjad Moazeni, da Universidade de Washington, durante o treinamento de um LLM, seu consumo de energia pode ser de até 10 gigawatts-hora (GWh). Esse gasto corresponde ao treinamento de um LLM grande como o ChatGPT-3. A energia utilizada equivale ao consumo anual de eletricidade de mais de mil residências nos EUA. O ChatGPT-4, maior que seu antecessor, tem um gasto energético ainda mais astronômico.
Após a fase de treinamento, as inferências realizadas por um LLM também têm um alto consumo energético. Hoje, existem milhões de consultas diárias ao ChatGPT. Essas consultas podem custar cerca de 1 GWh por dia. Isso corresponde ao consumo diário de energia para cerca de 33000 residências nos EUA. Portanto, o desenvolvimento de técnicas mais econômicas de treinamento e inferências de LLMs é fundamental.
Quantização pós-treinamento para LLMs mais econômicos
Uma das alternativas mais promissoras para reduzir os gastos energéticos dos LLMs consiste no uso de quantização pós-treinamento. Essa técnica reduz a precisão de pesos e ativações, diminuindo significativamente os requisitos de memória e computação dos LLMs. A tendência tem sido passar de 16 bits para bits inferiores, como variantes de 4 bits.
No entanto, a quantização pós-treinamento nem sempre gera bons resultados. A redução de bits implica na redução da precisão de pesos e ativações. Muitas vezes, isso resulta em modelos com desempenhos inferiores.
BitNet: LLM de 1.58 bit
Recentemente, uma nova abordagem para reduzir os custos energéticos dos LLMs foi desenvolvida por pesquisadores da Microsoft em colaboração com a University of Chinese Academy of Sciences. Tradicionalmente, os LLMs usam números de ponto flutuante (FP16 ou BF16) para representar seus parâmetros. O uso desses floats é computacionalmente caro e consume muita memória.
Na nova abordagem, para evitar o uso de floats, cada parâmetro do modelo é representado usando apenas três valores: -1, 0 ou 1. Isso é conhecido como quantização ternária. Os autores da nova proposta mostraram que um LLM (BitNet b1.58) com quantização ternária atinge o mesmo desempenho de um LLM de precisão total. Os benefícios dessa abordagem são significativos.
Esquema comparativo de um LLM de 1 bit (BitNet b1.58) com umLLM tradicional. BitNet fornece uma solução para reduzir o custo de inferência de LLMs, mantendo o desempenho do modelo (fonte).
O maior custo computacional de qualquer LLMs se concentra na multiplicação e adição de matrizes com valores de ponto flutuante. BitNet realiza apenas adições com valores inteiros, reduzindo bastante seu custo de energia em comparação a outros LLMs. LLMs como BitNet b1.58 requerem menos memória, latência e energia para operar, tornando-os mais eficientes e acessíveis.
O uso de LLMs de 1.58 bits tem o potencial para melhorar muito o desempenho dos modelos de linguagem, especialmente em dispositivos móveis. O consumo reduzido de memória e energia dos LLMs de 1.58 bits permite que eles sejam implantados nesses dispositivos, possibilitando uma ampla gama de aplicações. Além disso, os LLMs de 1,58 bits são mais amigáveis para dispositivos de CPU. Você pode ler mais sobre o BitNet b1.58 aqui.