Código oficial de entrenamiento y referencia para RWKV, una arquitectura de modelo de lenguaje tipo RNN que también se puede entrenar en paralelo, como un transformer GPT.
state-spaces/mamba
Mamba es una arquitectura de modelado de secuencias para PyTorch basada en modelos selectivos de espacio de estados, que ofrece una alternativa a los Transformers con complejidad lineal para tareas de lenguaje y otras secuencias.
- Estrellas
- 18,939
- Forks
- 1,831
- Issues abiertos
- 640
- Último commit
- hace 3 meses
¿Qué es?
Mamba es una arquitectura de modelado de secuencias basada en modelos selectivos de espacio de estados (SSM). Está diseñada para datos con alta densidad de información, como el lenguaje, donde los modelos subcuadráticos anteriores han quedado por detrás de los Transformers, y utiliza una implementación adaptada al hardware e inspirada en FlashAttention.
El repositorio ofrece el operador SSM selectivo central, los bloques Mamba y Mamba-2, un bloque Mamba-3 y un wrapper completo de modelo de lenguaje que apila bloques y añade una cabeza de modelado de lenguaje. La instalación admite compilaciones de selective scan para CUDA y también un paquete core en Python puro; además, incluye una nota sobre un parche para compilaciones de AMD ROCm. En Hugging Face hay checkpoints preentrenados de 130M a 2.8B de parámetros, junto con scripts de generación y benchmarking e instrucciones para lm-evaluation-harness.
El código está pensado para investigadores e ingenieros que quieran entrenar o ejecutar modelos de secuencias basados en SSM y compararlos con baselines de Transformer.
Funciones clave
- 01Capa selectiva de espacio de estados con una implementación de scan adaptada al hardware
- 02Módulos de bloques Mamba, Mamba-2 y Mamba-3 con una interfaz compartida de PyTorch
- 03Wrapper completo de modelo de lenguaje que combina bloques Mamba con una cabeza LM
- 04Checkpoints preentrenados de 130M a 2.8B de parámetros en Hugging Face
- 05Extensión opcional de selective scan para CUDA, con instalación del core en Python puro
- 06Script para benchmarking de generación e instrucciones para evaluación zero-shot
Casos de uso
- Entrenar modelos de lenguaje para secuencias largas como alternativa a los Transformers
- Investigar arquitecturas de modelos de espacio de estados y sus compromisos de eficiencia
- Ejecutar inferencias con checkpoints Mamba preentrenados para generar texto
- Comparar la latencia y el rendimiento de generación de SSM con baselines de Transformer
Inicio rápido
- 1
Instala PyTorch primero
- 2
Instala el paquete principal mamba-ssm
pip install mamba-ssm --no-build-isolation
Antes de usarlo
- La ruta de selective scan de CUDA requiere Linux y una GPU NVIDIA con CUDA 11.6 o posterior.
- La instalación principal no incluye la extensión CUDA selective_scan_cuda, a menos que la actives con variables de entorno.
- La instalación requiere una versión de PyTorch compatible con CUDA que ya tengas, por lo que la configuración puede ser algo complicada.
Temas
Preguntas frecuentes
- ¿Qué es mamba?
- Mamba es una arquitectura de modelado de secuencias para PyTorch basada en modelos selectivos de espacio de estados, que ofrece una alternativa a los Transformers con complejidad lineal para tareas de lenguaje y otras secuencias. Mamba es una arquitectura de modelado de secuencias basada en modelos selectivos de espacio de estados (SSM). Está diseñada para datos con alta densidad de información, como el lenguaje, donde los modelos subcuadráticos anteriores han quedado por detrás de los Transformers, y utiliza una implementación adaptada al hardware e inspirada en FlashAttention.
- ¿mamba es gratuito? ¿Qué licencia tiene?
- mamba es open source bajo la licencia Apache-2.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿mamba sigue mantenido?
- Actualizado en los últimos 6 meses. El último commit de mamba fue el 22 jul 2026.
- ¿Para qué puedo usar mamba?
- Entrenar modelos de lenguaje para secuencias largas como alternativa a los Transformers Investigar arquitecturas de modelos de espacio de estados y sus compromisos de eficiencia Ejecutar inferencias con checkpoints Mamba preentrenados para generar texto Comparar la latencia y el rendimiento de generación de SSM con baselines de Transformer
- ¿Cómo se instala mamba?
- Instala PyTorch primero Instala el paquete principal mamba-ssm: pip install mamba-ssm --no-build-isolation
- ¿Dónde consigo mamba?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/state-spaces/mamba
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Implementación oficial de FlashAttention, un kernel de atención exacta y eficiente en memoria para entrenar e inferir con modelos Transformer en GPU.
Implementación en PyTorch del Vision Transformer (ViT) y muchas de sus variantes para clasificación de imágenes y otras tareas de visión.
Un motor TypeScript que ejecuta inferencias de LLM íntegramente en el navegador con WebGPU y ofrece una API compatible con OpenAI.
Biblioteca nativa de PyTorch para cuantización, sparsity y entrenamiento float8, tanto para entrenar modelos como para servir inferencias.
Framework de Python para comprimir redes neuronales mediante cuantización, pruning y sparsity, y acelerar la inferencia en OpenVINO, PyTorch y ONNX.