Repolode
state-spaces

state-spaces/mamba

Mamba — архитектура моделирования последовательностей на PyTorch, основанная на селективных моделях пространства состояний и предлагающая альтернативу Transformers с линейной сложностью для языковых и других задач.

Звёзды
18,939
Форки
1,831
Открытые issues
640
Последний коммит
3 месяца назад

Что это?

Mamba — архитектура моделирования последовательностей на основе селективных моделей пространства состояний (SSM). Она предназначена для работы с информационно насыщенными данными, например текстом, где более ранние модели со сложностью ниже квадратичной уступали Transformers, и использует аппаратно-ориентированную реализацию, вдохновлённую FlashAttention.

В репозитории представлены базовый оператор селективной SSM, блоки Mamba, Mamba-2 и Mamba-3, а также полноценная языковая модель-обёртка, которая объединяет блоки с языковой головой. Установка поддерживает сборки selective scan для CUDA и базовый пакет на чистом Python; для сборок под AMD ROCm приведено примечание с патчем. Предобученные чекпойнты размером от 130M до 2.8B параметров размещены на Hugging Face. Также доступны скрипты для генерации и бенчмаркинга, а ещё инструкции по работе с lm-evaluation-harness.

Код предназначен для исследователей и инженеров, которые хотят обучать или запускать модели последовательностей на основе SSM и сравнивать их с базовыми моделями на Transformers.

Ключевые возможности

  • 01Слой селективного пространства состояний с аппаратно-ориентированной реализацией scan
  • 02Модули блоков Mamba, Mamba-2 и Mamba-3 с единым интерфейсом PyTorch
  • 03Полноценная языковая модель-обёртка, объединяющая блоки Mamba с языковой головой LM
  • 04Предобученные чекпойнты размером от 130M до 2.8B параметров на Hugging Face
  • 05Опциональное расширение selective scan для CUDA и установка базового пакета на чистом Python
  • 06Скрипт для бенчмаркинга генерации и инструкции по zero-shot-оценке

Сценарии использования

  • Обучение языковых моделей для длинных последовательностей как альтернативы Transformers
  • Исследование архитектур моделей пространства состояний и компромиссов между их эффективностью и другими характеристиками
  • Инференс с предобученными чекпойнтами Mamba для генерации текста
  • Сравнение задержки и пропускной способности генерации SSM с базовыми моделями на Transformers

Быстрый старт

  1. 1

    Сначала установите PyTorch

  2. 2

    Установите основной пакет mamba-ssm

    pip install mamba-ssm --no-build-isolation

Что важно знать

  • Для пути CUDA selective scan требуются Linux и видеокарта NVIDIA с CUDA 11.6 или новее.
  • В основную установку не входит расширение CUDA selective_scan_cuda, если не включить его с помощью переменных окружения.
  • Для установки требуется уже установленный PyTorch с поддержкой CUDA, поэтому настройка может быть непростой.

Темы

Частые вопросы

Что такое mamba?
Mamba — архитектура моделирования последовательностей на PyTorch, основанная на селективных моделях пространства состояний и предлагающая альтернативу Transformers с линейной сложностью для языковых и других задач. Mamba — архитектура моделирования последовательностей на основе селективных моделей пространства состояний (SSM). Она предназначена для работы с информационно насыщенными данными, например текстом, где более ранние модели со сложностью ниже квадратичной уступали Transformers, и использует аппаратно-ориентированную реализацию, вдохновлённую FlashAttention.
mamba можно использовать бесплатно? Какая у него лицензия?
mamba распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
mamba всё ещё поддерживается?
Обновлялся за последние 6 месяцев. Последний коммит в mamba — 22 июл. 2026 г..
Для чего можно использовать mamba?
Обучение языковых моделей для длинных последовательностей как альтернативы Transformers Исследование архитектур моделей пространства состояний и компромиссов между их эффективностью и другими характеристиками Инференс с предобученными чекпойнтами Mamba для генерации текста Сравнение задержки и пропускной способности генерации SSM с базовыми моделями на Transformers
Как установить mamba?
Сначала установите PyTorch Установите основной пакет mamba-ssm: pip install mamba-ssm --no-build-isolation
Где скачать mamba?
Исходный код и инструкции по установке — на GitHub: https://github.com/state-spaces/mamba

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты