NX-AI/xlstm

Official repository of the xLSTM.

What it solves

xLSTM(Extended Long Short-Term Memory)は、元の LSTM アーキテクチャの制限を克服し、Transformer および State Space Models(SSM)と競合できるように設計されています。大規模言語モデルにおいて、トレーニングと推論の両方で効率的なリカレントニューラルネットワーク(RNN)代替手段を提供することを目的としています。

How it works

このアーキテクチャは、元の LSTM に対して主に 2 つの強化を導入しています:

  1. Exponential Gating:正規化と安定化技術を使用し、ネットワークの情報フロー管理を改善します。
  2. Matrix Memory:新しいメモリ構造により、ネットワークが複雑なデータパターンをよりうまく扱えるようにします。

プロジェクトは 2 つの主要コンポーネントを提供します:xLSTMBlockStack(汎用アプリケーション向けのバックボーン)と xLSTMLMModel(トークンベースの言語モデリング用ラッパー)。さらに、トレーニングスループットと安定性を最適化した xLSTMLarge アーキテクチャも含まれており、2.3 兆トークンで 7B パラメータモデルのトレーニングに使用されています。

Who it’s for

  • AI Researchers:シーケンスモデリングのために Transformer 以外の代替手段を探している研究者。
  • ML Engineers:高速かつ効率的な推論のためにリカレントモデルを実装するエンジニア。
  • Developers:既存プロジェクトに xLSTM バックボーンを統合し、Transformer ブロックの代替として使用したい開発者。

Highlights

  • 7B Parameter Model:2.3T トークンでトレーニングされた大規模リカレント LLM。
  • Optimized Kernelsmlstm_kernels パッケージを通じて Triton と CUDA カーネルをサポートし、NVIDIA と AMD GPU 上での高性能実行を実現。
  • Flexible Architecture:sLSTM と mLSTM ブロックの両方をサポートし、状態追跡と記憶能力のバランスを取るために組み合わせ可能。
  • Hardware Compatibility:Apple Metal(コミュニティが MLX 用に移植したもの)などのプラットフォーム向けに、ネイティブ PyTorch 実装が利用可能。