Sobre o projeto
🤗 Accelerate é uma biblioteca da Hugging Face projetada para usuários de PyTorch que desejam executar seus scripts de treinamento em qualquer dispositivo ou configuração distribuída sem reescrever código boilerplate. Ela abstrai apenas as partes necessárias—multi-GPU, TPU e precisão mista (fp8, fp16, bf16)—deixando o restante do seu código inalterado. Com apenas algumas linhas adicionadas a um script PyTorch padrão, você pode executar em configurações de CPU única, GPU única, multi-GPU ou TPU, com ou sem precisão mista.
A biblioteca fornece uma classe `Accelerator` que lida com a colocação de dispositivos, precisão mista e configuração de treinamento distribuído. Ela também inclui uma ferramenta CLI (`accelerate config` e `accelerate launch`) para configurar e lançar rapidamente ambientes de treinamento, eliminando a necessidade de lembrar `torch.distributed.run` ou lançadores específicos de TPU. Para usuários de notebooks, uma função `notebook_launcher` permite treinamento distribuído a partir de notebooks Colab ou Kaggle.
Accelerate suporta DeepSpeed e PyTorch Fully Sharded Data Parallel (FSDP) para treinamento distribuído avançado, bem como Megatron-LM. É usado como backend para o treinamento PyTorch do Hugging Face Transformers e está integrado em muitos outros frameworks como fastai, Catalyst e Stable Diffusion Web UI.
A instalação é simples via `pip install accelerate`, e requer Python 3.8+ e PyTorch 1.10.0+. O projeto é open-source sob a licença Apache 2.0 e possui documentação extensa e exemplos.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.