用 Triton 实现的 PyTorch 兼容算子库,面向大语言模型,可跨多种 AI 加速硬件运行。
linkedin/Liger-Kernel
面向 LLM 训练的高效 Triton GPU 内核集合,通过算子融合降低显存占用并提升吞吐。
- Star
- 6,665
- Fork
- 627
- 未关闭 Issue
- 197
- 最近提交
- 54分钟前
这是什么?
Liger Kernel 是一组用于大语言模型训练的 Triton 内核。它为 RMSNorm、RoPE、SwiGLU、CrossEntropy 以及融合的线性层加交叉熵等常用操作提供可直接替换的实现,减少显存读写,使同样的 GPU 能支持更长的上下文或更大的 batch。
对于支持的 Hugging Face 模型,只需调用一行 apply_liger_kernel_to_llama 等接口即可完成打补丁,也可以把单个内核模块组合进自定义模型。项目还包含 DPO、ORPO、SimPO、KTO、CPO 等后训练损失函数,无需实例化完整 logits,并提供 JSD、KL 散度等蒸馏损失。它兼容 PyTorch FSDP、DeepSpeed 和 DDP,核心依赖只有 Torch 和 Triton。
项目支持 Llama、Qwen、Gemma、Mistral、Phi3、DeepSeek 等多个模型系列,并提供 CUDA、ROCm、Intel GPU 和昇腾 NPU 的后端,在 NVIDIA 硬件上还可选用 cuTile 与 CuTe DSL 实现。
核心功能
- 01为 RMSNorm、RoPE、SwiGLU、CrossEntropy 及融合线性交叉熵提供可直接替换的 Triton 内核。
- 02对多个支持的 Hugging Face 模型系列,只需一行代码即可打补丁。
- 03提供省显存的 DPO、ORPO、SimPO、KTO、CPO 等后训练损失。
- 04包含 JSD、KL 散度、TVD 等蒸馏损失。
- 05兼容 PyTorch FSDP、DeepSpeed 和 DDP,核心依赖仅 Torch 与 Triton。
- 06支持 NVIDIA CUDA、AMD ROCm、Intel GPU 和昇腾 NPU。
适用场景
- 在多卡集群上加速 Llama、Qwen 等模型的全量微调。
- 降低显存占用,以支持更长上下文或更大词表的训练。
- 在显存有限的 GPU 上运行 DPO、ORPO 等偏好优化训练。
- 为训练流程加入高效的蒸馏损失计算。
标签
常见问题
- Liger-Kernel 是什么?
- 面向 LLM 训练的高效 Triton GPU 内核集合,通过算子融合降低显存占用并提升吞吐。 Liger Kernel 是一组用于大语言模型训练的 Triton 内核。它为 RMSNorm、RoPE、SwiGLU、CrossEntropy 以及融合的线性层加交叉熵等常用操作提供可直接替换的实现,减少显存读写,使同样的 GPU 能支持更长的上下文或更大的 batch。
- Liger-Kernel 可以免费使用吗?用的什么许可证?
- Liger-Kernel 以 BSD-2-Clause 许可证开源。用于商业产品前,请先确认许可证条款。
- Liger-Kernel 还在维护吗?
- 活跃维护中。Liger-Kernel 最近一次提交是在 2026年10月22日。
- Liger-Kernel 适合用来做什么?
- 在多卡集群上加速 Llama、Qwen 等模型的全量微调。 降低显存占用,以支持更长上下文或更大词表的训练。 在显存有限的 GPU 上运行 DPO、ORPO 等偏好优化训练。 为训练流程加入高效的蒸馏损失计算。
- 在哪里获取 Liger-Kernel?
- 源代码和安装说明在 GitHub 上:https://github.com/linkedin/Liger-Kernel
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
基于 Triton 的高效内核与层实现,覆盖线性注意力、稀疏注意力、状态空间模型及混合 LLM 架构。
基于 PyTorch 和 Triton 的开源大语言模型训练库,支持 3D 并行与 ZeRO 显存优化。
一个极简、易于修改的 LLM 训练框架,覆盖分词、预训练、微调、评估到对话推理全流程,可在单台 GPU 节点上运行。
基于 PyTorch 的 LLM 工具包,可预训练、微调、评估和部署 20 多种开源权重模型。
配套《从零构建大语言模型》一书的代码,用 PyTorch 分步实现类 GPT 的大语言模型。