OpenAIのオープンウェイト言語モデルgpt-oss-120bとgpt-oss-20b、および推論・ツール・クライアントのリファレンス実装。
fla-org/flash-linear-attention
線形注意、スパース注意、状態空間モデル、ハイブリッドLLM向けのTritonベースのカーネルと、学習にすぐ使えるレイヤー。
- スター
- 5,952
- フォーク
- 778
- 未解決の Issue
- 126
- 最終コミット
- 5 時間前
これは何?
Flash Linear Attention(fla)は、標準的なsoftmax attentionを置き換えたり補完したりする、系列モデル向けのハードウェア効率に優れた部品を提供するPythonライブラリです。Tritonカーネルに加え、GatedDeltaNet、RetNet、GLA、Mamba2などの既製レイヤーや、それらを基盤とする🤗 Transformers互換のモデルクラスを備えています。プロジェクトによると、実装はプラットフォームに依存せず、NVIDIA、AMD、Intelのハードウェアで検証されています。
個々のレイヤーに加えて、flaはゲーティング付きRMSNorm、fused linear cross entropy、rotary embeddingsなどの融合モジュールを備えており、メモリ使用量の削減と学習の高速化を目指しています。設定引数を使えば、線形注意モデルに標準的なattentionレイヤーを混在させるハイブリッドモデルを構成でき、レイヤーごとに制御できます。生成には標準のHugging Face APIを利用でき、事前学習済みチェックポイントはfla-hub organizationで公開されています。
このリポジトリでは、torchtitanを基盤とする関連フレームワークflameを使った学習手順のほか、lm-evaluation-harnessとperplexity測定を利用する評価スクリプトも解説しています。
主な機能
- 01線形注意、スパース注意、状態空間モデルの各種実装向けTritonカーネル。
- 02MultiScaleRetentionなど、multihead attentionを置き換えるドロップイン型のtoken mixingレイヤー。
- 03設定をカスタマイズできる、Hugging Face Transformers互換のモデルクラス。
- 04任意の深さに標準的なattentionレイヤーを挿入できるハイブリッドモデル。
- 05メモリ使用量を抑え、学習を高速化する融合norm、rotary embedding、cross entropyモジュール。
- 06CUDA、ROCm、XPU、Ascend NPU、CPU向けのバックエンド追加機能。
ユースケース
- 長文脈言語モデルの二次計算量のattentionを、線形注意のバリエーションに置き換える。
- Hugging Face風のワークフローで、劣二次計算量のLLMを事前学習またはファインチューニングする。
- attentionレイヤーとrecurrentレイヤーを組み合わせたハイブリッドアーキテクチャを試す。
- 異なるGPUで線形注意カーネルの速度をベンチマークする。
トピック
よくある質問
- flash-linear-attention とは?
- 線形注意、スパース注意、状態空間モデル、ハイブリッドLLM向けのTritonベースのカーネルと、学習にすぐ使えるレイヤー。 Flash Linear Attention(fla)は、標準的なsoftmax attentionを置き換えたり補完したりする、系列モデル向けのハードウェア効率に優れた部品を提供するPythonライブラリです。Tritonカーネルに加え、GatedDeltaNet、RetNet、GLA、Mamba2などの既製レイヤーや、それらを基盤とする🤗 Transformers互換のモデルクラスを備えています。プロジェクトによると、実装はプラットフォームに依存せず、NVIDIA、AMD、Intelのハードウェアで検証されています。
- flash-linear-attention は無料で使えますか?ライセンスは?
- flash-linear-attention は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- flash-linear-attention は今もメンテナンスされていますか?
- 活発にメンテナンス中。flash-linear-attention の最終コミットは 2026年10月20日 です。
- flash-linear-attention は何に使えますか?
- 長文脈言語モデルの二次計算量のattentionを、線形注意のバリエーションに置き換える。 Hugging Face風のワークフローで、劣二次計算量のLLMを事前学習またはファインチューニングする。 attentionレイヤーとrecurrentレイヤーを組み合わせたハイブリッドアーキテクチャを試す。 異なるGPUで線形注意カーネルの速度をベンチマークする。
- flash-linear-attention はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/fla-org/flash-linear-attention
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
線形拡散Transformerを用いた高解像度の画像・動画生成向けオープンソースコードベース。学習と推論のパイプラインを備えています。
Hugging Face Hubのリポジトリをダウンロード、アップロード、管理する公式CLI(hf)とPythonクライアント。
再利用可能なAIエージェントスキルを検索・作成・評価・分析・ルーティングするPython SDKとCLIを備えたオープンな基盤。
NEOは、ピクセルと単語を単一のエンコーダーフリーな高密度アーキテクチャで処理する視覚言語モデル群で、学習・評価コードも公開しています。
FSDP2、Muon、Liger kernelsに対応した、VLM・diffusion・LLM向けの統合トレーニングエンジン。