Repolode
Lightning-AI

Lightning-AI/lightning-thunder

面向 PyTorch 的源码到源码编译器,可在训练和推理中优化模型,计算图可检查、可扩展。

Star
1,474
Fork
121
未关闭 Issue
483
最近提交
26天前

这是什么?

Thunder 是一个面向 PyTorch 的深度学习编译器,输入模型后输出经过优化的版本。它把完整计算过程捕获为一种类似 Python 的简单中间表示,开发者可以检查、分析并改写这些计算,例如替换为更快的算子或内核。

优化通过变换(transforms)和插件完成,可同时作用于计算图、模型和权重。可用选项包括分布式并行(DDP、FSDP、TP)、FP8 和 MXFP8 精度、量化以及 CUDA Graphs。执行阶段会把计算分发给 NVFuser、torch.compile 等融合器,cuDNN SDPA、TransformerEngine 等专用库,自定义 Triton 和 CUDA 内核,或 PyTorch eager 操作。

使用入口是 thunder.compile(model),可直接用于普通的 torch 模块,也可用于 LitGPT、Hugging Face Transformers 等库中的模型。

核心功能

  • 01将完整计算捕获为可检查的类 Python 中间表示。
  • 02可组合的变换,能同时修改模型、计算图和权重。
  • 03提供分布式训练(DDP、FSDP、TP)、FP8/MXFP8、量化和 CUDA Graphs 等插件。
  • 04可将算子分发给融合器、cuDNN、TransformerEngine、Triton 或 CUDA 内核执行。

适用场景

  • 在 NVIDIA GPU 上加速 LLM 预训练或微调。
  • 以更低延迟运行 Hugging Face 或 torchvision 模型的推理。
  • 在同一模型上尝试不同的混合精度或量化方案。
  • 将单卡 PyTorch 模型扩展为多卡分布式运行。

快速上手

  1. 1

    通过 pip 安装 Thunder

    pip install lightning-thunder
  2. 2

    安装或升级 PyTorch 和 torchvision

    pip install -U torch torchvision
  3. 3

    使用 Thunder 编译 PyTorch 模型并运行(参见 README 中的 hello world 示例)

使用前须知

  • 可选的 NVIDIA GPU 支持需要额外安装与特定 torch 和 CUDA 版本匹配的包(如 nvfuser)。
  • Float8 支持需通过 transformer_engine 从源码编译,安装较慢。
  • README 指出 Thunder 并非 torch.compile 的替代品,其加速效果主要取决于具体配置。

标签

常见问题

lightning-thunder 是什么?
面向 PyTorch 的源码到源码编译器,可在训练和推理中优化模型,计算图可检查、可扩展。 Thunder 是一个面向 PyTorch 的深度学习编译器,输入模型后输出经过优化的版本。它把完整计算过程捕获为一种类似 Python 的简单中间表示,开发者可以检查、分析并改写这些计算,例如替换为更快的算子或内核。
lightning-thunder 可以免费使用吗?用的什么许可证?
lightning-thunder 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
lightning-thunder 还在维护吗?
活跃维护中。lightning-thunder 最近一次提交是在 2026年10月12日。
lightning-thunder 适合用来做什么?
在 NVIDIA GPU 上加速 LLM 预训练或微调。 以更低延迟运行 Hugging Face 或 torchvision 模型的推理。 在同一模型上尝试不同的混合精度或量化方案。 将单卡 PyTorch 模型扩展为多卡分布式运行。
lightning-thunder 怎么安装和运行?
通过 pip 安装 Thunder: pip install lightning-thunder 安装或升级 PyTorch 和 torchvision: pip install -U torch torchvision 使用 Thunder 编译 PyTorch 模型并运行(参见 README 中的 hello world 示例)
在哪里获取 lightning-thunder?
源代码和安装说明在 GitHub 上:https://github.com/Lightning-AI/lightning-thunder

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目