Inferência Distribuída e Ajuste Fino de Modelos de Linguagem de Grande Escala pela Internet
Distributed Inference and Fine-tuning of Large Language Models Over The Internet
December 13, 2023
Autores: Alexander Borzunov, Max Ryabinin, Artem Chumachenko, Dmitry Baranchuk, Tim Dettmers, Younes Belkada, Pavel Samygin, Colin Raffel
cs.AI
Resumo
Modelos de linguagem de grande escala (LLMs) são úteis em muitas tarefas de PLN e se tornam mais capazes com o aumento de tamanho, com os melhores modelos de código aberto possuindo mais de 50 bilhões de parâmetros. No entanto, o uso desses modelos com 50B+ de parâmetros requer hardware de alta performance, tornando-os inacessíveis para a maioria dos pesquisadores. Neste trabalho, investigamos métodos para inferência e ajuste fino de LLMs de forma econômica, comparando estratégias locais e distribuídas. Observamos que um modelo suficientemente grande (50B+) pode ser executado de forma eficiente mesmo em dispositivos geodistribuídos em uma rede de nível consumidor. Isso poderia permitir a execução eficiente de LLMs ao agrupar recursos de computação ociosos de múltiplos grupos de pesquisa e voluntários. Abordamos dois problemas em aberto: (1) como realizar inferência e ajuste fino de forma confiável se qualquer dispositivo pode se desconectar abruptamente e (2) como particionar LLMs entre dispositivos com hardware desigual, que podem entrar e sair a qualquer momento. Para isso, desenvolvemos algoritmos especiais de inferência tolerante a falhas e protocolos de balanceamento de carga que atribuem automaticamente dispositivos para maximizar o throughput total do sistema. Demonstramos esses algoritmos no Petals - um sistema descentralizado que executa Llama 2 (70B) e BLOOM (176B) pela Internet com até 10x mais velocidade do que o offloading para geração interativa. Avaliamos o desempenho do nosso sistema em condições simuladas e em uma configuração real abrangendo dois continentes.
English
Large language models (LLMs) are useful in many NLP tasks and become more
capable with size, with the best open-source models having over 50 billion
parameters. However, using these 50B+ models requires high-end hardware, making
them inaccessible to most researchers. In this work, we investigate methods for
cost-efficient inference and fine-tuning of LLMs, comparing local and
distributed strategies. We observe that a large enough model (50B+) can run
efficiently even on geodistributed devices in a consumer-grade network. This
could allow running LLM efficiently by pooling together idle compute resources
of multiple research groups and volunteers. We address two open problems: (1)
how to perform inference and fine-tuning reliably if any device can disconnect
abruptly and (2) how to partition LLMs between devices with uneven hardware,
joining and leaving at will. In order to do that, we develop special
fault-tolerant inference algorithms and load-balancing protocols that
automatically assign devices to maximize the total system throughput. We
showcase these algorithms in Petals - a decentralized system that runs Llama 2
(70B) and BLOOM (176B) over the Internet up to 10x faster than offloading for
interactive generation. We evaluate the performance of our system in simulated
conditions and a real-world setup spanning two continents.