Официальный код обучения и эталонная реализация RWKV — языковой архитектуры на основе RNN, которую можно обучать параллельно, как GPT-трансформер.
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
Сначала установите PyTorch
- 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 обновляется ежедневно.
Похожие проекты
Официальная реализация FlashAttention — точного и экономного по памяти attention-ядра для обучения и инференса Transformer-моделей на GPU.
Реализация Vision Transformer (ViT) на PyTorch и множества его вариантов для классификации изображений и других задач компьютерного зрения.
Движок на TypeScript, который запускает LLM-инференс целиком в браузере с помощью WebGPU и предоставляет API, совместимый с OpenAI.
Библиотека на базе PyTorch для квантования, разреженных моделей и обучения в формате float8 — для обучения моделей и инференса.
Python-фреймворк для сжатия нейросетей с помощью квантования, прореживания и разреживания, ускоряющий инференс в OpenVINO, PyTorch и ONNX.