複数のAIアクセラレータバックエンドで動作する、Tritonで実装されたPyTorch互換のLLMカーネルライブラリ。
linkedin/Liger-Kernel
LLMの学習に使える効率的なTriton GPUカーネル。一般的なレイヤーや損失関数を融合し、メモリ使用量を抑えてスループットを高めます。
- スター
- 6,665
- フォーク
- 627
- 未解決の Issue
- 197
- 最終コミット
- 3 時間前
これは何?
Liger Kernelは、大規模言語モデルの学習向けTritonカーネル集です。RMSNorm、RoPE、SwiGLU、CrossEntropy、融合型linear cross-entropyなどの一般的な演算を置き換えられます。これによりメモリ転送を削減し、同じGPUでより長いコンテキスト長や大きなバッチサイズを扱えます。
apply_liger_kernel_to_llamaなどを1回呼び出すだけで、対応するHugging Faceモデルにパッチを適用できます。また、個々のカーネルモジュールを組み合わせて独自モデルに組み込むことも可能です。リポジトリには、全logitsの生成を避けるDPO、ORPO、SimPO、KTO、CPOなどの学習後損失関数に加え、JSDやKL divergenceなどの蒸留損失関数も含まれています。PyTorch FSDP、DeepSpeed、DDPに対応し、コア依存関係はTorchとTritonのみです。
Llama、Qwen、Gemma、Mistral、Phi3、DeepSeekなど、多数のモデルファミリーへの対応が記載されています。また、CUDA、ROCm、Intel GPU、Ascend NPU向けバックエンドを備え、NVIDIAハードウェアではcuTileとCuTe DSLによる実装も利用できます。
主な機能
- 01RMSNorm、RoPE、SwiGLU、CrossEntropy、融合型linear cross-entropy向けの、置き換えて使えるTritonカーネル。
- 02対応する多数のHugging Faceモデルファミリーに、1行でパッチを適用。
- 03学習後処理向けの、メモリ効率に優れたDPO、ORPO、SimPO、KTO、CPO損失関数。
- 04JSD、KL divergence、TVDなどの蒸留損失関数。
- 05依存関係を最小限に抑えつつ、PyTorch FSDP、DeepSpeed、DDPと互換。
- 06NVIDIA CUDA、AMD ROCm、Intel GPU、Ascend NPU向けのバックエンド。
ユースケース
- マルチGPUクラスターでLlamaやQwenモデルのフルファインチューニングを高速化する。
- メモリ使用量を抑え、より長いコンテキスト長や大きな語彙サイズで学習する。
- GPUが限られた環境で、DPOやORPOなどメモリ負荷の高い選好最適化を実行する。
- 学習パイプラインに効率的な蒸留損失関数を追加する。
トピック
よくある質問
- Liger-Kernel とは?
- LLMの学習に使える効率的なTriton GPUカーネル。一般的なレイヤーや損失関数を融合し、メモリ使用量を抑えてスループットを高めます。 Liger Kernelは、大規模言語モデルの学習向けTritonカーネル集です。RMSNorm、RoPE、SwiGLU、CrossEntropy、融合型linear cross-entropyなどの一般的な演算を置き換えられます。これによりメモリ転送を削減し、同じGPUでより長いコンテキスト長や大きなバッチサイズを扱えます。
- Liger-Kernel は無料で使えますか?ライセンスは?
- Liger-Kernel は BSD-2-Clause ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- Liger-Kernel は今もメンテナンスされていますか?
- 活発にメンテナンス中。Liger-Kernel の最終コミットは 2026年10月22日 です。
- Liger-Kernel は何に使えますか?
- マルチGPUクラスターでLlamaやQwenモデルのフルファインチューニングを高速化する。 メモリ使用量を抑え、より長いコンテキスト長や大きな語彙サイズで学習する。 GPUが限られた環境で、DPOやORPOなどメモリ負荷の高い選好最適化を実行する。 学習パイプラインに効率的な蒸留損失関数を追加する。
- Liger-Kernel はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/linkedin/Liger-Kernel
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
線形注意、スパース注意、状態空間モデル、ハイブリッドLLM向けのTritonベースのカーネルと、学習にすぐ使えるレイヤー。
PyTorchとTritonを基盤に、3D並列処理、ZeROによるメモリ最適化、Hugging Face連携を備えた大規模言語モデルの学習用オープンソースライブラリ。
トークナイズから事前学習、ファインチューニング、評価、チャットまで、LLMの全工程をカバーする、単一GPUノードで動作する最小限で改造しやすいハーネス。
事前学習、ファインチューニング、評価、サービングに対応する、20種類以上のオープンウェイトモデルをスクラッチ実装したPyTorchベースのLLMツールキット。
書籍『Build a Large Language Model (From Scratch)』のサンプルコード。PyTorchでGPT風LLMを段階的に実装します。