Liger-Kernel

不改模型结构,给 LLM 训练省显存提吞吐

Liger-Kernel 是 LinkedIn 开源的一套面向大语言模型训练的 Triton 内核集合,目标是解决 LLM 微调与训练中显存占用高、计算效率低的问题。它把 RMSNorm、RoPE、SwiGLU、CrossEntropy、FusedLinearCrossEntropy 等常见算子用 Triton 重写并融合,减少中间张量的读写与显存分配,从而在不改变模型结构的前提下提升吞吐、降低显存。项目以 Python 包形式提供,可直接替换 HuggingFace Transformers 中的对应层,兼容 Llama、Llama3、Mistral、Gemma2、Phi3 等主流架构,支持全参微调、LoRA、DPO、GRPO 等训练流程。对显存受限、想用单卡或少量卡训练更大模型或更长序列的团队,它提供了一条低侵入的加速路径,社区活跃且迭代较快。

开源 free 模型训练
访问官网 ↗ GitHub ↗ 文档 ↗
GitHub 星标 ★ 6618
维护状态 活跃
是否开源
定价模式 free

项目数据

分类模型训练
开发团队linkedin
所属国家
定价模式free
价格说明开源免费,Apache 2.0 许可证
访问状态
是否开源
开源协议BSD-2-Clause
主要语言Python
技术栈/模型finetuning,gemma2,hacktoberfest,llama,llama3,llm-training,llms,mistral,phi3,triton,triton-kernels
GitHub 星标★ 6618
30天Star增速
HF 下载量
上线时间2024-08-06 00:00:00
最近更新2026-09-18 00:00:00
维护状态活跃
中文支持
访问方式
移动端支持
综合评分
收录时间2026-09-16
浏览次数0

使用教程

难度:入门 约 10 分钟 部署方式:库/依赖 6 步

环境要求

  • 已安装 Python 与 pip 环境
  • 已安装 PyTorch(ROCm 环境需先装 ROCm 版 PyTorch)
  • 具备可访问 GitHub 与 PyPI 的网络环境
  • 需要 Triton 支持的 GPU 环境(用于运行融合内核)

安装与启动步骤

  1. 1克隆项目仓库

    从 GitHub 拉取 Liger-Kernel 源码,后续所有安装命令都在仓库根目录执行。

    git clone https://github.com/linkedin/Liger-Kernel.git
    cd Liger-Kernel
  2. 2安装默认依赖

    README 推荐的可编辑安装方式,setup.py 会自动检测本地后端并选择默认依赖。

    pip install -e .
  3. 3装开发依赖(可选)

    需要参与开发或跑测试时使用,安装 dev 附加依赖组。

    pip install -e ".[dev]"
  4. 4ROCm 环境准备

    在 ROCm 上需先从 PyTorch ROCm 索引安装 ROCm 版 PyTorch,再执行上面的安装。

    pip3 install torch torchvision --index-url https://download.pytorch.org/whl/rocm7.2
  5. 5安装 cuTile 依赖

    需要 cuTile 支持时安装该可选项;也可换用带 tileiras 编译器的版本。

    pip install -e ".[cutile]"
  6. 6安装 CuTe DSL

    需要 NVIDIA CUTLASS Python DSL 支持时安装该附加依赖组。

    pip install -e ".[cutedsl]"

如何确认成功

在 Python 中执行 import liger_kernel 不报错,即表示包已成功安装到当前环境。

常见问题

Q:该安装哪个 extras 依赖组?

A:一般场景直接用 pip install -e . 即可,setup.py 会按本地后端选默认依赖;开发用 .[dev],cuTile 用 .[cutile],CUTLASS DSL 用 .[cutedsl]。

Q:ROCm 机器上安装失败怎么办?

A:README 提示需先执行 pip3 install torch torchvision --index-url https://download.pytorch.org/whl/rocm7.2 安装 ROCm 版 PyTorch,再运行 pip install -e .。

Q:如何把 Liger 内核应用到模型上?

A:README 的 Getting Started 说明有多种应用方式,取决于需要的定制程度,可参考官网文档与 High-level/Low-level APIs 章节。

Q:有没有发布版而非源码安装?

A:项目在 PyPI 上提供 liger-kernel 稳定版与 liger-kernel-nightly 每日构建版,可据此选择安装渠道。

注意事项

  • README 未给出端口、模型路径等运行时配置项,本教程仅覆盖安装环节。
  • 命令请务必在克隆得到的 Liger-Kernel 仓库根目录下执行,否则 -e . 会找不到 setup.py。
  • 高级用法与 API 细节请查阅官网 https://linkedin.github.io/Liger-Kernel 。
  • 遇到问题可通过 README 中公布的 Discord 频道 https://discord.gg/X4MaxPgA 反馈。

核心亮点

  • 以 monkey patch 方式替换 HuggingFace 层,改动小、接入成本低
  • 覆盖 RMSNorm、RoPE、SwiGLU、FusedLinearCrossEntropy 等关键算子,实测可降显存并提升吞吐
  • 兼容 Llama、Llama3、Mistral、Gemma2、Phi3 等主流架构,支持 LoRA、DPO、GRPO 等训练范式

不足之处

  • 依赖 Triton 与特定 CUDA/GPU 环境,非 NVIDIA 或旧驱动上适配有限
  • 部分融合内核与最新版 Transformers 或自定义模型结构可能存在兼容性摩擦

适用场景

  • 单卡或少量卡微调 7B/8B 模型时降低显存占用
  • 长序列训练中缓解注意力与归一化算子的显存瓶颈
  • 在 DPO、GRPO 等对齐训练流程中替换标准层以提升吞吐

替代项目

flash-attention、unsloth

项目介绍

Liger-Kernel 是模型训练领域的开源项目,由 linkedin 开发,2024 年首次发布。

在全站 12,753 个收录项目中,它的 GitHub 星标数(6,618)位列前 7%,在模型训练分类的 516 个项目里位列前 8%。

项目目前处于活跃维护状态,最近一次代码更新于 2026-09-18。开源免费,Apache 2.0 许可证。

它主要面向的使用场景是:单卡或少量卡微调7B/8B模型时降低显存占用。同类可对比的替代方案包括 flash-attention、unsloth。

上一篇:llm-compressor

下一篇:Complete-LLM-Finetuning

同类项目推荐

Long-RL 开源

让强化学习轻松驾驭超长序列,训练更稳更快

Long-RL: Scaling RL to Long Sequences (NeurIPS 2025)

★ 729 2026-08-09
TPA 开源

把注意力复杂度从平方降到线性,长序列不再卡顿

[NeurIPS 2025 Spotlight] TPA: Tensor ProducT ATTenTion Transformer (https://arxiv.or···

★ 463 2026-08-09
minimind 开源

两小时造出你的小模型,练手入门不求人

Train a 64M-parameter LLM from scratch in just 2h!

★ 61694 2026-08-09
pruna 开源

一键优化 AI 模型,推理提速又省资源。

Pruna is a model optimization framework built for developers, enabling you to delive···

★ 1279 2026-08-13