Biblioteca nativa do PyTorch para quantização, esparsidade e treinamento em float8, abrangendo treinamento de modelos e inferência em produção.
Lightning-AI/lightning-thunder
Compilador source-to-source para PyTorch que otimiza modelos para treinamento e inferência com IR inspecionável e transforms combináveis.
- Estrelas
- 1,474
- Forks
- 120
- Issues abertas
- 483
- Último commit
- há 25 dias
O que é?
Thunder é um compilador de deep learning para PyTorch que recebe um modelo e o transforma em uma versão otimizada. Ele captura toda a computação em uma representação intermediária simples, semelhante a Python, que pode ser inspecionada, perfilada e reescrita para substituir operações ou kernels por opções mais rápidas.
As otimizações são aplicadas por meio de transforms e plugins que atuam no trace da computação, no modelo e em seus pesos. Entre as opções disponíveis estão paralelismo distribuído (DDP, FSDP, TP), precisão FP8 e MXFP8, quantização e CUDA Graphs. A execução é direcionada a fusers como NVFuser e torch.compile, bibliotecas especializadas como cuDNN SDPA e TransformerEngine, kernels personalizados em Triton e CUDA ou operações eager do PyTorch.
O ponto de entrada é thunder.compile(model), que pode ser usado com um módulo torch simples ou com modelos de bibliotecas como LitGPT e Hugging Face Transformers.
Recursos principais
- 01Captura grafos completos de computação como uma IR inspecionável, semelhante a Python.
- 02Transforms combináveis que modificam o modelo, o trace e os pesos em conjunto.
- 03Plugins para treinamento distribuído (DDP, FSDP, TP), FP8/MXFP8, quantização e CUDA Graphs.
- 04Direciona operações para fusers, cuDNN, TransformerEngine, Triton ou kernels CUDA.
Casos de uso
- Acelerar o pré-treinamento ou o fine-tuning de LLMs em GPUs NVIDIA.
- Executar modelos do Hugging Face ou torchvision com inferência de menor latência.
- Experimentar configurações de precisão mista ou quantização em um modelo.
- Escalar um modelo PyTorch de GPU única para execução distribuída em várias GPUs.
Início rápido
- 1
Instale o Thunder com pip
pip install lightning-thunder - 2
Instale ou atualize o PyTorch e o torchvision
pip install -U torch torchvision - 3
Compile um modelo PyTorch com o Thunder e execute-o (consulte o exemplo Hello World no README)
Antes de usar
- O suporte opcional a GPUs NVIDIA requer pacotes extras, como builds do nvfuser compatíveis com versões específicas do torch e do CUDA.
- O suporte a Float8 por meio do transformer_engine precisa ser compilado a partir do código-fonte e demora para instalar.
- O README informa que o Thunder não substitui o torch.compile e que os ganhos de velocidade ocorrem principalmente em configurações específicas.
Tópicos
Perguntas frequentes
- O que é lightning-thunder?
- Compilador source-to-source para PyTorch que otimiza modelos para treinamento e inferência com IR inspecionável e transforms combináveis. Thunder é um compilador de deep learning para PyTorch que recebe um modelo e o transforma em uma versão otimizada. Ele captura toda a computação em uma representação intermediária simples, semelhante a Python, que pode ser inspecionada, perfilada e reescrita para substituir operações ou kernels por opções mais rápidas.
- lightning-thunder é gratuito? Qual é a licença?
- lightning-thunder é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
- lightning-thunder ainda é mantido?
- Manutenção ativa. O último commit de lightning-thunder foi em 12 de out. de 2026.
- Para que posso usar lightning-thunder?
- Acelerar o pré-treinamento ou o fine-tuning de LLMs em GPUs NVIDIA. Executar modelos do Hugging Face ou torchvision com inferência de menor latência. Experimentar configurações de precisão mista ou quantização em um modelo. Escalar um modelo PyTorch de GPU única para execução distribuída em várias GPUs.
- Como instalar lightning-thunder?
- Instale o Thunder com pip: pip install lightning-thunder Instale ou atualize o PyTorch e o torchvision: pip install -U torch torchvision Compile um modelo PyTorch com o Thunder e execute-o (consulte o exemplo Hello World no README)
- Onde consigo lightning-thunder?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/Lightning-AI/lightning-thunder
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Um livro aberto com métodos, scripts e guias passo a passo para treinar, fazer fine-tuning e executar inferência em modelos de linguagem grandes e multimodais.
Biblioteca e servidor rápidos e eficientes em memória para executar e servir modelos de linguagem grandes com uma API compatível com a OpenAI.
Framework de treinamento e inferência para os modelos de mundo omnimodais Cosmos3 da NVIDIA, com treinamento distribuído, vários backends de inferência e pós-treinamento com RL.
Framework minimalista de ML para Rust com suporte a GPU, desenvolvido para inferência rápida e leve e implantação sem Python.
Engine de inferência de LLM em Rust, com APIs compatíveis com OpenAI e Anthropic, quantização, modelos multimodais e ferramentas para agentes.