Biblioteca nativa de PyTorch para cuantización, sparsity y entrenamiento float8, tanto para entrenar modelos como para servir inferencias.
Lightning-AI/lightning-thunder
Compilador de código fuente a código fuente para PyTorch que optimiza modelos para entrenamiento e inferencia con una IR inspeccionable y transformaciones componibles.
- Estrellas
- 1,474
- Forks
- 120
- Issues abiertos
- 483
- Último commit
- hace 25 días
¿Qué es?
Thunder es un compilador de deep learning para PyTorch que toma un modelo y lo transforma en una versión optimizada. Captura todo el cómputo en una representación intermedia sencilla, similar a Python, que se puede inspeccionar, perfilar y reescribir para sustituir operaciones o kernels por alternativas más rápidas.
Las optimizaciones se aplican mediante transformaciones y plugins que operan sobre el rastro del cómputo, el modelo y sus pesos. Entre las opciones compatibles están el paralelismo distribuido (DDP, FSDP, TP), la precisión FP8 y MXFP8, la cuantización y CUDA Graphs. La ejecución se deriva a fusers como NVFuser y torch.compile, bibliotecas especializadas como cuDNN SDPA y TransformerEngine, kernels personalizados de Triton y CUDA, o las operaciones eager de PyTorch.
El punto de entrada es thunder.compile(model), que se puede aplicar a un módulo torch convencional o a modelos de bibliotecas como LitGPT y Hugging Face Transformers.
Funciones clave
- 01Captura grafos de cómputo completos en una IR similar a Python que se puede inspeccionar.
- 02Transformaciones componibles que modifican conjuntamente el modelo, el rastro y los pesos.
- 03Plugins para entrenamiento distribuido (DDP, FSDP, TP), FP8/MXFP8, cuantización y CUDA Graphs.
- 04Deriva las operaciones a fusers, cuDNN, TransformerEngine, Triton o kernels de CUDA.
Casos de uso
- Acelerar el preentrenamiento o ajuste fino de LLM en GPU NVIDIA.
- Ejecutar modelos de Hugging Face o torchvision con inferencia de menor latencia.
- Probar configuraciones de precisión mixta o cuantización en un modelo.
- Escalar un modelo de PyTorch de una sola GPU a una ejecución distribuida en varias GPU.
Inicio rápido
- 1
Instala Thunder con pip
pip install lightning-thunder - 2
Instala o actualiza PyTorch y torchvision
pip install -U torch torchvision - 3
Compila un modelo de PyTorch con Thunder y ejecútalo (consulta el ejemplo de Hello World en el README)
Antes de usarlo
- La compatibilidad opcional con GPU NVIDIA requiere paquetes adicionales, como compilaciones de nvfuser compatibles con versiones específicas de torch y CUDA.
- La compatibilidad con Float8 mediante transformer_engine debe compilarse desde el código fuente y su instalación es lenta.
- El README indica que Thunder no sustituye a torch.compile y que las mejoras de velocidad se dan principalmente en configuraciones específicas.
Temas
Preguntas frecuentes
- ¿Qué es lightning-thunder?
- Compilador de código fuente a código fuente para PyTorch que optimiza modelos para entrenamiento e inferencia con una IR inspeccionable y transformaciones componibles. Thunder es un compilador de deep learning para PyTorch que toma un modelo y lo transforma en una versión optimizada. Captura todo el cómputo en una representación intermedia sencilla, similar a Python, que se puede inspeccionar, perfilar y reescribir para sustituir operaciones o kernels por alternativas más rápidas.
- ¿lightning-thunder es gratuito? ¿Qué licencia tiene?
- lightning-thunder es open source bajo la licencia Apache-2.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿lightning-thunder sigue mantenido?
- Mantenimiento activo. El último commit de lightning-thunder fue el 12 oct 2026.
- ¿Para qué puedo usar lightning-thunder?
- Acelerar el preentrenamiento o ajuste fino de LLM en GPU NVIDIA. Ejecutar modelos de Hugging Face o torchvision con inferencia de menor latencia. Probar configuraciones de precisión mixta o cuantización en un modelo. Escalar un modelo de PyTorch de una sola GPU a una ejecución distribuida en varias GPU.
- ¿Cómo se instala lightning-thunder?
- Instala Thunder con pip: pip install lightning-thunder Instala o actualiza PyTorch y torchvision: pip install -U torch torchvision Compila un modelo de PyTorch con Thunder y ejecútalo (consulta el ejemplo de Hello World en el README)
- ¿Dónde consigo lightning-thunder?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/Lightning-AI/lightning-thunder
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Un libro abierto de métodos, scripts y guías paso a paso para entrenar, ajustar y ejecutar inferencias con modelos de lenguaje grandes y multimodales.
Biblioteca y servidor rápidos y eficientes en memoria para ejecutar y servir modelos de lenguaje grandes mediante una API compatible con OpenAI.
Framework de entrenamiento e inferencia para los modelos de mundo omnimodales Cosmos3 de NVIDIA, con entrenamiento distribuido, varios backends de inferencia y postentrenamiento con RL.
Framework minimalista de ML para Rust con soporte para GPU, diseñado para ofrecer inferencia y despliegue rápidos y ligeros sin Python.
Motor de inferencia de LLM en Rust que ofrece API compatibles con OpenAI y Anthropic, cuantización, modelos multimodales y herramientas para agentes.