Código oficial de treinamento e referência do RWKV, uma arquitetura de modelo de linguagem no estilo RNN que também pode ser treinada em paralelo como um transformer GPT.
state-spaces/mamba
Mamba é uma arquitetura de modelagem de sequências em PyTorch baseada em modelos seletivos de espaço de estados, que oferece uma alternativa aos Transformers com tempo de execução linear para tarefas com linguagem e outras sequências.
- Estrelas
- 18,939
- Forks
- 1,831
- Issues abertas
- 640
- Último commit
- há 3 meses
O que é?
Mamba é uma arquitetura de modelagem de sequências baseada em modelos seletivos de espaço de estados (SSMs). Ela é voltada a dados com alta densidade de informação, como a linguagem, nos quais modelos subquadráticos anteriores ficaram atrás dos Transformers, e usa uma implementação otimizada para o hardware, inspirada no FlashAttention.
O repositório oferece o operador seletivo de SSM principal, os blocos Mamba e Mamba-2, um bloco Mamba-3 e um wrapper completo de modelo de linguagem que empilha blocos com uma cabeça de modelagem de linguagem. A instalação oferece suporte tanto a builds de selective scan com CUDA quanto a um pacote principal em Python puro; builds com AMD ROCm são abordadas em uma nota de patch. Checkpoints pré-treinados de 130M a 2.8B parâmetros estão disponíveis no Hugging Face, junto com scripts de geração e benchmarking e instruções para o lm-evaluation-harness.
O código é voltado a pesquisadores e engenheiros que querem treinar ou executar modelos de sequência baseados em SSM e compará-los com baselines de Transformer.
Recursos principais
- 01Camada seletiva de espaço de estados com implementação de scan otimizada para o hardware
- 02Módulos de bloco Mamba, Mamba-2 e Mamba-3 com uma interface PyTorch compartilhada
- 03Wrapper completo de modelo de linguagem que combina blocos Mamba com uma cabeça de LM
- 04Checkpoints pré-treinados de 130M a 2.8B parâmetros no Hugging Face
- 05Extensão opcional de selective scan com CUDA e instalação do pacote principal em Python puro
- 06Script de benchmark de geração e instruções para avaliação zero-shot
Casos de uso
- Treinar modelos de linguagem para sequências longas como alternativa aos Transformers
- Pesquisar arquiteturas de modelos de espaço de estados e seus compromissos de eficiência
- Executar inferência com checkpoints Mamba pré-treinados para gerar texto
- Comparar a latência e a taxa de transferência de geração com SSM com baselines de Transformer
Início rápido
- 1
Instale o PyTorch primeiro
- 2
Instale o pacote principal mamba-ssm
pip install mamba-ssm --no-build-isolation
Antes de usar
- O caminho de selective scan do CUDA requer Linux e uma GPU NVIDIA com CUDA 11.6 ou posterior.
- A instalação principal não inclui a extensão CUDA selective_scan_cuda, a menos que você a habilite com flags de ambiente.
- A instalação precisa do PyTorch com suporte a CUDA que você já tem, então a configuração pode ser um pouco trabalhosa.
Tópicos
Perguntas frequentes
- O que é mamba?
- Mamba é uma arquitetura de modelagem de sequências em PyTorch baseada em modelos seletivos de espaço de estados, que oferece uma alternativa aos Transformers com tempo de execução linear para tarefas com linguagem e outras sequências. Mamba é uma arquitetura de modelagem de sequências baseada em modelos seletivos de espaço de estados (SSMs). Ela é voltada a dados com alta densidade de informação, como a linguagem, nos quais modelos subquadráticos anteriores ficaram atrás dos Transformers, e usa uma implementação otimizada para o hardware, inspirada no FlashAttention.
- mamba é gratuito? Qual é a licença?
- mamba é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
- mamba ainda é mantido?
- Atualizado nos últimos 6 meses. O último commit de mamba foi em 22 de jul. de 2026.
- Para que posso usar mamba?
- Treinar modelos de linguagem para sequências longas como alternativa aos Transformers Pesquisar arquiteturas de modelos de espaço de estados e seus compromissos de eficiência Executar inferência com checkpoints Mamba pré-treinados para gerar texto Comparar a latência e a taxa de transferência de geração com SSM com baselines de Transformer
- Como instalar mamba?
- Instale o PyTorch primeiro Instale o pacote principal mamba-ssm: pip install mamba-ssm --no-build-isolation
- Onde consigo mamba?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/state-spaces/mamba
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Implementação oficial do FlashAttention, um kernel de atenção exata e eficiente em memória para treinar e executar inferência de modelos Transformer em GPUs.
Implementação em PyTorch do Vision Transformer (ViT) e de muitas variantes para classificação de imagens e outras tarefas de visão computacional.
Um mecanismo TypeScript que executa inferência de LLM inteiramente no navegador com WebGPU e oferece uma API compatível com a OpenAI.
Biblioteca nativa do PyTorch para quantização, esparsidade e treinamento em float8, abrangendo treinamento de modelos e inferência em produção.
Framework Python para comprimir redes neurais com quantização, pruning e esparsidade, acelerando a inferência no OpenVINO, PyTorch e ONNX.