Skip to main content

Optimized Mamba implementation

Project description

MambaX

PyTorch implementation of the Mamba architecture with enhanced production-ready features:

  1. ONNX Export - Full model export support for deployment
  2. Chunk Processing - Single-forwardpass chunk handling (no token loops)
  3. CPU-First - Optimized execution without CUDA dependencies

Key Advantages

  • Production Ready: ONNX-compatible for serving
  • No Token Loops: Processes entire chunks in single forward pass
  • Hardware Agnostic: Runs equally well on CPU/GPU

Acknowledgements

Builds upon reference work from alxndrTL/mamba.py

Usage

1. Standard Forward Pass

import torch
import torch.nn as nn
from mamba import Mamba

# Initialize model
model = Mamba(
    d_model=512,
    d_inner=1024,
    d_conv=4,
    d_state=16,
    dt_rank=64,
    act=nn.SiLU()
)

# Process full sequence
x = torch.rand(1, 13, 512)  # (batch, seq_len, dim)
output = model(x)  # single forward pass

2. Single Token Processing

x_token = torch.rand(1, 1, 512)  # (batch, 1, dim)
output, new_state, new_conv = model(x_token, state_cache, conv_cache)

3. Chunk-Based Processing

# Initialize with empty caches
state_cache = torch.zeros(1, 1024, 16)  # (batch, d_inner, d_state)
conv_cache = torch.zeros(1, 1024, 3)     # (batch, d_inner, d_conv-1)

# Process chunks (e.g. 8 tokens at once)
x_chunk = torch.rand(1, 8, 512)
output, new_state, new_conv = model(x_chunk, state_cache, conv_cache)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mambax-0.1.0.tar.gz (5.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mambax-0.1.0-py3-none-any.whl (5.5 kB view details)

Uploaded Python 3

File details

Details for the file mambax-0.1.0.tar.gz.

File metadata

  • Download URL: mambax-0.1.0.tar.gz
  • Upload date:
  • Size: 5.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.15

File hashes

Hashes for mambax-0.1.0.tar.gz
Algorithm Hash digest
SHA256 9eb54e7b5a690595e78b18a0cacc55db2007a2004ecce45b488468ecd2b011e4
MD5 f39891e5b24b7a07152a8bd2f7539388
BLAKE2b-256 bf966dee2b552508afab5e5ae9f5ad118a0190a12ee86dac4845053e3f6a1a00

See more details on using hashes here.

File details

Details for the file mambax-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: mambax-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 5.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.15

File hashes

Hashes for mambax-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6993ff9ced787fdee74c7ab97967f60c4e4ddf88141b437f7cd2bb0184cb3d7a
MD5 e2b15609fe8222e3a57ca6f5a52844fe
BLAKE2b-256 b5b20a021ee0c1a48d6cda0cfdf723a385f1ab86b8a48961f4c845861801136d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page